CloudWatch 统计数据定义 - Amazon CloudWatch

CloudWatch 统计数据定义

统计数据是指定时间段内的指标数据汇总。当您绘制某个指标的图表或检索其统计数据时,您可以指定时间(例如 5 分钟),用于计算每个统计值。例如,如果时间段为 5 分钟,则总数是在此五分钟内所收集的所有样本值的总数,而最小值是此五分钟内收集的最低值。

CloudWatch 支持指标的以下统计数据。

  • 样本数是在该时间段内的数据点数。

  • 总数是在该时间段内收集的所有数据点值的总数。

  • 平均值是指定时间段内 Sum/SampleCount 的值。

  • 最小值是指定时间段内的最小观察值。

  • 最大值是指定时间段内的最大观察值。

  • 百分位数 (p) 表示某个值在数据集中的相对位置。例如,p95 指第 95 个百分位数,表示该时间段内 95% 的数据低于此值,5% 的数据高于此值。百分位数可帮助您更好地了解指标数据的分布情况。

  • 切尾均值 (TM) 是两个指定边界之间的所有值的均值。计算此均值时,两个边界以外的值均被忽略。您可以将边界定义为 0 到 100 之间的一个或两个数字,最多 10 位小数。这些数字可以是绝对值或百分比。例如,tm90 计算的是去掉 10% 具有最高值的数据点后的平均值。TM(2%:98%) 计算的是去掉 2% 最小数据点和 2% 最大数据点后的平均值。TM(150:1000) 计算的是去掉所有小于或等于 150 或大于 1000 的数据点后的平均值。

  • 四分位均值 (IQM)四分位间距的切尾均值,或中间 50% 的值。它等同于 TM(25%:75%)

  • 缩尾均值 (WM) 类似于切尾均值。但是,计算缩尾均值时,不会忽略边界以外的值,而是将它们视为等于相应边界边缘的值。经过此规范化处理之后再计算平均值。您可以将边界定义为 0 到 100 之间的一个或两个数字,最多 10 位小数。例如,wm98 将计算平均值,同时将 2% 的最高值视为等于第 98 个百分位数的值。WM(10%:90%) 将计算平均值,同时将 10% 的最大数据点视为 90% 的边界值,并将 10% 的最小数据点视为 10% 的边界值。

  • 百分等级 (PR) 是满足某一固定阈值的值的百分比。例如,PR(:300) 返回的是值等于或小于 300 的数据点的百分比。PR(100:2000) 返回的是值介于 100 到 2000 之间的数据点的百分比。

    百分位数排名的下限不含本数,上限包含本数。

  • 切尾计数 (TC) 指所选切尾均值统计数据范围内的数据点数。例如,tc90 返回的是不包括处于 10% 最高值区间内的任何数据点的数据点数。TC(0.005:0.030) 返回的是值介于 0.005(不含)和 0.030(含)之间的数据点数。

  • 切尾总数 (TS) 指所选切尾均值统计数据范围内数据点的值的总数。它等同于(切尾均值)*(切尾计数)。例如,ts90 返回的是不包括处于 10% 最高值区间内的任何数据点的数据点总数。TS(80%:) 返回的是不包括值处于 80% 最低值区间内的任何数据点的值的总数。

注意

对于“切尾均值”、“切尾计数”、“切尾总数”和“缩尾均值”,如果将两个边界定义为固定值而不是百分比,则计算时将包括等于较高边界的值,但不包括等于较低边界的值。

语法

对于“切尾均值”、“切尾计数”、“切尾总数”和“缩尾均值”,以下语法规则适用:

  • 使用括号和带有百分号的一个或两个数字来定义边界,以用作数据集中位于指定的两个百分位数之间的值。例如,TM(10%:90%) 将仅使用位于第 10 和第 90 个百分位数之间的值。TM(:95%) 将使用处于数据集最低值区间到第 95 个百分位数之间的值,忽略 5% 具有最高值的数据点。

  • 使用括号和无百分号的一个或两个数字来定义边界,以用作数据集中位于指定的确切值之间的值。例如,TC(80:500) 将仅使用介于 80(不含)和 500(含)之间的值。TC(:0.5) 将仅使用等于或小于 0.5 的值。

  • 使用一个数字(无括号)以百分比形式来计算,计算过程忽略高于指定百分位数的数据点。例如,tm99 将计算均值,同时忽略 1% 具有最高值的数据点。其与 TM(:99%) 的计算结果相同。

  • 在指定范围时,切尾均值、切尾计数、切尾总数和缩尾均值均可以使用大写字母缩写表示,例如 TM(5%:95%)TM(100:200)TM(:95%)。仅指定一个数字时,只能使用小写字母缩写,例如 tm99

统计数据使用案例

  • 切尾均值对于样本规模较大的指标(例如网页延迟)最实用。例如,tm99 会忽略可能由网络问题或人为错误导致的极高异常值,以便为典型请求的平均延迟提供更准确的数据。同样,TM(10%:) 会忽略 10% 的最低延迟值,例如由缓存命中导致的延迟值。此外,TM(10%:99%) 将排除这两种类型的异常值。我们建议您使用切尾均值来监测延迟。

  • 每当您使用切尾均值时,最好随时关注切尾计数,以确保在切尾均值计算中使用的值的数量足以具有统计意义。

  • 百分等级使您能够将值归入范围的“条柱”中,而且您可以使用它来手动创建直方图。为此,请将值归入各种不同的条柱,例如 PR(:1)PR(1:5)PR(5:10)PR(10:)。以条形图的方式可视化呈现其中每个条柱,这样就得到一个直方图。

    百分位数排名的下限不含本数,上限包含本数。

百分位数与切尾均值

百分位数(如 p99)和切尾均值(如 tm99)衡量的是相似但并不完全相同的值。p99tm99 二者都会忽略 1% 具有最高值的数据点,这些数据点被视为异常值。在此之后,p99 为剩余 99% 值的最大值,而 tm99 为剩余 99% 的值的平均值。如果您正在研究 Web 请求的延迟,p99 告诉您的是最糟糕的客户体验,而 tm99 告诉您的是平均客户体验,二者都会忽略异常值。

如果您正寻求优化客户体验,那么切尾均值是适用于监测的理想延迟统计数据。

对使用百分位数、切尾均值和其他一些统计数据的要求

CloudWatch 需要原始数据点来计算以下统计数据:

  • 百分位数

  • 切尾均值

  • 四分位均值

  • 缩尾均值

  • 切尾总数

  • 切尾计数

  • 百分等级

如果您不使用原始数据而是改用统计数据集发布数据,只有满足以下条件之一,才能检索此数据的这些类型统计数据:

  • 统计数据集的 SampleCount 值为 1,且最小值、最大值和总和均相等。

  • 最小值和最大值相等,总和等于最小值乘以 SampleCount。

以下 AWS 服务包含支持这些类型统计数据的指标。

  • API Gateway

  • Application Load Balancer

  • Amazon EC2

  • Elastic Load Balancing

  • Kinesis

  • Amazon RDS

此外,当任何指标值为负数时,指标的这些类型统计数据将不可用。