Что нужно знать об Elasticsearch
Справка
ELASTICSEARCH ― поисковый движок с JSON (текстовый формат обмена даннымина основе JavaScript) REST API.
Функциональные возможности
- Автоматическая индексация новых объектов. Например, после загрузки в базу документа, он становится доступным для поиска через секунду.
- Поддержка ряда непопулярных языков, например корейского, китайского, японского.
- Гибкость поисковых фильтров.
- Встроенные анализаторы текста.
Преимущества
- Масштабируемость. К уже установленной системе можно легко подключить новые серверы, нагрузка по ним будет распределена автоматически. Если у вас бурно развивающийся интернет-магазин или маркетплейс, к которому один за другим подключаются продавцы, вам будет легко увеличивать мощность.
- Отказоустойчивость. Если какой-то сервер вдруг упадет, то при грамотно проведенной настройке конечный пользователь этого не заметит: ресурс будет работать как прежде. А сервер после восстановления сам обновит данные.
- Гибкость поисковых фильтров. Сюда можно отнести нечеткий поиск, возможности работы с восточными языками и мультиарендность, когда в рамках одного объекта Elasticsearch можно создать несколько разных систем поиска.
- Управляемость. Движок легко управляется по протоколу HTTP с помощью JSON-запросов.
- Универсальность. Через API можно загрузить данные из различных источников (файлы, логи, СУБД, и т.д.). Все загружаемые объекты автоматически индексируются для поиска.
- Скорость. Запрос для одного раздела обрабатывается за доли секунды.
Мировой опыт использования
Elasticsearch используется в различных системах Big Data средних и крупных компаний. В крупных системах несколько копий объединены в кластер. Это обеспечивает бесперебойную работу системы. Каждый узел кластера координирует работу правильных сегментов и в автоматическом режиме делает перебалансировку и маршрутизацию.
Elasticsearch используют следующие компании:
- Netflix;
- Amazon;
- Adobe;
- IBM;
- Facebook;
- CERN.
Наш опыт использования
Мы занимаемся разработкой сложных web-проектов на 1С-Битрикс ― b2b-порталов, маркетплейсов, интернет-магазинов с множеством товаров и многочисленными интеграциями с внутренними и внешними системами.
Движком Elasticsearch оснащены следующие проекты.