集群版本5.4.2
索引配置1分片2副本,单分片大小1个多G
查询峰值100多,cpu几乎打满
慢查语句100多ms,简化后如下
索引配置1分片2副本,单分片大小1个多G
查询峰值100多,cpu几乎打满
慢查语句100多ms,简化后如下
GET index_name/_search
{
"from": 0,
"size": 3,
"post_filter": {
"bool": {
"must": [
{
"term": {
"xxxxxxxxxxx": {
"value": 11111111111,
"boost": 1
}
}
}]
}
}
}
使用Search Profile分析主要是MatchAllDocsQuery过程占用的时间,将post_filter替换为query后解决,查询在ms级,搜不到相关资料,请问有大佬了解post_filter对性能的影响吗
1 个回复
ywxk
赞同来自: brucegaochina
你这个语句就相当于先执行了MatchAllDocQuery后,在返回结果前再使用post_filter里面的条件做了一层过滤。
应该使用query关键字,这样在查询数据的时候带着条件筛选数据集。