• 分布式搜索
Manticore 通过其分布式搜索功能有效地扩展了系统的能力。分布式搜索在多服务器、多 CPU 或多核环境中有助于改善查询延迟(即搜索时间)和吞吐量(即最大查询/秒)。对于需要处理海量数据(如数十亿条记录和数 TB 文本)的应用程序来说,这至关重要。
其核心概念是将搜索数据水平划分到不同的搜索节点上,并进行并行处理。
分区需要手动设置。设置步骤如下:
在不同的服务器上设置多个 Manticore 实例
将数据集的不同部分分配给不同的实例
在某些
searchd
实例上配置一个特殊的分布式表将查询路由到分布式表上
这种类型的表只包含对其他本地或远程表的引用,因此不能直接重新索引。您应当重新索引它所引用的表。
当 Manticore 收到针对分布式表的查询时,会执行以下步骤:
连接到已配置的远程代理
将查询发送给它们
同时搜索配置的本地表(远程代理也在搜索)
从远程代理检索搜索结果
合并所有结果,删除重复项
将合并后的结果发送给客户端
从应用程序的角度来看,使用普通表或分布式表进行搜索没有任何区别。换句话说,分布式表对应用程序是完全透明的,无法判断查询的表是分布式表还是本地表。
了解更多关于远程节点的信息。
最后更新于