索引
正排索引倒排索引 倒排索引的更新策略
完全重建再合并原地更新混合 常用概念
文档的信息 数据类型
字符串整数浮点布尔日期 索引 正排索引
由ID查数据。
数据组成:ID,xxx。
倒排索引
将数据拆分成字词,由字词查数据。
数据组成:词典+列表。
词典记录了所有的单词,B加树,会很大。
一个词对应一个列表。哪些文档里有这个词。
列表数据:
文档ID。出现次数。位置和偏移。等等。 倒排索引的更新策略 完全重建
文档合并,索引重新创建。
代价高。
再合并文档合并,索引遍历,逐个合并。
还是要新建索引,代价也不小。
原地更新文档合并,直接让老索引留空,让新索引加入。
留空很难抉择,效率低下。
混合分为热词和冷词。
热词原地更新。
冷词再合并。
表——索引。一条记录——一个文档。列——字段。 文档的信息
_index:所在的表_id:唯一标识 数据类型 字符串
text
keyword
keyword必须要全匹配
整数 long
integer
short
byte
double
float
half_float
scaled_float
特点:
正0.0和负0.0不一样。优先考虑scaled_float,他会将1.23拆成123和100,作除法。 布尔
boolean
日期date
有三种表示方法
“2018-01-13” 或 “2018-01-13 12:10:30”integer秒数(自1970年)long毫秒数(自1970年)