【发布时间】:2012-02-19 07:47:19
【问题描述】:
我正在设计一个全文搜索引擎的架构。要点之一是在响应时间短的大型数据集中处理查询。我能想到的一件事是将倒排索引拆分为多个分区。有两种策略:基于术语的分区和基于文档的分区。但是我真的很想知道是否有任何其他方法可以在大型数据集中更快地进行反向搜索?
【问题讨论】:
标签: algorithm search full-text-search parallel-processing information-retrieval
我正在设计一个全文搜索引擎的架构。要点之一是在响应时间短的大型数据集中处理查询。我能想到的一件事是将倒排索引拆分为多个分区。有两种策略:基于术语的分区和基于文档的分区。但是我真的很想知道是否有任何其他方法可以在大型数据集中更快地进行反向搜索?
【问题讨论】:
标签: algorithm search full-text-search parallel-processing information-retrieval
这个video 是Shay Banon 的演讲,他是分布式全文搜索引擎ElasticSearch 的开发者。在视频中,他讨论了基于术语的分区和基于文档的分区的优缺点。
基本上,基于术语的分区会在进程/节点之间产生过多的网络带宽。而且很难很好地实施。基于文档的实施和产生结果极其简单。
此外,in this lecture by Jeffrey Dean 他还解释了差异并说 Google 使用基于文档的分区。
这是分发搜索引擎的两种主要方式。我不知道其他方法。无论如何,您可能想在信息检索文献中搜索有关该主题的新颖作品。
【讨论】: