google 存储索引按照document id index 不理解

在谷歌search里,老师说存储索引的时候,是按照document id来做分片的。我觉得这里有一些问题。

这一块我感觉谷歌用的是kv存储,比如是rocksdb这种。那么如果是按照document id来做分片,key就是:document id。value是<term, term_freqeucny>. 那么我在索引的时候岂不是要遍历整个数据库来找我需要的term?sql 长这样: select term == xx from *. 这个按照谷歌的量级来说应该是不可能搜到的。

当然这里我有假设,谷歌用了rocks db这种硬盘的kv 存储哈。

Google 不太可能只用传统的 KV Store,你的假设有出处吗?可以分享一下。
课上的设计里,存储索引的时候内存里是用 Document id shard,硬盘是按照 term shard。