`
猫耳呀
  • 浏览: 167732 次
社区版块
存档分类
最新评论

ARMS: 原来实时计算可以这么简单!

 
阅读更多

摘要: 业务实时监控服务( ARMS)是一款阿里云应用性能管理(APM)类监控产品。借助本产品,您可以基于前端、应用、业务自定义等服务,迅速便捷地为企业构建秒级响应的业务监控能力。

业务实时监控服务( ARMS)是一款阿里云应用性能管理(APM)类监控产品。借助本产品,您可以基于前端、应用、业务自定义等服务,迅速便捷地为企业构建秒级响应的业务监控能力。
其中自定义监控作为该产品的时序计算和存储的基础,整合和封装了数据收集,消息通道,实时计算,时序存储,以及在线报表等多种先进互联网技术组件。
本文主要介绍一下 ARMS 自定义监控中聚合逻辑以及时序查询设计。

离线计算方式

以一个sql查询为例:
select count(col1), sum(col2) as sum from data_table
where filterCols
group by groupByCols
order by sum desc/asc
limit limitNum

其中第一部分可以抽象为:聚合(sum, count)、过滤(where)和分组(group by)。
第二部分则是在第一部分的计算结果上进行排序(order by)和截断(limit)。

实时计算方式

随着用户数据量的增加,离线的计算会越来越慢,难以满足用户在某些场景下的实时性要求,因此很多解决方案中引入了实时计算。
与离线计算相比,实时计算有两点区别:

  • 需要用户给定时间字段。ARMS支持两种时间,event time(用户切分的时间)和processing time(ARMS切分中的_sysTime)。
  • 数据处理分为了预计算和后计算两个阶段。预计算阶段计算原始数据,并存储预计算的结果,使得数据量大大减少。当用户需要实时查询数据的时候,可以基于预计算的结果,通过后计算方式,得到最终结果。

预计算

select count(col1), sum(col2) as sum from origin_data
where filterCols
group by groupByCols and timeInterval

其中col1、col2、filterCols、groupByCols、time 都是日志切分后的字段,timeInterval是流数据切分所用的时间间隔,如一分钟、五分钟等。

后计算

select count(col1'), sum(clo2') from 预计算结果
where filterCols'
group by groupByCols' and timeInterval'
TimeRange (minTime, maxTime)

其中col1'、clo2'、filterCols'、groupByCols' 中的字段都是来自预计算之后的结果。
timeInterval' 是用户查看每个数据点的时间间隔,TimeRange (minTime, maxTime)是查询数据的时间区间。

ARMS 解决方案

针对上面分析,ARMS 通过两个步骤解决了用户的预计算和后计算的问题。
预计算
在ARMS 自定义监控中,在任务配置的第三个步骤(第一个步骤是配置日志路径,第二个步骤是配置切分),用户需要配置数据集(数据的预计算逻辑),如下图

其中指标是数据列的聚合计算、过滤是filter,维度是group by的条件。在ARMS中,维度分位两种,一种是平铺维度,一种是下钻维度。
平铺维度是指将聚合结果按照所有的维度直接存储,比如按照col1、col2、col3字段进行group by,存储结果就是一个包含所有col1、col2、col3字段的全集。
下钻维度是对平铺维度的一种优化,比如对于机器基础监控数据,在问题发生时,用户往往需要从机房维度先发现问题,然后下钻到该机房的应用分组,最终定位到某台机器IP的问题。这个时候,可以针对平铺维度中的机房、分组、IP建立单向索引,即机房中的分组索引,分组中的IP索引,以加快查询速度。这就是下钻维度的作用,类似还有省、市、区的例子。
以三个维度col1, col2, col3进行group by为例,平铺维度和下钻维度的不同如下:
平铺维度在时序数据库中存储的是如下三个维度的聚合结果:

col1, col2, col3, 聚合指标

聚合指标里面包含sum、count、max等聚合的结果
下钻维度在时序数据库中存储的是逐级展开的三个维度的聚合结果,相当于一个以空间换时间的解决方案。

col1,聚合指标
col1, col2,聚合指标
col1, col2, col3,聚合指标

后计算

在ARMS中,预计算的数据存储在时序数据库中,后计算则是基于时序存储的查询时计算。
与OpenTSDB类似,ARMS提供了 过滤、聚合、降精度和汇总等多种计算方式。如下图所示:

  • 在维度中选择为“全部”表示会根据该维度再次group by,选择“固定值”表示会在该维度进行过滤。
  • 在指标中,支持选择单个指标或者指标的组合计算。
  • TopN则对应到order by desc 和 limit。
  • 时间粒度可以用户选择,也可以由系统根据用户选择的时间区间确定。目前提供的有一分钟、五分钟、十五分钟、一小时、一天等。

相对OpenTSDB,ARMS还提供了数据集与数据集的 JOIN 操作、占比操作,如果两个数据集包含同样的维度,则数据集可以JOIN,然后基于JOIN后的数据做指标复合计算。

总结

ARMS 自定义监控将用户实际使用中的日志采集、切分、实时聚合、存储,以及在线报表整合为统一的解决方案,方便了用户的使用,欢迎大家尝试。

原文链接

分享到:
评论

相关推荐

    VB程序求ARMS数

    在VB(Visual Basic)编程环境中,我们可以编写一个简单的程序来计算ARMS数。下面将详细介绍ARMS数的计算原理以及如何用VB实现这一功能。 首先,ARMS数主要用于量化信号的噪声水平。在信号处理中,我们常常关注信号...

    ARMS3C44B0-uclinux实验指导书

    ### ARMS3C44B0-uclinux实验指导书知识点总结 #### 实验1:熟悉uClinux开发环境 **知识点概括:** 1. **实验目的:** - 掌握uClinux的基本开发环境。 - 熟悉uClinux下的编程流程。 2. **预备知识:** - Linux...

    链路追踪(Tracing)其实很简单——全量存储?No!按需存储?YES!1

    边缘计算是指在靠近数据源的边缘节点进行数据处理,它可以减轻网络带宽压力,减少全局数据处理的延迟,同时筛选出更具价值的数据。在Tracing领域,边缘计算常用于用户进程内的数据过滤和分析。通过在用户集群或专有...

    Aliware云产品最新介绍.pptx

    - **ARMS(Application Real-Time Monitoring Service)**:业务实时监控服务,提供全面的应用性能监控。 - **DRDS(Distributed Relational Database Service)**:分布式关系型数据库服务,解决大数据量下的...

    springboot

    6. **数据处理**:`arms-incomeAndPayment`、`arms-tally` 可能是涉及财务或数据计算的服务,Spring Boot 结合 Spring Data JPA 或 MyBatis 可以方便地处理数据库操作。通过使用 ORM 框架,可以简化数据库访问代码,...

    桶形移位器的Verilog HDL设计

    例如,MIPS32的桶形移位可能需要处理32位数据,并且要兼容其指令系统,而8位桶形移位器可能用于更简单的应用或者嵌入式系统,ARMS32则需要遵循ARM架构的规则。 在实验05中,我们可能会看到针对这些不同设计的源代码...

    Aliware助力工业制造2025.pptx

    \n\n3) **数据实时处理**:阿里云的ARMS提供了实时业务流处理功能,能够实现毫秒级计算速度,进行大盘展现或实时报警。例如,在智能制造工厂改造案例中,系统的处理能力提升了700倍,极大地提高了客户满意度,并增加...

    南京向上电流互感器OPCTAL16说明

    - **适用电流范围**:0.01~120Arms(50~60Hz,RL≤100Ω) - **最大电流**:200Arm连续(RL≤50Ω) - **适用频率范围**:50Hz~200KHz - **输入与输出变比**:1/3000 - **精度等级**:0.5级 - **二次阻抗**:265Ω±...

    TMC2225-SA.pdf

    集成的功率MOSFET可以处理高达1.4ARMS的电机电流,并且具备过流保护和诊断特性,保证了可靠的操作。用户可以通过简单易用的 UART 接口来访问更多的调整和控制选项。特定应用的调整可以存储在 OTP(一次编程)存储器...

    matlab: 基于改进的差分进化算法JADE算法优化单目标

    在IT领域,优化问题是一个广泛研究的议题,特别是在科学计算、工程设计以及机器学习中。本文将深入探讨基于MATLAB实现的改进差分进化算法——JADE(Adaptive Differential Evolution)算法,及其在解决单目标优化...

    HTIC-C21真有效值电流传感器说明书.pdf

    电参数Ipn 额定测量电流值(Arms) 100 -1000IP 对应测量电流范围(Arms) 120% * Ipn Ioc 过载能力 3000Arms Isn 额定输出电流(mAdc) DC 0-5V(TRMS) X 精度(Ta = 25℃) 1% EL 线性度误差 0.5% Vc 电源电压 Pn ±5% ...

    技术指标2PPT学习教案.pptx

    8. EMV(简易移动值):由Richard W Arms Jr.发明,基于等量图原理,测量股票流动性的容易程度,帮助识别市场压力和阻力。 这些技术指标各有特点,适用于不同的市场环境和投资策略。理解并熟练运用这些指标,能增强...

    用zemax设计准直透镜

    7. **优化过程**:利用ZEMAX的自动优化功能进行迭代计算,观察评价函数的变化直至收敛。 8. **结果评估**: - 通过3D/2D外型图直观地展示设计结果; - 评估发散角是否满足≤3mrad的要求; - 对设计进行公差分析,...

    通达信指标公式源码 RSIEMVDPO参数共振金叉选股公式 成功率85%.pdf

    MID计算的是每日价格范围相对于前一日的价格范围的百分比变化,然后乘以成交量。EMV是MID的移动平均,而MAEMV是EMV的四周期移动平均。当EMV上穿MAEMV时,可能预示着市场趋势的转变,即条件D:CROSS(EMV, MAEMV)。 ...

    电子测量中的STPM01:有窜改检测的可编程单相电表IC

    专用的DSP单元能够实时计算有功功率、无功功率、视在功率、RMS电压和电流以及线路频率,采用ISKRAEMECO的专利算法。 为了控制、配置和校准,STPM01配备了SPI接口,并拥有56位OTP区块,用于校准电压和电流传感器,...

    柏艾斯HTIC-C21真有效值电流传感器说明书.pdf

    HTIC-C21系列传感器基于霍尔效应和开环测量原理,通过TRMS计算方法将被测交流或直流电流转换成与原边电流成比例的直流电流或电压输出。传感器原副边之间具有高度绝缘特性,保证测量精度和设备安全。产品特点包括高...

    2019年实验幼儿园小班月考试题附解析.doc

    简单加减法的题目不仅可以帮助孩子们掌握基础的运算规则,而且对于培养孩子的计算能力也大有裨益。 英语部分的考核则旨在通过单词归类和礼貌用语的题目让孩子们学习英语词汇,特别是在身体部位名称方面的学习,并且...

Global site tag (gtag.js) - Google Analytics