Elasticsearch:不同领域的聚合
Elasticsearch: Aggregation on different fields
我正在使用一个特定的软件将数据索引到 Elasticsearch,但它创建的文档如下:
{
contact: +31644488857,
name: "Jan",
address: "street 3"
}
和
{
person: {
phone: +31688844499,
address: "street 5"
}
name: "Piet"
}
现在我正在寻找一种在 kibana 中创建 table 的方法,它结合了 phone 数字 ,但将它们视为单个字段.所以我不想为多个字段创建不同的 table 或多个列。我只想创建一个 table 来显示所有 phone 数字,无论它来自哪个字段。
有没有办法做到这一点?我希望我可以使用脚本字段,但似乎我无法在脚本字段上聚合...
您当然可以在 Kibana 中为 (keyword
) 个字符串创建一个脚本字段,您以后可以聚合这些字符串。
只需转到 "Management > Index Patterns",选择相关的索引模式,创建一个新的字符串类型的脚本字段并使用以下脚本:
[doc['contact.keyword'].value, doc['person.phone.keyword'].value]
这将创建一个新的脚本字段,其中包含一个数组,其元素将是您的 phone 数字字段。然后,您可以在“发现”视图或“可视化”视图中的术语聚合中可视化该字段。
我正在使用一个特定的软件将数据索引到 Elasticsearch,但它创建的文档如下:
{
contact: +31644488857,
name: "Jan",
address: "street 3"
}
和
{
person: {
phone: +31688844499,
address: "street 5"
}
name: "Piet"
}
现在我正在寻找一种在 kibana 中创建 table 的方法,它结合了 phone 数字 ,但将它们视为单个字段.所以我不想为多个字段创建不同的 table 或多个列。我只想创建一个 table 来显示所有 phone 数字,无论它来自哪个字段。
有没有办法做到这一点?我希望我可以使用脚本字段,但似乎我无法在脚本字段上聚合...
您当然可以在 Kibana 中为 (keyword
) 个字符串创建一个脚本字段,您以后可以聚合这些字符串。
只需转到 "Management > Index Patterns",选择相关的索引模式,创建一个新的字符串类型的脚本字段并使用以下脚本:
[doc['contact.keyword'].value, doc['person.phone.keyword'].value]
这将创建一个新的脚本字段,其中包含一个数组,其元素将是您的 phone 数字字段。然后,您可以在“发现”视图或“可视化”视图中的术语聚合中可视化该字段。