目录
Manticore Search 和 Elasticsearch 的区别
参考文献
Manticore Search号称Elasticsearch快15倍得全文检索引擎
Manticore: a faster alternative to Elasticsearch in C++ with a 21-year history
17 亿次纽约出租车测试:Clickhouse、Elasticsearch 和 Manticore Search
Manticore Search是什么
Manticore Search 是一个使用 C++ 开发的高性能搜索引擎,创建于 2017 年,其前身是 Sphinx Search 。
Manticore Search 充分利用了 Sphinx,显着改进了它的功能,几乎完全重写了代码并保持开源。这一切使 Manticore Search 成为一个现代,快速,轻量级和功能齐全的数据库,具有出色的全文搜索功能。
简单来讲,Manticore Search主要特点如下:
- 它的查询和检索非常快。对于小型数据集,比ES快15倍,对于中等大小数据,比ES快5倍,对于大型数据,比ES快4倍。
- Manticore是基于SQL的,使用SQL作为其本机语法,并与MySQL协议兼容,使您可以使用首选的MySQL客户端。同时也支持 RestfulAPI查询方式。
- 通过PHP、Python、JavaScript、Java、Elixir和Go等客户端,与Manticore Search的集成变得简单。
- 可以轻松地从MySQL、PostgreSQL、ODBC、xml和csv等来源同步数据。
Manticore Search 和 Elasticsearch 的区别
Manticore Search 的目标是 ELK 堆栈中Elasticsearch 的直接替代品,因此 Kibana 和 Logstash(或 Opensearch 替代品)可以很好地与其配合使用。
官方对两者的性能进行了多种测试,得到的结论 Manticore Search整体上比Elasticsearch表现更优。(部分截图如下)
作为 Elasticsearch 的更快替代品,两者的不同表现在:
比较维度 | 描述 | 详情 |
---|---|---|
搜索速度 | Manticore 能够无条件地默认将搜索查询并行到所有 CPU 核心,Elasticsearch 默认只有 1 个分片,但现代服务器中的 CPU 核心要多得多。 | 针对 17 亿个文档的测试,Manticore 整体上比 Elasticsearch 快 4 倍。 Hacker News 的 110 万条评论,Manticore 比 Elasticsearch 快 15 倍。 1000 万个 Nginx 日志和各种相当真实的分析,Manticore 比 Elasticsearch 快 22 倍。 |
数据提取性能 | 在数据提取性能方面,Manticore 比 Elasticsearch 快 2 倍。并且数据在批量加载后可立即搜索,而不是 2 分钟后。 | 17 亿文档测试数据的写入时间。 到 Elasticsearch - 28 小时 33 分钟 |
内容 | Elasticsearch本身是用Java编写的,Manticore 是用 C++ 编写的。
| |
开源 | Elasticsearch许可证于 2021 年从 Apache 2 更改为 Elastic 许可证。 Elasticsearch 和 Kibana更改开源协议 | 目前来看 Elasticsearch 修改协议针对云服务提供商做出限制,即要求云服务提供商在未对项目做出贡献的情况下,不得发布自己的开源产品即服务。 目前看来对使用没有影响。 |
聚合 | Manticore 和 Elasticsearch 都提供了丰富的聚合功能。 | |
一些思考
1、集合类型的字段怎么存储,怎么做筛选。
当前 es中有keyWord 数据结构,manticore中也支持此结构。
* keyword:用于结构化内容的字符串类型,例如邮箱地址、状态码、品牌等。它不进行分析,可以用于排序和聚合。
Life is rife with questions that baffle. All we can do is carry on.