新一代搜索引擎之王,据说性能是 ES 的15倍?

新一代搜索引擎之王,据说性能是 ES 的15倍?

Manticore Search介绍

Manticore Search 是一个使用 C++ 开发的高性能搜索引擎,创建于 2017 年,其前身是 Sphinx Search 。

Manticore Search 充分利用了 Sphinx,显着改进了它的功能,修复了数百个错误,几乎完全重写了代码并保持开源。这一切使 Manticore Search 成为一个现代,快速,轻量级和功能齐全的数据库,具有出色的全文搜索功能。

Manticore Search目前在GitHub收获9.5k star,拥有大批忠实用户。它是一个分布式的全文搜索引擎,专为处理大规模数据集和高并发查询而设计。它继承了 Sphinx 的高性能特性,同时引入了更多现代化功能,如实时索引、SQL 支持、分布式搜索等,使其成为 Elasticsearch 等流行搜索引擎的有力竞争者。

新一代搜索引擎之王,据说性能是 ES 的15倍?

同时,来自 MS 官方的测试表明 Manticore Search 性能比 ElasticSearch 有质的提升:

新一代搜索引擎之王,据说性能是 ES 的15倍?
  • 对于小型数据,比MySQL快182倍(可重现)
  • 对于日志分析,比Elasticsearch快29倍(可重现)
  • 对于小型数据集,比Elasticsearch快15倍(可重现)
  • 对于中等大小的数据,比Elasticsearch快5倍(可重现)
  • 对于大型数据,比Elasticsearch快4倍(可重现)
  • 在单个服务器上进行数据导入时,最大吞吐量比Elasticsearch快最多2倍(可重现)

在一定的场景中,Manticore 比 Elasticsearch 快 15 倍!完整的测评结果,可以参考:

https://manticoresearch.com/blog/manticore-alternative-to-elasticsearch/

功能与优势

核心功能

  • 高性能检索: Manticore Search 能够在毫秒级时间内处理数十亿条记录的查询,适用于高并发场景。
  • 实时索引: 支持实时数据插入和更新,无需重建索引即可实现数据的即时检索。
  • SQL 支持: 提供完整的 SQL 接口,用户可以使用熟悉的 SQL 语法进行数据查询和管理。
  • 分布式搜索: 支持水平扩展,能够轻松处理大规模数据集和高流量负载。
  • 强大的全文搜索功能: 支持布尔查询、短语匹配、模糊搜索、同义词处理等高级搜索功能。
  • 与 MySQL 协议兼容: 可以无缝集成到现有的 MySQL 生态系统中,降低迁移成本。

技术优势

  • 轻量级架构: 相比 Elasticsearch,Manticore Search 的资源占用更低,适合资源有限的环境。
  • 实时性能: 通过高效的索引算法和内存管理,Manticore Search 能够实现近乎实时的数据检索。
  • 易于扩展: 支持分布式部署,用户可以通过添加节点轻松扩展系统容量。
  • 丰富的插件生态: 提供多种插件支持,如中文分词、数据同步等,满足不同场景的需求。

Craigslist、Socialgist、PubChem、Rozetka和许多其他公司使用 Manticore 进行高效搜索和流过滤。插播一条:如果你想加入我们,可以点击->程序员交流社区

使用

Manticore Search 的安装过程非常简单,支持多种操作系统和部署方式。

Linux 用户:

添加 Manticore Search 的官方仓库:

wget https://repo.manticoresearch.com/manticore-repo.noarch.deb  
sudo dpkg -i manticore-repo.noarch.deb  
sudo apt-get update  

安装 Manticore Search:

sudo apt-get install manticore manticore-extra  

Docker 用户:

使用 Docker 快速启动 Manticore Search:

docker run -d --name manticore -p 9306:9306 manticoresearch/manticore  

安装完成后,用户可以通过 SQL 接口或 HTTP API 进行数据管理和查询。例如,创建一个索引并插入数据:

CREATE TABLE products (title text, price float);  
INSERT INTO products (title, price) VALUES ('Manticore Search Guide', 29.99);  
SELECT * FROM products WHERE MATCH('Manticore');  

典型应用场景

  • 电商平台: 为商品目录提供快速、精准的搜索功能,支持复杂的过滤和排序需求。
  • 内容管理系统: 为新闻、博客等网站提供高效的内容检索功能,提升用户体验。
  • 企业内部搜索: 用于知识库、文档管理系统等场景,帮助员工快速找到所需信息。
  • 日志分析: 通过全文搜索功能快速检索和分析日志数据,辅助故障排查和性能优化。

完整文档和开源代码,可以移步:

https://github.com/manticoresoftware/manticoresearch

后端专属技术群

构建高质量的技术交流社群,欢迎从事编程开发、技术招聘HR进群,也欢迎大家分享自己公司的内推信息,相互帮助,一起进步!

文明发言,以交流技术职位内推行业探讨为主

广告人士勿入,切勿轻信私聊,防止被骗

新一代搜索引擎之王,据说性能是 ES 的15倍?
加我好友,拉你进群

点下方的“❤支持我们,非常感谢!

原文始发于微信公众号(Java知音):新一代搜索引擎之王,据说性能是 ES 的15倍?

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/313588.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!