SLS机器学习最佳实践:时序相似性分析

本文涉及的产品
对象存储 OSS,OSS 加速器 50 GB 1个月
简介: 阿里云日志服务平台提供了针对DevOps和AIOps相关的一系列工具,涵盖了时序指标数据的异常检测、时序聚类、时序预测等相关方法。为降低使用的门槛,我们将算法整合到SQL中,让用户以最底的成本完成相关的配置。今天为您介绍时序聚类和时序相关性分析的最佳实践使用指南。

一、使用场景

今天给大家介绍几个好用的时序相似性分析函数,具体涉及到的函数包含:时序的聚类,相似性计算等。主要解决的场景如下:

  • 当您有N台机器的监控指标数据时,想快速知道在某一段时间机器的CPU形态的大致呈现哪些形态,便于用户更好的了解当前系统的状态;
  • 当您指定某一台机器的某指标曲线时,您想知道哪些机器的相同指标与当前指定的曲线更加相似;
  • 当您人工输入一条时序曲线(网站整体的访问延迟曲线),您想知道是哪个服务的访问延时的变化规律同当前指定的曲线十分相似,便于缩小问题的排查;
    上述场景问题均可以归纳成,时序聚类(按照形态、按照数值),时序相似性判别这两个问题。

二、函数介绍

SLS平台提供了两个函数供大家使用,具体的文档地址可以参考下:https://help.aliyun.com/document_detail/93235.html

ts_density_cluster
ts_hierarchical_cluster

其中第一个函数主要是针对曲线的形态进为标准进行聚类,其底层的核心聚类算法是DBSCAN密度聚类;第二个函数主要针对针对原始曲线的相似性进行聚类,更多的会考虑曲线之间的欧式距离等因素,其底层的核心聚类算法是层次聚类;具体的原理介绍可以参考之前的文章,大家也可以去网上查阅相关资料自行阅读。接下来主要给大家介绍下在SLS中该怎么使用这些函数。

三、案例实战

3.1 数据探索

  • query-01
* | select DISTINCT index_name, machine, region from log
  • query-02
* | select count(1) as num from (select DISTINCT index_name, machine, region from log)
  • query-03
* and index_name : load | 
select 
  __time__, 
  value, 
  concat(
    region, '#', machine, '#', index_name
  ) as ins 
from log order by __time__ 
limit 10000
  • query-04
* 
and index_name : load | 
select 
  date_trunc('minute', __time__) as time, 
  region, 
  avg(value) as value 
from log group by time, region order by time limit 1000

通过query01我们可以得到对应的如下信息,这里表明我们我们当前的logstore中含有多少不同的曲线,每个曲线的标识是什么,为了更好的观察这1300多条线,我们可以使用流图来观察,一次性在一个图表中绘制出来对浏览器资源消耗也比较大,及时能绘制出来,也很难从这里得到有效的信息。我们使用query04来看下在少数曲线的情况下的可视化情况。在来对比下query03可视化的效果。
image.png

image.png

image.png

3.2 聚类实战

通过上述的观察,我们能否将若干条曲线进行聚类呢,将较为相似的曲线划分到一类中,在进行可视化分析,进而打到降维分析的目的。使用如下SQL可以将N条线快速的聚类,在这里我们选择的指标是机器的负载(load)还是比较关注不同机器的水位的变化情况,因此我们可以选择ts_hierarchical_cluster这个函数,我们得到一张分面图,为了更加直观的可视化这个图表,您可以将其存储在Dashboard中更加直观。

* 
and index_name : load | 
select 
  ts_hierarchical_cluster(time, value, ins) 
from 
  (
    select 
      __time__ as time, 
      value, 
      concat(
        region, '#', machine, '#', index_name
      ) as ins 
    from 
      log
  )

image.png

3.2 相似性查找

通过如下SQL,我们可以获得到跟 aysls-pub-cn-beijing-k8s#192.168.7.254:9100#load 这条指标曲线相似的机器的列表,并通过如下的流图进行可视化,观察我们的结果。在相似性函数中含有一些相似性判别的方法供大家选择:shape、manhattan、euclidean

* 
and index_name : load | 
select 
  cast(
    cast(ts_value as double) as bigint
  ) as ts_value, 
  cast(ds_value as double) as ds_value, 
  name 
