执行摘要
我们的性能测试显示,Manticore Search 在分析大量 Nginx 日志数据时显著优于 Elasticsearch,Kibana 仪表板渲染速度快达 3 倍。本文展示了性能差异,解释了如何进行自己的比较,并强调了 Manticore Search 在日志分析工作负载中的关键优势。
介绍
高效分析和可视化大量数据对许多企业至关重要。本文比较了两种流行搜索引擎 Manticore Search 和 Elasticsearch 的性能,使用基于 Nginx 日志的相同数据集。
目标是展示 Manticore Search 如何为处理和可视化大数据集提供高效解决方案。为了便于比较,我们创建了 Manticore Search Kibana Demo ,这是一个公开可用的项目。来自 db-benchmarks.com 的基准测试也突显了 Manticore Search 相较于 Elasticsearch 的卓越性能。
演示项目概述
演示项目利用 Kibana 作为可视化工具,连接到 Elasticsearch 和 Manticore Search。演示数据集是使用 kscarlett-generator 工具从 Nginx 日志生成的。
这些可视化灵感来自一篇流行的博客文章 “ 为 Nginx 日志数据设置 Kibana 仪表板 ,” 使搜索引擎性能的比较变得清晰。
环境设置和运行演示
要设置和运行演示:
- 确保您已安装 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_objects.ndjson文件导入预构建的 Kibana 可视化。 - 探索仪表板以分析 Nginx 日志数据并比较 Manticore Search 和 Elasticsearch 之间的性能。
- 评估后通过运行
docker-compose down停止环境。
此设置确保灵活性以满足您的特定需求,同时保持过程简单明了。
性能比较
本次测试的主要焦点是 Kibana 中的仪表板渲染速度。Manticore Search 始终优于 Elasticsearch,提供显著更快的可视化渲染。
视频演示进一步说明了性能差异。使用超过 4600 万个文档和八个不同的 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 ,并探索它如何增强您的数据分析工作流程。
