以下是我的总结。
{
"size": 0,
"aggs": {
"cities": {
"terms": {
"field": "city.raw"
}
}
}
制图
"properties": {
"state" : {
"type": "string",
"fields": {
"raw" : {
"type": "string",
"index": "not_analyzed"
}
}
}
效果很好。但是它考虑到区分大小写对字段进行分组。
例如。
{
"key": "New York",
"doc_count": 45
},
{
"key": "new york",
"doc_count": 11
},
{
"key": "NEW YORK",
"doc_count": 44
}
我希望结果像这样
{
"key": "new york",
"doc_count": 100
}
最佳答案
我认为问题是您使用索引字符串的原始版本
city.raw
您没有存档的任何分析版本?
如果您还将字段的映射也放在示例中,那应该很棒。
更新:U应该使用自定义分析器来满足您的需求。标记器应为关键字,过滤器应为小写。然后使用此分析器索引数据。然后应该工作。
"analyzer": {
"my_analyzer": {
"type": "custom",
"tokenizer": "keyword",
"filter": "lowercase"
}
}
还有一些信息KeyWord Analyzer和Custom Analyzers