elasticsearch Kibana可视化中聚合的聚合,elasticsearch,kibana,aggregation,elasticsearch,Kibana,Aggregation" /> elasticsearch Kibana可视化中聚合的聚合,elasticsearch,kibana,aggregation,elasticsearch,Kibana,Aggregation" />

elasticsearch Kibana可视化中聚合的聚合

elasticsearch Kibana可视化中聚合的聚合,elasticsearch,kibana,aggregation,elasticsearch,Kibana,Aggregation,我正试图在Kibana中的一组聚合上添加一些度量,但是我不知道该怎么做。 例如,我的数据如下所示: {{"A": 12, "B": 15, "month": "July" }, {"A": 5, "B": 98, "month": "August"}, {"A": 54, "B": 21, "month": "July" }, {"A": 53, "B": 4, "month": "August"}, {"A": 15, "B": 24, "month": "August"},

我正试图在Kibana中的一组聚合上添加一些度量,但是我不知道该怎么做。 例如,我的数据如下所示:

{{"A": 12, "B": 15, "month": "July"  }, 
 {"A": 5, "B": 98,  "month": "August"},
 {"A": 54, "B": 21, "month": "July"  },
 {"A": 53, "B": 4,  "month": "August"},
 {"A": 15, "B": 24, "month": "August"},
 {"A": 45, "B": 33, "month": "July"  },
 {"A": 25, "B": 56, "month": "August"},
 {"A": 8, "B": 23,  "month": "August"},
 {"A": 7, "B": 78,  "month": "July"  }}

我想画一个折线图来显示几个月的总和(a)/总和(B)。因此,在本例中,Y轴是每月<代码>总和(A)/总和(B)。这是一种在聚合上应用聚合函数的方法。我知道在弹性搜索中我们可以有聚合的聚合,但在Kibana可视化中呢?在当前版本的Kibana(6.3)中是否可以这样做?谢谢

正如评论中已经指出的,这需要在Elasticsearch中进行聚合。这在Kibana的“经典图表”中目前不可用(请参阅)

您可以使用带有表达式的Timelon(如上面Andrei所指出的)解决此问题,并在编辑器(或Timelon应用程序)的间隔选择器中将间隔切换为1M:


.es(索引=测试,度量=总和:A,时间域=月)。除以(.es(索引=测试,度量=总和:B,时间域=月))

另一种解决方案是使用“Visual Builder”,其配置如下所示:


如果您需要月值,还应在“面板选项”下选择
interval
大小
1M

这是
{“A”:12,“B”:15,“month”:“July”}
一份文档吗?@andrestefan是。让我们假设每个记录都是一个文档,这很重要。首先,这里有一个字段,名为
month
;正如你所知,Kibana是关于时间序列的。
month
字段是一个字符串,而不是
date
。所以,在一个包含月份名称的字符串上建立一个时间序列并不能解决问题。我看了一下这个。即使是
月份
或您在其中的任何日期字段,无论是否为
日期
,这种聚合都可以使用。这在Kibana中似乎还不可用:。否则,您可以将TimeLong与以下内容一起使用
.es(index=test,metric=sum:A,timefield=month)。divide(.es(index=test,metric=sum:B,timefield=month))
。但是,正如我前面提到的,
month
必须是一个时间字段。它可以像
“month”:{“type”:“date”,“format”:“yyyy-MMM”}
(表示年份和月份名称)一样简单。