我有一个ES索引,其中包含来自某些科学实验的参数数据。按关键字长度筛选“术语聚合”
我有以下条款聚集:
{
"aggs": {
"variables": {
"terms": {
"field": "value",
"size": 100
}
}
},
"size": 0
}
它返回这样的结果:
{
"took" : 3,
"timed_out" : false,
"_shards" : {
"total" : 5,
"successful" : 5,
"failed" : 0
},
"hits" : {
"total" : 9928,
"max_score" : 0.0,
"hits" : [ ]
},
"aggregations" : {
"variables" : {
"buckets" : [ {
"key" : "00",
"doc_count" : 158
}, {
"key" : "1",
"doc_count" : 158
}, {
"key" : "2",
"doc_count" : 158
}, {
"key" : "pressure",
"doc_count" : 158
}, {
"key" : "seconds",
"doc_count" : 158
}, {
"key" : "since",
"doc_count" : 158
}, {
"key" : "s",
"doc_count" : 156
}, {
"key" : "speed",
"doc_count" : 127
}, {
"key" : "sample",
"doc_count" : 121
}, {
"key" : "a",
"doc_count" : 104
} ]
}
}
}
我想要做的就是告诉ElasticSearch忽略所有的键,其长度小于5 ;
例如过滤掉"key": "a"
,"key": "s"
等等。
这可能吗?
好的建议,谢谢! 问题是变量存储在句子中;例如“1970-1-01 00:00:00之前的秒”或“风速(每小时英里数)”。 相反,我会尝试使用自定义分析器来索引不同的词,并筛选长度小于5个字符的任何键。 – 2014-10-31 15:00:49