⚠️ 此页面为自动翻译,翻译可能不完美。

Manticore 博客 – 关于技术、搜索数据库和开源的帖子

blog-post

Sphinx 3 vs Manticore: performance benchmark

[更新] 更新的基准测试结果请参见此处 。 近期备受期待的 Sphinx 3 已经 发布 并在 3.0.2 版本中更新 。它新增了文档存储功能、A-索引、片段预索引等功能,但不幸的是,它不再开源(至少在 2018 年 3 月之前是这样)。 这些功能都非常不错,但你是否关心 Sphinx 3 的性能受到了多大影响,以及与 Manticore 的性能差异有多大?我们也很感兴趣! 为了弄清楚这一点,我们进行了基准测试,以测量: 索引时间 Sphinx 3 和 Manticore ...

Preserving the order of search result set from Manticore Search

在Manticore查询和最终返回给用户的结果之间可能存在额外的处理。由于大多数情况下需要根据相关性评分进行排序,因此必须确保不丢失这种排序。 使用Manticore Search配合数据库的典型工作流程如下: 执行Manticore查询 从结果集中获取文档ID列表 使用文档ID执行数据库查询以获取最终输出结果 可以通过使用IN(ids)谓词在单个查询中从数据库获取对应的记录。 mysql> SELECT * FROM mytable WHERE id ...

Manticore Search kill-list feature

普通索引的文本数据是不可变的,这意味着要刷新数据,我们需要执行完整的重新索引。在许多情况下,重新索引可能需要很长时间。为此,使用了 main+delta schema 。 该概念假设一个大型索引,它保存了某个时间点的数据快照,以及一个较小的索引,它保存了从快照时间到更近期的更改(delta)。由于后者较小,可以更频繁地重新索引。delta 更改可以是新记录、更新或删除的记录。更新或删除的记录会引入一个问题:当引擎在两个索引中搜索时,它不知道主索引中的记录是否已过时。这会导致继 ...

Plain indexes replication

Manticore Search(以及 Sphinx)目前还不能开箱即用地为普通索引或 RT 索引支持复制 (不过我们正在开发这个功能,如果你想参与 Beta 测试,请通过 [email protected] 告诉我们),所以如果你需要在其他地方保留一份 Manticore Search / Sphinx 数据副本,就必须自行实现。你可能需要这样做的原因包括: 可扩展性:您希望在服务器上平衡负载(例如,您可以将所有Manticore查询的一半发送到一个服务器,其 ...

Manticore Search 2.6.2 GA release

我们很高兴宣布 Manticore Search 2.6.2 GA 的发布。 适用于 Debian、Ubuntu、Red Hat/CentOS、Windows 和 OSX 的预构建软件包可以从 此处 下载。如需 Docker 镜像,请查看官方 仓库 。 改进 Percolate 查询的性能得到了显著提升,尤其是在使用 NOT 运算符以及文档批量处理时。 根据 dist_threads 的设置,可以使用多个线程来处理 CALL PQ 调用。使用 dist_threads=8 ...

Minimal configuration to play with Manticore Search

如果你想开始学习 Manticore Search 的普通索引或查看某些功能如何运作,以下是最简单的 Manticoresearch 配置可能会有所帮助: source min { type = mysql sql_host = localhost sql_user = root sql_pass = sql_db = test sql_query = select 1, 'cat' union select 2, 'dog' } index idx_min { path = ...

订阅通讯

订阅