阿里云日志服务的傻瓜式极易预测模型

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 预测服务有助于提前规划,减少资源消耗和成本。阿里云日志服务的AI预测服务简化了数学建模,仅需SQL操作即可预测未来指标,具备高准确性,并能处理远期预测。此外,通过ScheduledSQL功能,可将预测任务自动化,定时执行并保存结果。

什么时候您需要预测服务?

预测的作用是帮助提前规划,减少资源消耗,降低成本,未雨绸缪。

最简单的例子,就是天气预报。提前几天预测台风的到来,可以提前做好准备,降低损失,这样不会措手不及。提前预测是否会下雨,可以帮助管理出行计划。

在企业生产里,产品的需求是波动的,有了对产品将来一段时间的需求比较准确的预测,可以帮助合理提前安排采购计划,生产计划,方便人员排班部署。否则,会出现产品过剩、库存积压、资金不能通畅流转;或者用户想买产品而买不到,选择竞争对手的产品,浪费机会成本,降低自己的竞争力。这是因为采购或者生产都需要时间的,在物流供应链里的术语叫提前期(lead time)。如果采购、运输或者生产不需要时间,能够瞬间完成,这时候是不需要提前预测的。

在IT系统自动化领域里,用户的请求是波动的,用户的请求量决定了资源的消耗量。资源的调度也是需要时间的,比如为了实现服务的弹性伸缩,自动租用和释放虚拟计算机来满足高峰期的用户的请求和减少低谷期的资源的消耗。由于租用、启动VM,安装特定的软件包等等都需要时间,提前预测好用户的请求量,就能帮助提前规划资源调度。否则,如果资源不足,用户的请求可能没法及时地响应,超时出错,用户体检非常差。如果资源过多,造成资源浪费。有了准确的预测,就能帮助在正确的时间准备正确数量的资源。

总之,在企业生产或者计算机服务里,用户的需求是外部的,生产和资源调度等是企业内部的(Logistics),内部的可控性通常比外部的可控性要高很多,预测能够帮忙连接企业外部需求和内部的组织管理,让内部生产和组织平滑运作,降低成本,提升用户体验。


阿里云日志服务的AI预测服务

阿里云日志服务提供的预测服务,不同于其他的预测服务,阿里云日志存储提供的AI预测服务把所有数学建模的细节都包起来,对用户没有任何数学建模知识上的任何要求,只要求会点SQL,把数据表对应的列填到指定的函数参数就可以了。这样可以降低AI预测模型的使用门槛,让您的AI预测服务更容易落地。

另外,阿里云日志服务提供的预测服务不仅可以用于短期的预测,还可以比较准确地对远期的情况进行预测。

对于预测服务,我们直接用图来描述吧。我们提供了三个预测效果的可视化展示,参考下面的三个图。其中蓝色的曲线表示到目前为止的最近一段时间的历史数据,红色的曲线是模型预测出来的未来的时间点的指标数值。对三个指标数据组成的时间序列数据分别进行预测,分别对预测了接下来的1440个时间点(分钟)的指标数值。其他的大部分预测模型对近期的几个时间点预测比较准确,如果往前预测很多个时间点,预测效果就变得很差了。但是,可以看到阿里云存储日志服务在往前预测超过上千的时间点的情况下,还能保持比较高的准确度。


图1. 时间序列预测范例一


图2. 时间序列预测范例二


图3. 时间序列预测范例三


指标数据通常是以高维二维表指标数据的形式保存的,参考下面的高维指标数据。这一类的指标数据都有一个时间维度列、一个或者多个指标数值列、一个或者多个上下文维度列。

高维指标数据例子: metric_data_table

cluster server metric_name time_period metric_value
Cluster-A01 Server-01 request_count 2024-01-01 00:00:00 180
Cluster-A01 Server-01 request_count 2024-01-01 00:01:00 200
Cluster-A01 Server-01 request_count 2024-01-01 00:06:00 150
Cluster-A01 Server-01 request_count 2024-01-01 00:08:00 175
Cluster-A01 ... ... ... ...
Cluster-A01 Server-01 network_ingress 2024-01-01 00:00:00 2000000000
Cluster-A01 Server-01 network_ingress 2024-01-01 00:01:00 2500000000
Cluster-A01 Server-01 network_ingress 2024-01-01 00:02:00 1200000000
... ... ... ... ...

在这个例子的数据中,每个cluster的每个server的每个metric_name的time_period和metric_value的两个字段构成一个时间序列。可以使用阿里云日志服务中的ts_forecast(…)函数按照下面的SQL语句来对每一个cluster的每个server的每个metric_name的指标数据分别进行预测。

sql

select cluster,
    server,
    metric_name,
    ts_forecast(
      array_agg(time_period),  --时间序列中的时间数据拼成的数组
      array_agg(metric_value), --时间序列中的指标数值列拼成的数组
      '2024-01-01 00:00:00',   -- 时间序列历史数据开始的时间点(该点有历史数据)以便自动填充数据
      '2024-01-08 00:00:00',   -- 时间序列历史数据结束的时间点(第一个时间点没有历史数据)以便自动填充数据
      '2024-01-10 00:00:00',   -- 指定要预测的结束的时间点(不包含该点)
      '1 minute'               -- 指定时间序列的相邻点的时间间隔以方便自动填充数据
    ) as forecast_outcome
from metric_data_table
where time_period >= '2024-01-01 00:00:00'  -- 指定历史数据开始的时间点
  and time_period < '2024-01-08 00:00:00'   -- 指定历史数据结束的时间点
