Pull to refresh

Comments 10

Задавался аналогичным вопросом еще где-то в начале прошлого года, тогда было больше вопросов. С развитием продукта, возможности использования ES как БД все перспективнее. Ибо для веба можно сказать — контент суть результат поиска. Раз ES справляется с этим хорошо, то почему бы не использовать. Конечно с оговорками.
Я планирую в следующей статье рассказать про использование эластика в percolator.io. Расскажу про percolate api, анализ текста, работу с документами, генерацию идентификаторов.
Когда же будет следующая статья? :)
Сейчас как раз таким и занимаюсь. Нехватка памяти довольно распространенная проблема особенно при индексации больших обьемов данных. Решение использовать для этого ES не выходит дешево для стартапов, т.к памяти действительно надо много.

Самая неприятная проблема это обновление (или добавление) mapping'а полей. После создания нового индекса с обновленным mapping'ом, нужно выкачать все данные из ES и запихнуть их в новый индекс. С этим хорошо справляется поиск с типом scan (eg. /_search?search_type=scan&scroll=10m). Но надо понимать, что если данных очень много и документы большие, это занимает достаточно много времени + кушает досоаточно RAM'а. Также весь этот процесс усугубляет то, что база работает как NoSQL и в нее все время идут данные.

В остальном одни плюсы.
А это перевод? Если да, можно посмотреть источник?
Новейшая история развития хранилищ для фронтендов — SQL, NoSQL, Lucene.
Странно, что еще есть сомневающиеся, CAP теорема, все-таки.
Хорошая статья, я сам использую ES в качестве промежуточной базы данных, основную информацию храню в Mysql, а в ES заганяю подготовленные документы. JSON api позволяет делать запросы напрямую к ES без задействования серверных скриптов и при этом показывает высокую скорость отдачи результата и хорошо ведет себя при высоких нагрузках.

Пока из реальных минусов могу выделить проблемы с OutOfMemory, но в моем случае пересоздание индекса не слишком долгая задача.
Я бы не рекомендовал использовать ES как No-sql хранилище. Все таки, он немного для других целей создан. Можно, конечно, но зачем платить больше? Говорю как человек, который на текущий момент работает с ES и Redis.
Only those users with full accounts are able to leave comments. Log in, please.

Articles