Что лучше использовать для логов парсера: mysql или elasticsearch?

Делаю парсер и возник вопрос как сохранять предыдущие результаты парсинга . на данный момент есть одна таблица в бд,где сохраняются результаты последнего парсинга . т.е. перед стартом парсера все данные удаляются с этой таблицы и добавляются новые . Нужно где-то сохранять полностью все данные предыдущих парсеров т.е. вести логирование, чтобы потом можно с ними делать какую-то статистику(например как менялась цена) . как лучше это сделать? данных с работы парсеров будет довольно много поэтому думал сохранять их в эластике так как он быстрее сможет обрабатывать большие обьемы данных . или это как то можно решить на уровне mysql, чтобы в будущем не было проблем? подскажите с советом
  • Вопрос задан
  • 142 просмотра
Пригласить эксперта
Ответы на вопрос 3
He11ion
@He11ion
PHP-monkey
Elastic выглядит как оверкилл тут, вполне реально обойтись просто mysql, просто не удаля данные/записывая их в таблицу. Ну и "довольно много" это очень разные понятия могут быть.
Скорость обработки elastic и mysql сравнивать не совсем корректно, elasticскорее для (не)четкого поиска по данным - если есть четкое понимание по какому полю будете искать(например по ид товара) - то mysql ничуть не хуже и значительно проще в настройке и эксплуатации
Ответ написан
leahch
@leahch
Я мастер на все руки, я козлик Элек Мэк :-)
Я бы порекомендовал эластик. Во первых - в нем гораздо удобнее хранить логи, можно настроить индексы и сделать их в кластере, если меняется формат логов, то достаточно просто сделать несколько разных схем данных. Поиск и агрегация гораздо мощнее, чем в SQL. Можно делать алиасы и разбивать индексы как угодно.
Во вторых - к эластику можно прикрутить kibana, или grafana, или вообще что-то свое написать - REST API хоть через curl дергать можно.

Ну и, если эластика будет не хватать, то druid.io вам в помощь или kafka :-)
Ответ написан
AlexeyVi
@AlexeyVi
Linux, MySQL, PostgreSQL, ElasticSearch, HiLoad
Что использовать?
Зависит от нагрузки, одно из преимуществ ElasticSearch это сжатие хранимых данных, не четкий поиск, горизонтальное масштабирование из коробки (без танцев с бубном), fault tolerance при правильной настройке кластера
Минусы, я думаю сложнее в настройке как самого эластика так и JDK под него.
Ответ написан
Ваш ответ на вопрос

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

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