我尝试使用以下命令从ES获取aggs:
curl --user username:pwd -XGET 'localhost:9200/my_index-2016-06-14/_search?pretty' -d '
{
"size": 0,
"query": {
"match_all": {}
},
"aggs": {
"my_stores": {
"terms": {
"field": "store",
"size": 5000
}
}
}
}
在我的ES索引中," store"字段包含形式为" ABC-123CD"的几种不同商店代码之一。当我收到结果时,我会为每个值获得类似的内容:
{
"key" : "123cd",
"doc_count" : 152
}
换句话说,结果被截断了,我认为它是由于某种方式的连字符。我该如何解决这个问题?
答案 0 :(得分:0)
我自己解决了这个问题,实际上很简单,只需将'.raw'添加到字段值中,如下所示:
curl --user username:pwd -XGET 'localhost:9200/my_index-2016-06-14/_search?pretty' -d '
{
"size": 0,
"query": {
"match_all": {}
},
"aggs": {
"my_stores": {
"terms": {
"field": "store.raw",
"size": 5000
}
}
}
}