聚合后有没有办法拉回字段名?
Is there a way to pull back the field name after aggregation?
我正在使用弹性搜索 1.5.2,我想知道是否有办法将字段名称添加到聚合的 return 而不是聚合本身的名称,以便 age
可以保持年龄而不是Customer.Age
{
"aggregations": {
"age": {
"terms": {
"field": "Customer.Age",
"size": 10
}
}
}
}
我希望 return 看起来像这样
aggregations: {
age: {
doc_count_error_upper_bound: 0
sum_other_doc_count: 0
field: Customer.Age
buckets: [6]
0: {
key: "unknown"
doc_count: 607103
}
}
而我目前得到的不包括字段
目前无法做到这一点(在 2.0 发布之前)。但是,由于聚合的名称基本上可以是任何东西,因此您可以将聚合名称和聚合名称中的字段都编码,然后在客户端解析它:
{
"aggregations": {
"age/Customer.Age": {
"terms": {
"field": "Customer.Age",
"size": 10
}
}
}
}
在 v2.0 中,可以指定将返回给用户的任意 metadata:
{
"aggregations": {
"age: {
"terms": {
"field": "Customer.Age",
"size": 10
},
"meta": {
"field": "Customer.Age"
}
}
}
}
我正在使用弹性搜索 1.5.2,我想知道是否有办法将字段名称添加到聚合的 return 而不是聚合本身的名称,以便 age
可以保持年龄而不是Customer.Age
{
"aggregations": {
"age": {
"terms": {
"field": "Customer.Age",
"size": 10
}
}
}
}
我希望 return 看起来像这样
aggregations: {
age: {
doc_count_error_upper_bound: 0
sum_other_doc_count: 0
field: Customer.Age
buckets: [6]
0: {
key: "unknown"
doc_count: 607103
}
}
而我目前得到的不包括字段
目前无法做到这一点(在 2.0 发布之前)。但是,由于聚合的名称基本上可以是任何东西,因此您可以将聚合名称和聚合名称中的字段都编码,然后在客户端解析它:
{
"aggregations": {
"age/Customer.Age": {
"terms": {
"field": "Customer.Age",
"size": 10
}
}
}
}
在 v2.0 中,可以指定将返回给用户的任意 metadata:
{
"aggregations": {
"age: {
"terms": {
"field": "Customer.Age",
"size": 10
},
"meta": {
"field": "Customer.Age"
}
}
}
}