疲劳是最舒适的枕头,努力工作吧。

新版Lucence的改进

Elasticsearch | 作者 Charele | 发布于2023年09月07日 | 阅读数:1069

我们知道,当我们在ES中创建字段为long类型的时候,
缺省时:
为了查询,ES会建立点值,
同时为了排序,聚合,ES会建立DocValue值,
这样可能比较麻烦。
 
在Lucene9.5中,新加了新数据类型:一个可以兼顾两种功能,
 
111.png

 
我感觉用了新版Lucene的ES在编码上肯定会改变(没有看过),
 
即使ES代码改变了,这对ES用户来说,也感觉不到啥变化。
已邀请:

Charele - Cisco4321

赞同来自:

222.PNG

 
红色是点值
蓝色是docValue
紫色表示,数字也可以存了。以前是不存数字的

Charele - Cisco4321

赞同来自:

111.png

 
用新类型,查询时,Lucene已经帮你做了优化:-)
 
而这个优化,正是ES费力要做的事:
https://elasticsearch.cn/question/13100
 

Charele - Cisco4321

赞同来自:

昨晚我突然想到一个问题,
比如我定义LongField(123),
 
它定义一个123点值,一个123 dv值,
那如果我把这个dv值改了,两边不同,那不是要乱套了吗?
(数据类型的dv是可以更改的)
 
刚试了下,是我多虑了。
能改的只是单值数字类型,它这个是多值的,不能改。

要回复问题请先登录注册