Manticore Search - 易于使用的开源快速搜索数据库

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

Video Thumbnail

我们的目标和宗旨

易用性

我们相信,在当今世界,任何技术供应商的主要关注点应该是易用性。我们的目标是让我们的用户,无论是开发者还是运维人员,都不必成为数据库或搜索引擎的专家,或持有博士学位,以便有效地使用 Manticore 产品。我们理解我们的用户还有其他重要任务需要处理,而不是花费数小时试图理解各种设置及其对功能的影响。因此,我们努力确保 Manticore Search 在最小配置下无缝高效地工作,即使使用默认设置

SQL / JSON

我们热爱 SQL。在准备搜索查询时,找不到比这更简单的了。大多数开发者都熟悉 WHEREGROUP BYORDER 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 yaml),以及 实时模式,在该模式下,使用 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多种排名因素,提供多种内置排名器和基于表达式的自定义排名器。此外,它还包括文本词干提取、词形还原、停用词、同义词、词形、低级字符映射、适当的中文分词、简单的文本高亮、排名和分词插件等众多功能。

集成

我们相信将Manticore Search集成到您现有的技术栈中应该是简单的。这就是为什么Manticore可以开箱即用地从MySQL、Postgres、MSSQL、ODBC、XML、CSV、TSV读取数据。它还可以作为引擎与MySQL集成或通过ProxySQL访问。Manticore Search还与Logstash、Apache Superset、Grafana和其他开源工具无缝集成。

开源

作为开源爱好者,我们坚信数据库等技术应该是开源的。考虑到这一点,我们已将Manticore Search和所有其他Manticore产品在OSI批准的开源许可证下公开发布。您可以在 GitHub 上找到我们。

向量搜索

Manticore Search支持向量搜索,用于相似性搜索、推荐和语义搜索等功能。通过利用嵌入(高维空间中的数据表示),它帮助创建智能且精确的搜索体验。使用高效的HNSW算法的KNN(k最近邻)搜索,Manticore支持灵活的向量配置和相似性度量,如余弦相似性、内积和平方L2距离。与SQL和JSON API的集成无缝,确保与现有工作流程的轻松兼容。

文档

我们理解快速入门新技术的重要性。然而,我们对现有的文档引擎并不满意,因此我们创建了自己的文档引擎。我们的文档引擎, 使用Manticore Search制作 ,具有由Manticore Search提供支持的搜索,以及漂亮的代码示例标签和更多功能。

Video Thumbnail
Video Thumbnail

互动课程

为了让您更容易熟悉Manticore Search,我们还提供 免费的互动课程 ,可以帮助您轻松了解Manticore Search - 从如何安装和配置它开始,逐步深入到地理搜索、"你是说"功能、自动完成和分面实现等主题。

安装Manticore Search

安装Manticore Search