from 
  (
    select 
      tt[1][1] as name, 
      tt[2] as ts, 
      tt[3] as ds 
    from 
      (
        select 
          ts_similar_instance(
            time, value, ins, 'aysls-pub-cn-beijing-k8s#192.168.7.254:9100#load', 
            10,
            'euclidean'
          ) as res 
        from 
          (
            select 
              __time__ as time, 
              value, 
              concat(
                region, '#', machine, '#', index_name
              ) as ins 
            from 
              log
          )
      ), 
      unnest(res) as t(tt)
  ), 
  unnest(ts) as t(ts_value), 
  unnest(ds) as t(ds_value) 
order by 
  ts_value 
limit 
  10000

image.png

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
8月前
|
Prometheus 监控 Java
日志收集和Spring 微服务监控的最佳实践
在微服务架构中,日志记录与监控对系统稳定性、问题排查和性能优化至关重要。本文介绍了在 Spring 微服务中实现高效日志记录与监控的最佳实践,涵盖日志级别选择、结构化日志、集中记录、服务ID跟踪、上下文信息添加、日志轮转,以及使用 Spring Boot Actuator、Micrometer、Prometheus、Grafana、ELK 堆栈等工具进行监控与可视化。通过这些方法,可提升系统的可观测性与运维效率。
759 1
日志收集和Spring 微服务监控的最佳实践
|
8月前
|
负载均衡 监控 安全
5 个 IIS 日志记录最佳实践
IIS日志记录是监控Web服务器性能与安全的关键。本文介绍启用日志、应用池配置、负载均衡、敏感数据防护、日志集中管理及保留策略等五大最佳实践,助力高效分析与合规审计。
444 1
|
监控 容灾 算法
阿里云 SLS 多云日志接入最佳实践:链路、成本与高可用性优化
本文探讨了如何高效、经济且可靠地将海外应用与基础设施日志统一采集至阿里云日志服务(SLS),解决全球化业务扩展中的关键挑战。重点介绍了高性能日志采集Agent(iLogtail/LoongCollector)在海外场景的应用,推荐使用LoongCollector以获得更优的稳定性和网络容错能力。同时分析了多种网络接入方案,包括公网直连、全球加速优化、阿里云内网及专线/CEN/VPN接入等,并提供了成本优化策略和多目标发送配置指导,帮助企业构建稳定、低成本、高可用的全球日志系统。
1181 55
|
监控 安全 BI
优化 Apache 日志记录的 5 个最佳实践
Apache 日志记录对于维护系统运行状况和网络安全至关重要,其核心包括访问日志与错误日志的管理。通过制定合理的日志策略,如选择合适的日志格式、利用条件日志减少冗余、优化日志级别、使用取证模块提升安全性及实施日志轮换,可有效提高日志可用性并降低系统负担。此外,借助 Eventlog Analyzer 等专业工具,能够实现日志的高效收集、可视化分析与威胁检测,从而精准定位安全隐患、评估服务器性能,并满足合规需求,为强化网络安全提供有力支持。
325 0
优化 Apache 日志记录的 5 个最佳实践
|
机器学习/深度学习 人工智能 自然语言处理
云上一键部署通义千问 QwQ-32B 模型,阿里云 PAI 最佳实践
3月6日阿里云发布并开源了全新推理模型通义千问 QwQ-32B,在一系列权威基准测试中,千问QwQ-32B模型表现异常出色,几乎完全超越了OpenAI-o1-mini,性能比肩Deepseek-R1,且部署成本大幅降低。并集成了与智能体 Agent 相关的能力,够在使用工具的同时进行批判性思考,并根据环境反馈调整推理过程。阿里云人工智能平台 PAI-Model Gallery 现已经支持一键部署 QwQ-32B,本实践带您部署体验专属 QwQ-32B模型服务。
|
机器学习/深度学习 人工智能 自然语言处理
云上一键部署 DeepSeek-V3 模型,阿里云 PAI-Model Gallery 最佳实践
本文介绍了如何在阿里云 PAI 平台上一键部署 DeepSeek-V3 模型,通过这一过程,用户能够轻松地利用 DeepSeek-V3 模型进行实时交互和 API 推理,从而加速 AI 应用的开发和部署。
|
机器学习/深度学习 数据采集 分布式计算
大数据分析中的机器学习基础:从原理到实践
大数据分析中的机器学习基础:从原理到实践
756 3
|
机器学习/深度学习 数据可视化 大数据
机器学习与大数据分析的结合:智能决策的新引擎
机器学习与大数据分析的结合:智能决策的新引擎
794 15
|
机器学习/深度学习 数据采集 运维
机器学习在运维中的实时分析应用:新时代的智能运维
机器学习在运维中的实时分析应用:新时代的智能运维
466 12

相关产品

  • 日志服务