时序预测
日志服务提供时序预测功能,用于对时序数据进行自动化、智能化的预测。您可以根据预测结果判断时序数据未来的走势,提前感知系统或者业务关键指标的状态。本文介绍时序预测的背景信息、功能、调度与执行场景、使用建议等信息。
背景信息
服务在运行过程中会产生各种各样的时序数据,记录了服务的各种指标随时间的变化情况。时序数据的监控分析被广泛地应用在系统监控和故障定位中。对于时序数据的监控分析一般分为以下两种方式。
分析已经产生的时序数据,检测其中可能的异常。您可通过智能巡检功能实现。更多信息,请参见智能巡检。
该方式主要应用于在服务出现异常后及时的发现问题和定位问题。
预测将来产生的时序数据,判断时序数据未来的走势。您可通过时序预测功能实现。
该方式主要应用于对服务关键指标的异常走势进行提前预警。
时序预测应用场景如下:
预测服务关键指标(例如QPS、在线人数)的未来一段时间走势,当预测指标未来的数值超过配置的阈值时产生告警,便于运维人员在异常产生前对潜在问题进行排查。
预测系统各种指标(例如CPU使用率、磁盘利用率)未来的波动情况,可以使用指标的未来波动趋势对系统进行更可靠地调整。例如在系统CPU使用率过高时对系统进行扩容。
时序数据未来的走势受各种因素的影响,包括各种突发、不稳定情况和预测算法内部缺陷等。因此预测结果无法保证100%的准确。预测结果可作为决策的参考依据之一,而不是唯一依据。
功能介绍
时序预测作业通过SQL方式抽取或聚合时序指标,按照调度规则定时拉取数据输入预测模型,将预测结果写入到目标日志库(internal-ml-log)中,并在仪表盘中展示预测结果,帮助您快速查看时序预测的结果。
基本概念
日志服务时序预测涉及的基本概念如下表所示。
术语 | 说明 |
作业 | 一个时序预测任务对应一个作业,包括数据特征、模型参数等信息。 |
实例 | 一个时序预测作业按照作业配置生成执行实例。每一个实例针对作业配置定时拉取数据,运行算法模型,分发预测结果。关于不同操作对实例的调度与执行的影响,请参见调度和执行场景。
|
实例ID | 执行实例的唯一标识。 |
创建时间 | 实例创建的时间。一般是按照您配置的作业规则生成,在补运行或追赶延迟时会立即生成实例。 |
执行时间 | 实例开始执行的时间。如果重试作业,则表示最后一次开始执行的时间。 |
结束时间 | 实例执行结束的时间。如果重试任务,则表示最后一次执行结束的时间。 |
执行状态 | 实例的执行状态。取值:
|
数据特征配置 | 数据特征配置中包含时间项、实体项和特征项等参数。更多信息,请参见数据特征配置参数说明。 |
算法配置 | 算法配置中包含周期配置、假日配置、预测配置(待测序列长度、置信度、采样数、预测频率和观测时长)等参数。更多信息,请参见算法配置参数说明。 |
预测结果 | 通过内置仪表盘展示预测结果。 |
调度和执行场景
一个作业可生成一个或多个实例,无论是正常被调度还是您触发异常实例重试的情况,同时只有一个实例处于运行中,不存在多个实例并发执行的情况。
主要的调度与执行场景如下表所示。
场景 | 说明 |
场景一:从当前时间开始执行时序预测作业 | 从当前时间发起作业,预测作业根据配置的观测长度读取历史数据,然后预测未来一段时间的时间序列。 |
场景二:从某个历史时间点开始执行时序预测作业 | 在指定的时间点创建时序预测作业后,按照作业规则对历史数据进行处理,算法模型会快速消费历史数据,并逐渐赶上当前时间。 |
场景三:修改调度配置 | 修改调度配置后,下一个实例按照新配置生成。算法模型会记忆当前消费的时间位置,进而对新来的数据继续巡检。 |
场景四:重试失败的实例 | 如果实例执行失败(例如权限不足、源库不存在、目标库不存在、配置不合法等),系统支持自动重试。若您的状态一直显示启动中,可能是配置失败。错误日志会发送到您的internal-etl-log下,您可以检查下配置并重新发起。调度执行完成后,系统会根据实际执行情况变更实例状态为成功或失败。 |
使用建议
建议您在使用时序预测时,根据业务情况明确具体的监控项,从而实现高效的数据转化与预测。具体说明如下:
上传数据到Logstore时,明确数据格式和字段的具体含义,确定观测时间间隔,从而完成巡检作业的快速配置。
掌握所监控对象的时序数据变化情况,了解其稳定性和周期性,从而完成算法参数的合理配置。
按整时(例如整秒、整分钟、整小时)对齐预测作业时间窗口。