对于在搜索引擎中使用桶相对于整体倒排索引的效率感到困惑吗?

问题描述 投票:0回答:1

http://infolab.stanford.edu/~backrub/google.html

我正在阅读 Google 关于搜索引擎实施的白皮书。

在谷歌的系统设计中,倒排索引被分片成桶,希望能够更快地查找。

我正在构建自己的搜索索引作为练习,并且我已通过倒排索引作为哈希图实现(以恒定的时间复杂度进行查找)

现在,如果我将倒排索引分成一堆桶,我仍然看不到在一个整体倒排索引上使用它们有任何实用性。

因为在实例化倒排索引对象时,如果将所有桶从磁盘反序列化到 RAM(将桶加载到 RAM 中),则所有桶的总大小仍然等于单片倒排索引。在这种情况下,在一个大型倒排索引上使用桶在计算复杂性方面并不是特别理想。

在另一种情况下,我只将少数桶加载到 RAM 中,如果我在查询中得到一个存在于已卸载桶中的单词,则必须加载该桶,这将花费处理时间,从而减慢搜索速度发动机的性能。

对于这种情况,你们有什么建议?

python search-engine google-search
1个回答
0
投票

我认为桶尺寸应该足够小,这样可以减少装载时间。

© www.soinside.com 2019 - 2024. All rights reserved.