ElasticSearch(二十一)正排和倒排索引

1.区别

搜索的时候,要依靠倒排索引;排序的时候,需要依靠正排索引,看到每个document的每个field,然后进行排序,所谓的正排索引,其实就是doc values

在建立索引的时候,一方面会建立倒排索引,以供搜索用;一方面会建立正排索引,也就是doc values,以供排序,聚合,过滤等操作使用

doc values是被保存在磁盘上的,此时如果内存足够,os会自动将其缓存在内存中,性能还是会很高;如果内存不足够,os会将其写入磁盘上

下面两条document

doc1: hello world you and me
doc2: hi, world, how are you

2.倒排索引,用来进行搜索

word        doc1        doc2

hello        *
world        *        *
you          *        *
and          *
me           *
hi                    *
how                   *
are                   *

3.正排索引,用来进行排序

document    name        age

doc1        jack        27
doc2        tom        30    

sort by age,取出age进行排序

猜你喜欢

转载自www.cnblogs.com/ql211lin/p/10890711.html
今日推荐