乐趣区

关于数据库:日志服务Dashboard加速

简介:阿里云日志服务致力于为用户提供对立的可观测性平台,同时反对日志、时序以及 Trace 数据的查问存储。用户能够基于收集到的各类数据构建对立的监控以及业务大盘,从而及时发现零碎异样,感知业务趋势。然而随着收集到的数据量一直增长,特地是遇到业务峰值的时候,大盘报表展示会产生显著的提早,无奈及时查看重要数据。Scheduled SQL 反对定时剖析数据、存储聚合数据、投影与过滤数据,并将执行的剖析后果存入用户指定的日志库或者时序库中,供用户后续剖析应用。因为在聚合后数据量将大大小于之前,因此非常适合进行即时数据分析以及大盘展现。

背景

阿里云日志服务致力于为用户提供对立的可观测性平台,同时反对日志、时序以及 Trace 数据的查问存储。用户能够基于收集到的各类数据构建对立的监控以及业务大盘,从而及时发现零碎异样,感知业务趋势。然而随着收集到的数据量一直增长,特地是遇到业务峰值的时候,大盘报表展示会产生显著的提早,无奈及时查看重要数据。Scheduled SQL 反对定时剖析数据、存储聚合数据、投影与过滤数据,并将执行的剖析后果存入用户指定的日志库或者时序库中,供用户后续剖析应用。因为在聚合后数据量将大大小于之前,因此非常适合进行即时数据分析以及大盘展现。上面咱们以服务的申请成功率为例,介绍下如何基于 Scheduled SQL 减速大盘报表。

计划

如果咱们须要查看以一分钟为粒度,一小时内的申请成功率。在构建报表的时候,须要基于以后有余一分钟的局部数据配置实时报表,而针对之前已满一分钟的历史数据配置历史报表。当然,如果用户感觉一分钟的数据提早是能够承受的,就能够只配置历史报表,而不须要实时报表。如果以后工夫为 11:09:47,须要查看 10:11:00 始终到 11:09:00 的分钟级申请成功率,以及 11:09:00 到 11:09:47 的秒级胜利申请率。

日志内容

历史报表

如图所示展现了分钟级的申请成功率,能够通过配置分钟级的 ScheduledSQL 工作,计算每分钟的成功率,并通过历史报表间接展现。因为只须要间接拉取聚合后果,不须要即时计算,所以展现速度大大晋升。

实时报表

如图所示展现了秒级的申请成功率,因为只须要计算不到一分钟的数据,而不是 1 小时的数据,因此速度也失去的晋升。

配置

上面依然以申请成功率为例,向大家介绍下如何实现通过 ScheduledSQL 减速报表。

创立指标时序库

首先须要创立指标时序库存储 ScheduledSQL 的聚合数据。

创立 Scheduled SQL 工作

在存储服务申请的数据 logstore 查问界面,输出查问语句,点击查问 / 剖析按钮,在胜利执行查问剖析之后,点击创立 Scheduled SQL 按钮。

*| select  (__time__ - __time__ % 60) as time , sum(IF(status = 200, 1, 0)) * 1.0 / count(*) AS success_ratio  from log group by time  order by time

计算配置

  • 填入对应的作业名以及作业形容,写入模式抉择日志库导入时序库;
  • 指标列指抉择后果中的一列作为时序后果,此处抉择 success_ratio;
  • Labels 指抉择后果中的哪几列作为时序数据的标签,此处留空即可;
  • 工夫列指时序数据的工夫,此处抉择 time;
  • 指标库抉择刚刚创立的指标时序库;

调度配置

因为咱们须要查看分钟级别的服务申请成功率,所以调度距离还有 SQL 工夫窗口均须要以分钟为粒度。用户也能够依据本人的需要进行调整。

  • 调度距离抉择 1 分钟;
  • SQL 工夫窗口填入 @m – 1m ~ @m;
  • 点击确认创立工作

查看工作详情

在作业菜单中点击 Scheduled SQL,即可查看 Scheduled SQL 工作列表。点击刚刚创立的工作名称即可查看工作执行详情。在工作执行胜利之后,咱们就能够创立历史报表了。

配置历史报表

* | select promql_query_range('success_ratio') from metrics limit 1000

在指标时序库查问界面,执行查问语句,点击增加到仪表盘,即可创立历史报表。

配置实时报表

*| select  __time__ as time , sum(IF(status = 200, 1, 0)) * 1.0 / count(*) AS success_ratio  from log group by time  order by time

在存储服务申请的数据 logstore 查问界面,输出查问语句,并抉择工夫范畴为 1 分钟,点击增加到仪表盘创立实时报表:

总结

Scheduled SQL 为用户周期性的进行剖析数据、存储聚合数据、投影与过滤数据提供了较大的便当。用户还能够应用 Scheduled SQL 定时执行聚合工作,缩小即时查问所须要的数据量,从而减速大盘展现。

原文链接
本文为阿里云原创内容,未经容许不得转载。

退出移动版