group by cluster, server, metric_name

ts_forecast(…)函数的参数规范参考这个例子的注释部分。这个例子是把2024-01-01 00:00到2024-01-07 23:59的分钟级别的数据交给ts_forecast(…)函数,让其帮忙预测从2024-01-08 00:00一直到2024-01-09 23:59的分钟级别的2880个时间点的指标的数值。

这里的每个cluster的每个server的每个metric_name的预测是相互独立的,阿里云日志服务能够自动地把预测计算分发到后台成百上千台计算机进行分布式并行计算,因此,计算速度会非常快。

另外,用户在存储数据的时候,为了节省空间,通常会把数据值为0的数据点移除。ts_forecast(…)函数能够帮我们把这些数据自动地填补回来,帮助用户在预测时减少了数据预处理的工作量。

因此,阿里云日志服务的预测服务的接口非常简单,不需要数学建模的知识,计算速度快。


阿里云日志服务中的ScheduledSQL——让AI模型计算成为自动计算服务

之前介绍的阿里云日志服务的AI计算,是以SQL的形式介绍的。这仅仅是ad hoc的分析。我们可以结合阿里云日志服务中的ScheduledSQL的功能把AI计算形成定期计算的服务。要在阿里云日志服务生成持续执行的预测计算任务,在查询分析的界面上提供了一个 “定时保存分析结果”的按钮,点击这个按钮,参考下图,之后会弹出窗口,然后在这个窗口上配置这个定时执行的AI计算就可以了。

图4. 日志服务中的定时SQL服务

ScheduledSQL任务的配置很直观。ScheduledSQL计算任务会定时把预测计算的SQL所产生的计算结果写入到另外一个日志库,如果这个目标日志库还不存在,需要先创建。另外要配置的是调度时间间隔和SQL读取的数据窗口等。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
2月前
|
存储 消息中间件 人工智能
AI大模型独角兽 MiniMax 基于阿里云数据库 SelectDB 版内核 Apache Doris 升级日志系统,PB 数据秒级查询响应
早期 MiniMax 基于 Grafana Loki 构建了日志系统,在资源消耗、写入性能及系统稳定性上都面临巨大的挑战。为此 MiniMax 开始寻找全新的日志系统方案,并基于阿里云数据库 SelectDB 版内核 Apache Doris 升级了日志系统,新系统已接入 MiniMax 内部所有业务线日志数据,数据规模为 PB 级, 整体可用性达到 99.9% 以上,10 亿级日志数据的检索速度可实现秒级响应。
AI大模型独角兽 MiniMax 基于阿里云数据库 SelectDB 版内核 Apache Doris 升级日志系统,PB 数据秒级查询响应
|
1天前
|
监控 网络协议 CDN
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
|
1月前
|
SQL 人工智能 运维
在阿里云日志服务轻松落地您的AI模型服务——让您的数据更容易产生洞见和实现价值
您有大量的数据,数据的存储和管理消耗您大量的成本,您知道这些数据隐藏着巨大的价值,但是您总觉得还没有把数据的价值变现出来,对吗?来吧,我们用一系列的案例帮您轻松落地AI模型服务,实现数据价值的变现......
146 3
|
3月前
|
监控 数据管理 关系型数据库
数据管理DMS使用问题之是否支持将操作日志导出至阿里云日志服务(SLS)
阿里云数据管理DMS提供了全面的数据管理、数据库运维、数据安全、数据迁移与同步等功能,助力企业高效、安全地进行数据库管理和运维工作。以下是DMS产品使用合集的详细介绍。
|
2月前
|
敏捷开发 前端开发 测试技术
阿里云云效产品使用合集之如何将云效构建执行过程中产生的日志通过邮件发送
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
2月前
|
敏捷开发 测试技术 持续交付
阿里云云效产品使用合集之appStack部署时没有日志是什么原因
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
5月前
|
SQL 分布式计算 监控
基于阿里云 EMR Serverless Spark 版快速搭建OSS日志分析应用
本文演示了使用 EMR Serverless Spark 产品搭建一个日志分析应用的全流程,包括数据开发和生产调度以及交互式查询等场景。
56584 7
基于阿里云 EMR Serverless Spark 版快速搭建OSS日志分析应用
|
5月前
|
存储 监控 Apache
查询提速11倍、资源节省70%,阿里云数据库内核版 Apache Doris 在网易日志和时序场景的实践
网易的灵犀办公和云信利用 Apache Doris 改进了大规模日志和时序数据处理,取代了 Elasticsearch 和 InfluxDB。Doris 实现了更低的服务器资源消耗和更高的查询性能,相比 Elasticsearch,查询速度提升至少 11 倍,存储资源节省达 70%。Doris 的列式存储、高压缩比和倒排索引等功能,优化了日志和时序数据的存储与分析,降低了存储成本并提高了查询效率。在灵犀办公和云信的实际应用中,Doris 显示出显著的性能优势,成功应对了数据增长带来的挑战。
查询提速11倍、资源节省70%,阿里云数据库内核版 Apache Doris 在网易日志和时序场景的实践
|
5月前
|
弹性计算 前端开发 Serverless
Serverless 应用引擎操作报错合集之在阿里云函数计算中,调用了FC函数但是没有执行或者报错,并且在FC函数后台也看不到调用记录日志如何解决
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
5月前
|
敏捷开发 Devops 测试技术
云效产品使用常见问题之不知道每次登录是否会记录在阿里云账号的登录日志中如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。