亲,只收二进制

es7 大size的fetch耗时增加明显

Elasticsearch | 作者 waitinraining | 发布于2022年06月16日 | 阅读数:1620

我们es集群从6.3.2升级到7.13.4。发现在大size耗时的时候,es7.13.4耗时增长比较大。具体表现:
查询语句:
{
"from": 0,
"size": 500,
"_source": false,
"profile":true,
"track_total_hits": true,
"query": {
"bool": {
"filter": [
{
"term": {
"pg_cate_brand_model": {
"value": "101,10530,0",
"boost": 1
}
}
}
],
"adjust_pure_negative": true,
"boost": 1
}
}
}
具体表现:
es6: 38ms
es7: 117ms
把size分别调整为10、100,对应耗时:
es6-10: 22ms
es6-100: 23ms
es7-10: 5ms
es7-100: 20ms
 
因场景需求我们单次请求要求size最低为500,但是es7相对es6d的耗时增长太多了。
大佬们,求指导下为啥es7的大size耗时增长这么多
已邀请:

vsop_479

赞同来自:

lucene 从8.7.0开始,lz4/deflate压缩都增加了dict,压缩比更高,性能有下降。
并且lz4的sub block是60K,比deflate的48k还大,应该是个bug。lucene8.10改成了8K,性能应该好了。试试es 7.16.
大的doc才会触发60K的写,小的doc触发1024个doc数的写。
 

要回复问题请先登录注册