倒排索引,是适合用于进行搜索的,倒排索引的结构是比较复杂的,总体来说包括以下几个部分
(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开销
倒排索引不可变的坏处:每次都要重新构建整个索引