ElasticSearch(7.2.2)-倒排索引
简介:带你分析倒排索引的原理
我们打开NBA中国官⽹,搜索james得到以下结果
假设⽂档集合如下图所示
- 我们是怎么通过james查找到名字带有james的球员呢?
- 如果按照这个图,我们是不是得把这5个⽂档遍历⼀遍,把⽂档带有james的球员查找出来?
- 如果按照这种顺序扫描,那每次输⼊不同的关键字,岂不是要从头到尾遍历⼀遍?
假设⽂档集合如下图所示
- 我们把这个5个球员的名字进⾏分词,每个分词转成⼩写字⺟,并且以每个分词分组,统计它所在⽂档的位置。
- 当有关键字请求过来的时候,将关键字转成⼩写,查找出关键字匹配到的⽂档位置,然后全部返回。
完善倒排索引
参数解释
- DocId:单词出现的⽂档id
- TF:单词在某个⽂档中出现的次数
- POS:单词在⽂档中出现的位置