ElasticSearch as you have never known it before
- Description
- Curriculum
- FAQ
- Reviews
Everybody knows ElasticSearch as a popular full-text search engine or as part of ELK but I am going to show you ElasticSearch from the side you have never known before. I want to show you that with ElasticSearch you can build very advanced search engines or even recommendation modules that can be much more effective and together with that, much more simpler than similar systems built on top of machine learning technologies. I want to show the real geo power of ElasticSearch for building advanced search filters and aggregations.
This course is built in such a way it would be useful both: for complete beginners and for people who are working with ElasticSearch but would like to extend their practice knowledge. It would be especially useful for those who are going to build some recommendation systems or advanced search mechanisms in the near future.
The course consists of 5 modules. First module is aimed for beginners and can be skipped by people who are already working with ElasticSearch. Here I will tell you about basics: how to install and configure the environment using Docker, how data at ElasticSearch are organized, why mapping is so important and what all that mess around tokenizers and analyzers means.
In the second section I will show how to build an advanced search system step by step on a real example of a simplified booking com version. We will touch the topics about ES geopower here.
Next course section is devoted to the recommendation module. Here we will speak about recommendation systems in general – about pros and cons of today’s methods. And again together we will build a real system using ElasticSearch. We will create a recommendation mechanism for virtual example of cleaning houses’ marketplace.
In the fourth section I will show real examples using php, python and Java libraries for integration with ElasticSearch. And again we will create real microservice applying best programming practices and interesting design patterns like builder pattern or filter pattern. I will touch here also the question of debugging the possible problems.
The fifth and the last part is about using ElasticSearch for production. Here I will share with you my knowledge on how to set up a highly available cluster, how to calculate shard size and storage requirements, how to index millions of documents in the most efficient way and even how to preserve zero downtime at reindexing
-
4Lab environment: Docker - overviewVideo lesson
Docker basic conceptions
-
5Lab environment: Install Docker at LinuxVideo lesson
That lecture describes how to install Docker at Linux system taking Ubuntu OS as example
-
6Lab environment: Install Docker WindowsVideo lesson
That lecture describes how to install Docker at Windows 10 OS system
-
7Lab environment: Install Docker Mac OSText lesson
That lecture describes how to install Docker at Mac OS system
-
8Lab environment: Run ElasticSearch 7 using DockerVideo lesson
That lecture describes how to run ElasticSearch as standalone instance or cluster using Docker. We will learn also how to speak with ElasticSearch engine using curl.
-
9PART 1 - Lab environment: Run ElasticSearch 8 using DockerVideo lesson
You will learn about security changes that appeared at Elasticsearch 8 relatively to 7th version. At current lecture you will see how to run Elasticsearch 8 instance as standalone docker container using cli. You will get knowledge how to work with TLS certificates and how to use it at curl requests
-
10PART 2 - Lab environment: Run ElasticSearch 8 using DockerVideo lesson
At current lecture you will see how to run Elasticsearch 8 instance as standalone docker container using docker compose with disabled or enabled security options
-
11PART 3 - Lab environment: Run ElasticSearch 8 using DockerVideo lesson
At current lecture you will see how to run Elasticsearch 8 cluster with 3 nodes using docker compose with enabled security options
-
12ElasticSearch Basics: theoryVideo lesson
At that lecture you will learn ElasticSearch basics: how data are organized: indexes -> types -> documents. You will also get acquainted ElasticSearch Chrome plugin and Postman tools.
-
13ElasticSearch Basics: practiceVideo lesson
At that lecture you will learn ElasticSearch basics: How to install and use ElasticSearch Chrome plugin and Postman for working with ElasticSearch. You would be able to indexing first test documents to ElasticSearch and run first simple DSL queries. Current lecture also describes problems jaround son validation and broken relevance introduction.
-
14DSL queries and mapping: part 1Video lesson
At that lecture you will learn how to run next DSL queries: term, range, terms, geo distance, match, multi match dsl queries. In addition you will learn what is mapping and why it is so important.
-
15DSL queries and mapping: part 2Video lesson
At that lecture you will learn how to run next DSL queries: term, range, terms, geo distance, match, multi match dsl queries. In addition you will learn what is mapping and why it is so important.
-
16AnalyzersVideo lesson
At that lecture you will learn what are analyzers and tokenizers, how to create own custom complicates analyzers. Examples of using analyzers would be provided.
-
17DSL combined queriesVideo lesson
At that lecture you will learn how to build complicated DSL queries using boolean operators.
-
18Problem definition and requirementsVideo lesson
At that lecture you will get the problem definition and requirements for advance search system we are going to build at current section.
-
19Data modelingVideo lesson
At that lecture you will learn about data modeling at ElasticSearch: denormalization, nested objects, parent-child relationship, Pros and cons of every approach.
-
20MappingVideo lesson
At that lecture you will learn how to create complicated mapping for advanced search system using nested objects, parent child relationships and custom analyzers. I will also learn how to learn basic parent child DSL queries
-
21Basic search queryVideo lesson
At that lecture you will learn how to build advanced search DSL query using different bool combinations
-
22Nested query and aggregationVideo lesson
At that lecture you will learn to run DSL queries against nested objects. You will learn about aggregations basics, how apply terms, histogram and average aggregations at example of advanced search system.
-
23Geo powerVideo lesson
At that lecture you will learn how to run geo shape DSL queries and how to use geo aggregations
-
24Theory and task definitionVideo lesson
-
25Mapping and test dataVideo lesson
-
26Constant score and Function ScoreVideo lesson
You will learn about constant score and function score ElasticSearch conceptions
-
27ElasticSearch solutionVideo lesson
You will learn how to create recommendation system using Elasticsearch
-
29Local environmentVideo lesson
You will learn how to prepare local environment for PHP+Symfony+ElasticSearch microservice, how install package dependencies and prepare skeleton for further work.
-
30Front Controller and API documentationVideo lesson
At that lecture you will learn about Symfony front controller and how to built well documented API point.
-
31Search criteria DTO objectVideo lesson
You will know what is DTO, what is for and how to implement it at PHP search microservice.
-
32ElasticSearch ONGR bundle and model data layerVideo lesson
You will know which popular Symfony byndles exists for ElasticSearch, how to configure ONGR bundle and how to create ElasticSearch data layer using OOP approach.
-
33Prepare test data, indexer commandVideo lesson
You will learn how to create symfony command for indexing test data set.
-
34Search service and Query builderVideo lesson
You will learn how implement filter design pattern, how to create final ElasticSearch query using Symfony and ONGR bundle, how to debug possible problems within ElasticSearch integration
-
35Upgrade - php 8, symfony 5.4Video lesson
You will learn how to upgrade:
- PHP version from 7 to 8th version
- Symfony framework from 4.4 to the 5.4 version
-
36Upgrade - Elasticsearch 8, security disabledVideo lesson
You will learn how to upgrade Elasticsearch version from 7th to 8th version having security options at Elasticsearch to be disabled
-
37Upgrade - Elasticsearch 8, turn on securityVideo lesson
At current lecture we will make attempt to turn on security at Elasticsearch 8 engine and will verify which problems it cause and how can we deal with that
-
38Fixes for MACText lesson
-
39Local environmentVideo lesson
You will learn how to prepare local environment for Python+Flask+ElasticSearch microservice, how install package dependencies and prepare skeleton for further work.
-
40Front Controller and API documentationVideo lesson
At that lecture you will learn about Flask front controller and how to built well documented API point.
-
41Search criteria DTO objectVideo lesson
You will know what is DTO, what is for and how to implement it at Python search microservice.
-
42Data layer and index command using elasticseach dsl python packageVideo lesson
You will learn how to index test initial data using python command, how to create mapping using OOP approach with elasticsearch dsl python package
-
43Search service and Query builderVideo lesson
You will learn how implement filter design pattern, how to create final ElasticSearch query using python and python dsl package , how to debug possible problems within ElasticSearch integration using tests
-
44Upgrade - python 3.11, flask 2.3Video lesson
You will learn how to upgrade:
- Python version from 3.8 to 3.11 version
- Flask framework from 2.0 to the 2.3 version
-
45Upgrade - Elasticsearch 8, security disabledVideo lesson
You will learn how to upgrade Elasticsearch version from 7th to 8th version having security options at Elasticsearch to be disabled
-
46Upgrade - Elasticsearch 8, turn on securityVideo lesson
At current lecture we will make attempt to turn on security at Elasticsearch 8 engine and will verify which problems it cause and how can we deal with that
-
47ESSENTIAL NOTICE at building docker application image at first timeText lesson
-
48Local environmentVideo lesson
You will learn how to prepare local environment for Java+Spring Boot+ElasticSearch microservice, how install package dependencies and prepare skeleton for further work.
-
49Front Controller and API documentationVideo lesson
At that lecture you will learn about Spring front controller and how to built well documented API point.
-
50Search criteria DTO objectVideo lesson
You will know what is DTO, what is for and how to implement it at Java search microservice.
-
51Data layer and indexing of test dataVideo lesson
You will learn how to index test initial data using spring init loader, how to create mapping using OOP approach with spring data elasticsearch
-
52Search service and Query builderVideo lesson
You will learn how implement filter design pattern, how to create final ElasticSearch query using sping boot and spring elasticsearch data, how to debug possible problems within ElasticSearch integration
-
53Upgrade - Java 17, Spring Boot 3.0, Elasticsearch 8 with disabled securityVideo lesson
You will learn how to upgrade:
- Java version from 11 to 17version
- Spring Boot framework from 2.5 to the 3.0 version
- Elasticsearch from 7th to 8th version with disabled security options
-
54Upgrade - Elasticsearch 8, turn on securityVideo lesson
At current lecture you will learn how to turn on security features at Elasticsearch 8 and which changes that cause from code side
External Links May Contain Affiliate Links read more