Кто и как использует ElasticSearch в Production в странах СНГ?

Вопрос можно разделить на несколько частей
  1. Кто и как использует ElasticSearch и его продукты в странах СНГ?
  2. Насколько большие обьемы данных хранятся и обрабатываются?
  3. Были ли какие-то глобальные проблемы и сбои в работе?
  4. Используете ли другие продукты Elastic, например Logstash, Kibana, Marvel, Shield?


Ваши ответы помогут мне в организации презентации на последующих конференциях, в странах Балтии, но хочется делится опытом и дальше.

Спасибо!
  • Вопрос задан
  • 1848 просмотров
Решения вопроса 1
MintTea
@MintTea
Кто и как использует ElasticSearch и его продукты в странах СНГ?

Вы знаете, в основном - ищем. Шутка.

Мы, например, пилим портал недвижимости (ага, еще один), и используем ES+MySQL как эдакую гибридную базу данных, в которой каждый компонент занимается тем, что у него лучше всего получается. MySQL - отвечает за целостность и хранение данных в нормальной форме. ES - за поиск и аггрегации по денормализованным документам. Таким образом мы как бы имеем все преимущества NoSQL, без их недостатков. Кроме этого, через ES также идет куча трафика:
  • Автодополнение в формах.
  • Поиск по геокоординатам.
  • Поиск похожих документов по хитрым алгоритмам.
  • Поиск похожих документов по не очень хитрым алгоритмам, но с хитрым ранжированием.
  • Перколирование документов перколатором для автоматического заполнения тегов.
  • Аггрегирование разнообразной статистики.
  • Аггрегирование разнообразных счетчиков в цикле запроса-ответа.
  • Логгирование и последующие извлечение информации из логов при отслеживании проблем.

В общем и целом, спустя год после внедрения ES - ощущения примерно как в известной статье
Пола Грэма: "У НАС ЕСТЬ СЕКРЕТНОЕ ОРУЖИЕ". Это один из тех немногих инструментов, работая с которым, день за днем тащишься от него больше и больше.

Насколько большие обьемы данных хранятся и обрабатываются?

В индексе держатся документы только за последние пару недель, остальное в MySQL, и объемы выходят мелкими - около 2кк документов единовременно. Алсо, большинство запросов пишутся с использованием фильтров, и потому скорость выборок становится вообще несущественной.

Были ли какие-то глобальные проблемы и сбои в работе?

Глобальных не было, отмечу просто неприятные моменты:
  • Т.к. данные нужны в реалтайме и систему риверов использовать не вариант, каждая запись в бд создает/обновляет/удаляет документ самостоятельно. Эта синхронизация постоянно рассыпается.
  • ES со скрипом заводится на слабых машинах. Чтобы добиться более-менее стабильных автоматических билдов, лично мне пришлось прочесть чуть ли не всю информацию в интернете, касающуюся вопросов его производительности.
  • Русская морфология порой работает довольно странно.
  • Нечитаемая каша вместо нормальных исключений. Со временем привыкаешь, но в первый раз волосы на голове шевелятся.
Используете ли другие продукты Elastic, например Logstash, Kibana, Marvel, Shield?

Нет. Kibana выглядит интересно, но времени поставить и настроить ее все как-то нету.

Ваши ответы помогут мне в организации презентации на последующих конференциях, в странах Балтии, но хочется делится опытом и дальше.

Реквестирую ссылку на конференцию.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы