倒排索引, 是适合用于进行搜索的, 倒排索引的结构是比较复杂的, 总体来说包括以下几个部分
(1) 包含这个关键词的 document list
(2) 包含这个关键词的所有 document 的数量: IDF(inverse document frequency)
(3) 这个关键词在每个 document 中出现的次数: TF(term frequency)
(4) 这个关键词在这个 document 中的次序
(5) 每个 document 的长度: length norm
(6) 包含这个关键词的所有 document 的平均长度
倒排索引是不可变的, 不可变的好处有:
(1) 不需要锁, 提升并发能力, 避免锁的问题
(2) 数据不变, 只要 cache 内存足够就可以一直保存在 os cache 中,
(3) 因为数据不变, filter cache 可以一直驻留在内存中, 提升性能
(4) 可以压缩, 节省 cpu 和 io 开销
倒排索引不可变的坏处: 每次都要重新构建整个索引
来源: http://www.bubuko.com/infodetail-2508568.html