关于 Manticore Search
Manticore Search - 易于使用的开源快速数据库
Manticore Search 是一个开源数据库,于 2017 年作为 Sphinx Search 引擎的延续而创建。我们在其优点的基础上,显著提高了其功能,并修复了 数百个错误 ,同时保持开源。这使得 Manticore Search 成为一个现代、快速、轻量级且功能完善的数据库,具有出色的全文搜索能力。

我们的目标和宗旨
易用性
我们相信,在今天的世界中,任何技术供应商的主要关注点应该是易用性。我们的目标是让我们的用户,无论是开发人员还是运维人员,都不必成为数据库或搜索引擎的专家,或拥有博士学位,就能够有效地使用 Manticore 产品。我们理解我们的用户有其他重要的任务需要处理,而不是花费数小时来理解各种设置的复杂性及其对功能的影响。因此,我们努力确保 Manticore Search 在最小配置的情况下无缝且高效地工作,即使在默认设置下。
SQL / JSON
我们喜欢 SQL。在准备您的搜索查询时,没有比这更简单的了。大多数开发人员都熟悉 WHERE
、GROUP BY
和 ORDER BY
,因为它们已经使用了几十年。使用 Manticore Search,您可以使用 SQL 执行任何类型的查询。此外,Manticore Search 还理解 MySQL 协议,允许您使用 MySQL 客户端进行查询。但是,我们理解在您的应用程序中编写查询可能更适合使用比 SQL 字符串更结构化的协议。这就是为什么 Manticore Search 也支持 JSON。此外,我们为各种编程语言提供 Manticore Search 绑定,以使集成更加无缝。
多模型
Manticore Search 支持行存储(类似于 MySQL 和 Postgres)和列存储(类似于 Redshift、Clickhouse、BigQuery 和 Druid),使其在 小数据集上极其快速 ,这些数据集可以适应 RAM,并且在您的数据 显著大于 RAM 大小时 仍能维持速度。
此外,Manticore Search 提供两种配置模式:普通,其中所有表在配置文件中指定(类似于 k8s yamls),以及 实时,在该模式下,使用 CREATE/ALTER/DROP TABLE 命令创建、修改和删除表。
性能和资源消耗
我们认为性能和资源消耗很重要。这就是为什么 Manticore Search 用 C++ 编写,这是一种常用于编写操作系统、浏览器和其他软件的编程语言,其中性能和资源效率至关重要。用 C++ 编写可能是具有挑战性的并且耗时,但它使我们能够确保 Manticore Search 使用最少的 RAM 并最大化 CPU 效率。根据 公正数据库基准 https://db-benchmarks.com ,Manticore Search 是:比 Elasticsearch 快 15 倍 在 小数据上 ,在 大数据上快 4 倍 ,以及在 日志分析上快 29 倍 。
高级搜索能力
Manticore Search 提供强大的搜索能力,包括高效的向量搜索。 您可以存储和搜索向量嵌入,同时还利用高级全文搜索、模糊匹配和智能查询建议——类似于 Google 的。这样有助于为您的用户创造流畅而引人入胜的搜索体验。
Elasticsearch 替代方案
Manticore Search 是一个强大的 Elasticsearch 替代方案。它可以通过在某种程度上模拟其接口来无缝替代 Elasticsearch,使您能够继续使用 Kibana 或 Logstash 等熟悉的工具。这种兼容性使得迁移现有的基于 Elasticsearch 的项目到 Manticore Search 变得简单,同时利用其性能优势,而不对您的基础设施进行重大更改。
轻松扩展
受行业高标准和客户需求的驱动,我们设计了 Manticore 以便于扩展。这意味着无论您搜索任务的大小或复杂性如何——无论是小型网站、对数十亿条日志记录的分析,还是构建一个有来自不同来源的PB级数据的多语言目录——您都可以通过 Manticore Search 完成。此外,我们相信像 复制和搜索负载分配这样的功能应该易于使用和维护。
强大的全文搜索能力
曼提科搜索(Manticore Search),最初设计为纯文本搜索引擎,具有 卓越的全文搜索能力:拥有超过 20 个全文操作符和超过 20 个排名因素,提供多种内置排名器和基于表达式的自定义排名器。此外,它还包括文本词干提取、词形还原、停用词、同义词、词形、低级字符映射、正确的中文分词、便捷的文本高亮、排名和标记化插件等多个功能。
集成
我们相信 将曼提科搜索集成到您现有堆栈中应该是简单的。这就是为什么曼提科可以直接从 MySQL、Postgres、MSSQL、ODBC、XML、CSV、TSV 读取数据。它还可以作为引擎与 MySQL 集成,或通过 ProxySQL 访问。曼提科搜索还与 Logstash、Apache Superset、Grafana 以及其他开源工具无缝集成。
开源
作为开源爱好者,我们坚信像数据库这样的技术应当是开源的。有鉴于此,我们已根据 OSI 批准的开源许可证,将曼提科搜索及所有其他曼提科产品公开发布。您可以在 GitHub 上找到我们。
向量搜索
曼提科搜索支持向量搜索,用于相似性搜索、推荐和语义搜索等功能。通过利用嵌入(在高维空间中的数据表示),它帮助创建智能而精确的搜索体验。使用高效的 HNSW 算法的 KNN(k-最近邻)搜索,曼提科支持灵活的向量配置和相似性度量,例如余弦相似性、内积和平方 L2 距离。与 SQL 和 JSON API 的集成无缝,确保与现有工作流程的兼容性。
文档
我们理解快速上手新技术的重要性。然而,我们对现有的文档引擎并不满意,因此我们创建了自己的文档引擎。我们的文档引擎, 由曼提科搜索提供支持 ,具有由曼提科搜索驱动的搜索功能,以及漂亮的代码示例选项卡和更多功能。
互动课程
为了让您更容易熟悉曼提科搜索,我们还提供 免费的互动课程 ,帮助您轻松学习曼提科搜索——从安装和配置开始,逐步学习诸如地理搜索、‘您是说’功能、自动完成和分面实现等主题。