ElasticSearch

Версия 4.14 от Alexandr Fokin на 2022/08/12 16:33

ElasticSearch

NoSql база данных для хранения документов. Одно из основных функций - возможность выполнения полнотекстового поиска по документа.
В качестве интерфейса взаимодействия выступает HTTP Api.
Написан на Java, на основе библиотеки Lucene.


Структурные элементы

  
Индекс | IndexСодержит группу Типов.
Упрощенно аналог БД.
Тип | Type

Содержит группу Документов и метаданные Маппинг.
Упрощенно - аналог таблицы.

Предполагает группировку документов с единой структурой.

Маппинг | Mapping

Содержащий информацию о структуре всех документов внутри Типа.
Для каждого поля в документах типа определяется его тип данных, которые влияет на то, как поле будет использоваться с точки зрения поиска.

В случае добавления нового документа с полем, сведений о котором нет в маппинге, метаданные о поле автоматически заносяться в маппинг.

Документ

Принадлежит 1 группе.
Уникально определяется совокупностью идентификаторов <IndexName>.<TypeName>.<DocumentId>.

  
Операция поискаМожет осуществляться как в рамках одного конкретного типа, так и на уровне типов, расположенных в различных индексах.

Ссылки:

The heart of the free and open Elastic Stack
https://www.elastic.co/elasticsearch/

Elasticsearch для .NET - разработчиков
https://www.youtube.com/watch?v=iQ-Cmn6hgJg

Основы Elasticsearch
https://habr.com/ru/post/280488/

miollek/Free-Elasticsearch-Books
https://github.com/miollek/Free-Elasticsearch-Books