用了Elasticsearch,一口气上5T

elasticsearch 7.4 查询性能降低

Elasticsearch | 作者 taoyantu | 发布于2020年01月20日 | 阅读数:4043

准备将es 5.5升级为es7.4,在用jmeter压测时发现相同的语句es5.5平均查询用100毫秒,es7.4用200毫秒,主要的查询语法是bool过滤数据,然后agg数据聚合。请教各位大神这可能是什么原因呢??
 
服务器环境相同,数据环境相同,压测场景相同,在kibana query profile 用各种语句查询,7.4都是优于5.5的,可是一到真实查询,5.5的耗时就比7.4低。
 
es5.5 和 es7.4 节点数一样,3台服务器 ,配置都是 88c 256G,每个服务器启动3个节点,共9个节点,写入了相同的数据,查询语句为以下语句
{
    "size": 0,
    "query": {
        "bool": {
            "filter": [{
                    "term": {
                        "aaa": "bbb"
                    }
                }, {
                    "range": {
                        "@timestamp": {
                            "gte": "1576117714282",
                            "lte": "1576118614282"
                        }
                    }
                }
            ], "must_not": [{
                    "terms": {
                        "bizcode": ["00000000"]
                    }
                }
            ]
        }
    },
    "aggs": {
        "distribution": {
            "terms": {
                "field": "payer",
                "size": 10,
                "order": {
                    "_count": "desc"
                }
            }
        },
        "aggs": {
            "distribution2": {
                "terms": {
                    "field": "from",
                    "size": 10,
                    "order": {
                        "_count": "desc"
                    }
                }
            }
        }
    }
}
 
ES5.5版本,查询结果的 took 100毫秒左右
ES7.4版本,查询结构的 took 200毫秒左右
 
es 5.5 profile
es5search.jpg

es5agg.jpg

 
 
es 7.4 profile

es7search.jpg

es7agg.jpg

 
 
 
已邀请:

laoyang360 - 《一本书讲透Elasticsearch》作者,Elastic认证工程师 [死磕Elasitcsearch]知识星球地址:http://t.cn/RmwM3N9;微信公众号:铭毅天下; 博客:https://elastic.blog.csdn.net

赞同来自: taoyantu

机器配置相同,写入数据相同,查询语句相同,
1,相关es的配置,setting mapping呢?一样吗
2,机器资源的使用情况呢?一样吗
3,有没有其他进程占用资源呢?一样吗


一并排查说明下?

taoyantu - it

赞同来自:

目前使用各种查询,在通过Kibana的query profile  看,7.4都应该快过5.5 ,可是在实际实行过程中,就不一样了。我们的搜索条件,都会带 range对@timestamp进行查询,我使用jmeter生成的 timestamp是滑动窗口变化的。两个集群的压测条件肯定是相同的。实在不知道是什么问题。请各位大神帮帮忙啊.

suisuimu - 小白也要加油鸭

赞同来自:

请问你最后发现原因了吗

要回复问题请先登录注册