Исполнительное резюме
Наши тесты производительности показывают, что 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 и исследуйте, как он может улучшить ваши рабочие процессы анализа данных.
