Kibana – 聚合和指标
Kibana – 聚合和指标
您在学习 Kibana 期间经常遇到的两个术语是 Bucket 和 Metrics Aggregation。本章讨论它们在 Kibana 中扮演的角色以及有关它们的更多详细信息。
什么是 Kibana 聚合?
聚合是指从特定搜索查询或过滤器获得的文档集合或一组文档。聚合构成了在 Kibana 中构建所需可视化的主要概念。
无论何时执行任何可视化,您都需要确定标准,这意味着您希望以何种方式对数据进行分组以对其执行指标。
在本节中,我们将讨论两种类型的聚合 –
- 桶聚合
- 指标聚合
桶聚合
一个bucket主要由一个key和一个document组成。当执行聚合时,文档被放置在各自的桶中。所以最后你应该有一个桶列表,每个桶都有一个文档列表。在 Kibana 中创建可视化时您将看到的 Bucket Aggregation 列表如下所示 –
桶聚合具有以下列表 –
- 日期直方图
- 日期范围
- 过滤器
- 直方图
- IPv4 范围
- 范围
- 重要条款
- 条款
在创建时,您需要为 Bucket Aggregation 决定其中之一,即对存储桶内的文档进行分组。
例如,为了进行分析,请考虑我们在本教程开始时上传的国家/地区数据。国家索引中可用的字段是国家名称、地区、人口、地区。在国家数据中,我们有国家名称及其人口、地区和面积。
让我们假设我们想要区域明智的数据。然后,每个地区可用的国家成为我们的搜索查询,因此在这种情况下,该地区将形成我们的桶。下面的框图显示 R1、R2、R3、R4、R5 和 R6 是我们得到的存储桶,而 c1、c2 ..c25 是文档列表,它们是存储桶 R1 到 R6 的一部分。
我们可以看到每个桶里都有一些圆圈。它们是基于搜索条件的一组文档,并被认为落入每个桶中。在存储桶 R1 中,我们有文档 c1、c8 和 c15。这些文件是属于该地区的国家,其他国家也一样。因此,如果我们计算 Bucket R1 中的国家/地区,它是 3,R2 为 6,R3 为 6,R4 为 2,R5 为 5,R6 为 4。
因此,通过桶聚合,我们可以聚合桶中的文档,并在这些桶中拥有一个文档列表,如上所示。
到目前为止,我们拥有的 Bucket Aggregation 列表是 –
- 日期直方图
- 日期范围
- 过滤器
- 直方图
- IPv4 范围
- 范围
- 重要条款
- 条款
现在让我们一一详细讨论如何形成这些桶。
日期直方图
日期直方图聚合用于日期字段。因此,您用于可视化的索引,如果该索引中有日期字段,则只能使用此聚合类型。这是一个多桶聚合,这意味着您可以将一些文档作为 1 个以上桶的一部分。有一个用于此聚合的间隔,详细信息如下所示 –
当您选择 Buckets Aggregation 作为日期直方图时,它将显示字段选项,该选项仅提供与日期相关的字段。选择字段后,您需要选择具有以下详细信息的间隔 –
因此,来自所选索引并基于所选字段和间隔的文档将对存储桶中的文档进行分类。例如,如果您选择间隔为每月,则将基于日期的文档转换为桶,并基于月份,即 Jan-Dec 将文档放入桶中。这里 Jan,Feb,..Dec 将是桶。
日期范围
您需要一个日期字段才能使用此聚合类型。在这里,我们将有一个日期范围,即要给出的日期和截止日期。存储桶将根据给定的表格和日期提供其文档。
过滤器
使用过滤器类型聚合,将根据过滤器形成桶。在这里,您将获得一个基于过滤条件形成的多存储桶,一个文档可以存在于一个或多个存储桶中。
使用过滤器,用户可以在过滤器选项中编写他们的查询,如下所示 –
您可以使用添加过滤器按钮添加您选择的多个过滤器。
直方图
这种类型的聚合应用于数字字段,它将根据应用的间隔对存储桶中的文档进行分组。例如,0-50,50-100,100-150 等。
IPv4 范围
这种类型的聚合主要用于 IP 地址。
我们拥有的索引 contriesdata-28.12.2018 没有 IP 类型的字段,因此它显示如上所示的消息。如果您碰巧有 IP 字段,则可以在其中指定 From 和 To 值,如上所示。
范围
这种类型的聚合需要字段的类型为数字。您需要指定范围,文档将列在该范围内的桶中。
如果需要,您可以通过单击“添加范围”按钮来添加更多范围。
重要条款
这种类型的聚合主要用于字符串字段。
条款
这种类型的聚合用于所有可用的字段,即数字、字符串、日期、布尔值、IP 地址、时间戳等。请注意,这是我们将在我们将在此处理的所有可视化中使用的聚合教程。
我们有一个选项顺序,我们将根据我们选择的指标对数据进行分组。大小是指要在可视化中显示的桶数。
接下来,让我们谈谈度量聚合。
指标聚合
度量聚合主要是指对存储桶中存在的文档进行的数学计算。例如,如果您选择一个数字字段,您可以对其进行的度量计算是 COUNT、SUM、MIN、MAX、AVERAGE 等。
我们将讨论的度量聚合列表在此处给出 –
在本节中,让我们讨论我们将经常使用的重要内容 –
- 平均数
- 数数
- 最大限度
- 最小
- 和
该指标将应用于我们上面已经讨论过的单个存储桶聚合。
接下来,让我们在这里讨论指标聚合列表 –
平均数
这将给出存储桶中存在的文档值的平均值。例如 –
R1 到 R6 是桶。在 R1 中,我们有 c1、c8 和 c15。考虑c1的值是300,c8是500,c15是700,现在得到R1桶的平均值
R1 = c1 的值 + c8 的值 + c15 的值 / 3 = 300 + 500 + 700 / 3 = 500。
存储桶 R1 的平均值为 500。如果您考虑国家数据,则文档的值可能是该地区该国家/地区的面积。
数数
这将给出 Bucket 中存在的文档计数。假设您想要该地区存在的国家/地区的数量,它将是存储桶中存在的文档总数。例如,R1 将是 3、R2 = 6、R3 = 5、R4 = 2、R5 = 5 和 R6 = 4。
最大限度
这将给出存储桶中存在的文档的最大值。考虑上面的例子,如果我们在区域桶中有区域明智的国家数据。每个地区的最大值将是面积最大的国家。因此,每个地区都有一个国家,即 R1 到 R6。
在
这将给出存储桶中存在的文档的最小值。考虑上面的例子,如果我们在区域桶中有区域明智的国家数据。每个地区的最小值将是面积最小的国家。因此,每个地区都有一个国家,即 R1 到 R6。
和
这将给出存储桶中存在的文档值的总和。例如,如果您考虑上面的示例,如果我们想要该地区的总面积或国家/地区,它将是该地区现有文件的总和。
例如,要知道区域 R1 中的国家总数,它将是 3、R2 = 6、R3 = 5、R4 = 2、R5 = 5 和 R6 = 4。
如果我们的文档包含该地区的面积,则 R1 到 R6 将汇总该地区的国家/地区面积。