holt_winters() 是 Prometheus 查询语言 PromQL 中的一个预测函数,用于执行 Holt-Winters 指数平滑预测算法。这个算法是一种时间序列预测方法,适用于具有趋势和季节性的数据。Holt-Winters 方法通过平滑历史数据来预测未来的值。
使用 holt_winters() 函数时,你需要根据时间序列数据的特性调整平滑因子、趋势因子和季节性因子,以便获得最佳的预测结果。
holt_winters 根据 v 中的范围生成时间序列的平滑值。趋势因子 tf 越高,数据中的趋势就越受重视,sf 和 tf 都必须介于 0 和 1 之间,holt_winters 只能用于测量仪。
请注意,holt_winters() 函数返回的预测值是基于历史数据的,并且可能会受到数据质量、季节性变化、趋势变化等多种因素的影响。因此,在使用这个预测函数时,应该谨慎评估预测结果的准确性和适用性。
holt_winters() 函数的基本语法如下:
holt_winters(v range-vector, sf scalar, tf scalar)
参数说明:
v range-vector:表示时间序列数据的向量,包含时间戳和对应的值。
sf scalar:表示平滑因子,用于控制数据的平滑程度。
tf scalar:表示趋势因子,用于控制数据的趋势。
以下是一个简单的例子,假设我们有一个名为 prometheus_http_requests_total 的时间序列,我们想要预测未来的 HTTP 请求总数趋势:
holt_winters(prometheus_http_requests_total[1h], 0.1, 0.1)
上述查询将返回一个新的时间序列,执行查询,如下图: