TL;DR
Наши тесты производительности показывают, что Manticore Search значительно превосходит Elasticsearch при анализе больших объемов данных логов Nginx, с рендерингом панелей Kibana до 3x быстрее. Эта статья демонстрирует различия в производительности, объясняет, как провести собственное сравнение, и подчеркивает ключевые преимущества Manticore Search для задач анализа логов.
Введение
Эффективный анализ и визуализация больших объемов данных являются ключевыми для многих бизнесов. В этой статье сравнивается производительность двух популярных поисковых систем, Manticore Search и Elasticsearch, с использованием одного и того же набора данных на основе логов Nginx.
Цель состоит в том, чтобы продемонстрировать, как Manticore Search предоставляет эффективное решение для обработки и визуализации больших наборов данных. Для упрощения этого сравнения мы создали Manticore Search Kibana Demo , публично доступный проект. Бенчмарки с db-benchmarks.com также подчеркивают превосходную производительность Manticore Search по сравнению с Elasticsearch.
Обзор демонстрационного проекта
Демонстрационный проект использует Kibana в качестве инструмента визуализации, подключенного как к Elasticsearch, так и к Manticore Search. Демонстрационные наборы данных генерируются из логов Nginx с помощью инструмента kscarlett-generator .
Визуализации были вдохновлены популярной статьей в блоге “ Настройка панелей Kibana для данных логов Nginx ," позволяя четко сравнить производительность поисковых систем.
Настройка окружения и запуск демонстрации
Чтобы настроить и запустить демонстрацию:
- Убедитесь, что у вас установлены Git и Docker Compose .
- Клонируйте репозиторий и перейдите в директорию проекта.
git clone https://github.com/manticoresoftware/kibana-demo.git cd kibana-demo
- Выберите использование предварительно собранных индексов для быстрого старта или генерирование новых данных, изменив конфигурацию лог-генератора. См. демо репозиторий на Github для деталей.
- Настройте окружение при необходимости, обновив файл
.env
:- Отрегулируйте количество записей логов.
- Настройте частоту обновления данных.
- Установите пользовательские порты для панелей Kibana.
- Запустите окружение, запустив скрипт
start.sh
. Это создаст окружение Docker. - Доступ к панелям Kibana:
- Для Elasticsearch, по умолчанию - http://localhost:5612
- Для Manticore Search, по умолчанию - http://localhost:5613
- Импортируйте предварительно собранные визуализации Kibana с помощью файла
kibana_objects.ndjson
, входящего в демонстрацию. - Изучите панели для анализа данных логов Nginx и сравнения производительности между Manticore Search и Elasticsearch.
- Остановите окружение после оценки, выполнив
docker-compose down
.
Эта настройка обеспечивает гибкость для удовлетворения ваших конкретных требований при сохранении процесса простым.
Сравнение производительности
Основное внимание в этом тесте уделяется скорости рендеринга панелей в Kibana. Manticore Search постоянно превосходит Elasticsearch, обеспечивая значительно более быстрый рендеринг визуализаций.
Видеодемонстрация дополнительно иллюстрирует разницу в производительности. Используя демонстрационный набор данных из более чем 46 миллионов документов и восемь различных визуализаций Kibana, объединенных в одну панель, видео сравнивает время загрузки панели с Manticore Search и Elasticsearch.
Использование Kibana с Manticore Search
Загрузка данных
Загрузка данных из источников, таких как Logstash или Filebeat, в Manticore Search для обработки в Kibana также проста. Обратитесь к этим разделам в документации Manticore для руководства:
Вы также можете изучить примеры, приведенные в этом интерактивном учебнике:
Ограничения и функции в разработке
Хотя есть некоторые известные ограничения и функции в разработке, такие как:
- Поддержка более новых версий Kibana (выше 7.6)
- Обработка специфичных для Elasticsearch типов данных, таких как геоданные
- Поддержка инструментов управления индексами, доступных в Elasticsearch, таких как ILM
эти функции активно разрабатываются для улучшения совместимости и функциональности.
Другие преимущества Manticore Search
Кроме того, Manticore Search предлагает несколько явных преимуществ для своих пользователей:
- Высокая производительность, оптимизированная для быстрой обработки запросов, что подтверждается независимыми бенчмарками и демонстрационным проектом.
- Полная поддержка SQL, упрощающая интеграцию с существующими системами и облегчая разработчикам начало работы.
- Индексация в реальном времени, позволяющая немедленно обновлять данные, что имеет решающее значение для динамических приложений.
- Колонковое хранение, предназначенное для аналитических запросов, что делает его идеальным для больших наборов данных, таких как файлы логов.
- Легковесная и простая настройка по сравнению с Elasticsearch, требующая меньше ресурсов и меньших усилий по конфигурации.
Заключение
Manticore Search оказывается мощной альтернативой Elasticsearch, особенно в сценариях, требующих быстрой обработки данных и визуализации. Независимые бенчмарки и демонстрационный проект последовательно демонстрируют его превосходные характеристики, часто в несколько раз быстрее, чем Elasticsearch при работе с большими наборами данных.
Чтобы увидеть его возможности собственными глазами, попробуйте Manticore Search Kibana Demo и исследуйте, как он может улучшить ваши рабочие процессы анализа данных.