Kibana可视化和仪表盘在Kibana中,所有的可视化组件都是建立在Elasticsearch聚合功能的基础上的。Kibana还支持多级聚合来进行各种有用的数据分析
Markdown小部件度量和桶的概要来自Elasticsearch的聚合功能,这两个概念在Kibana中为数据集设计可视化的时候扮演着至关重要的角色
SQL的GROUP BY非常相似。分桶以将文档根据特定的条件进行分组,然后对分组后的文档计算度量Kibana图表的X轴,也可以给桶添加子桶Kibana的X轴支持如下的桶类型Data Histogram)Histogram)Range)Date Range)IPV4范围(IPV4 Range)Terms)Filters)Sginifiant Terms)需要一个日期类型的字段 和时间区间配置。文档将按指定的字段和时间区间分组。举个例子,如果指定@timestamp字段作为桶,且时间区间为一周,那么文档将基于每周的数据分组,然后可以对分组后的文档计算度量,如计数、求平均值等
直方图与日期直方图相似,除了要求指定的字段和区间都是数字类型的。直方图将在选定的字段上按照指定的区间对文档进行分桶。这相当于以相等区间进行范围聚合
类似于直方图,但可以根据需求手动配置不同的级别。例如对于字段计数,可以选用分桶的范围为0~1000、1000~5000及5000~15000等
日期范围需要一个日期字段,并且为每个桶指定自定义的日期范围
短语可以用于根据任意字段的值 进行文档分组,这非常类似于SQL中的GROUP BY语句。短语聚合还可以选择指定Top N或Bottom N,或者也可以基于度量指定顺序。例如,可以根据产品类型来进行分组,并获得每个产品类型前五名

例如计算文档的总数、平均值 、最小值 或最大值 。度量通常代表区域图、垂直柱状图和折线图的Y轴。度量的可用类型如下
Count(计数)Average(平均值)Sum(求和)Unique Count(唯一值计数)Min(最小值)Max(最大值)Percentile(百分比)Percenntile Ranks(百分比等级)Count是非常重要的度量聚合函数,它的主要目的是计算在桶聚合里每个桶中字段值 的数量。例如,要计算每一个产品类别的访问者的数量,可以指定产品类别字段为桶聚合,然后进行count度量聚合计算
Average、Sum、Min和Max类似于Count聚合,Average、Sum、Min和Max相应地为聚合中的数字字段计算平均值、求和、最小值 和最大值
Unique Count类似于SQL中的COUNT (DISTINCT fieldname)功能,计算出字段的唯一值的数量

JSON输入作为Kibana理解数据中所述的衍生字段。下面的JSON脚本就是一个例子{ "script" : "doc['volume'].value * 100" }
一个可视化页面看起来像下面这样,
工具栏在顶部,度量和桶在左侧,预览窗格在右侧

对于创建累积时间线或分布数据非常实用 Y轴:度量 X轴:桶。还可以在桶中定义子聚合,用来实现图表分割(Split Charts,分割成基于不同聚合的多个图表)或者区域分割(Split Area,分割成基于不同聚合的区域)的功能

以表格的形式呈现聚合数据,有助于识别Top N类型的聚合。例如,使用下面的数据不及格可视化来获得点击次数最多的前五名客户

适用于高密度的时间序列,而且在比较两个序列的时候非常有用

Markdown小部件用来在仪表盘中显示信息或者指令,可以显示任意需求的Markdown格式的文本

用于显示字段的单个数字类型的分析。可以用来计算一个字段的总命中数、总和或平均值。例如,下面的度量可以用来显示应用程序在一段时间内的平均响应时间

通常用于显示整体中各个部分或者其百分比关系。饼图中的片代表了数据的分布。饼图中片的值 是由度量聚合决定的,例如Count、Sum,或者Unique Count。桶聚合则定义了图表中的数据类型。例如,下面的饼图可以用来显示应用程序的不同响应码的分布

切片地图用来根据geo坐标定位地理位置。这是基于Geohash桶聚合实现的,Geohash聚合会将多组坐标分组到一个桶中

对基于时间和非时间的字段都表现得很好。垂直柱状图可以是单独的柱状图,也可以是累积柱状图。Y轴是度量,X轴是桶聚合。例如,下面的垂直柱状图可以用来显示HTTP响应码的计数
