我这个特殊场景该怎么优化呢,多field主要使用minimum_should_match
Elasticsearch | 作者 alphabing | 发布于2018年01月23日 | 阅读数:5747
有大量Field,目前上百,其存储内容多如,field1->(0、1、2、3等数字,非数组),目前测试用总数据量千万级别,实际的生产环境可能每天要产生100万条数据。
有大量should语句如下,例子中只有3个,实际上可能是几十上百个,minimum_should_match的值也基本不会低于50%,由于field比较多,效率比较慢,测试环境查询操作随着数据量和Field增加明显变慢:
有大量should语句如下,例子中只有3个,实际上可能是几十上百个,minimum_should_match的值也基本不会低于50%,由于field比较多,效率比较慢,测试环境查询操作随着数据量和Field增加明显变慢:
{
"should":[
{
"match": {
"field1": 1
}
},
{
"match": {
"field2": 0
}
},
{
"match": {
"field3": 3
}
}
],
"minimum_should_match": "70%"
}
2 个回复
medcl - 今晚打老虎。
赞同来自: alphabing
alphabing
赞同来自: