在编制任何文档之前,我正在调整一组具有相同映射的弹性搜索索引。对于其中一些索引,从不使用某些字段。
在给定搜索查询的情况下,有没有办法获取所有使用的字段的列表?例如,假设我执行的搜索返回以下单个文档(或具有与此类似模式的一组文档):
{
type: "foo",
data: {
name: "foo",
address: "bar",
phoneNumber: "baz"
}
}
我希望我要求的查询返回[type, data.name, data.address, data.phoneNumber]
答案 0 :(得分:1)
可以使用元字段_field_names来实现此目的。
如下例所示,在此处运行聚合也会为您提供文档计数。
示例:
{
"size": 0,
"aggs": {
"Field names": {
"terms": {
"field": "_field_names",
"size": 0
}
}
}
}