本申请提供了一种计算时间分布的方法及装置,所述方法包括:将采样数据中的时间戳转换成相对于预定起始时刻的时间偏移量;将所述时间偏移量处理为聚合周期的长度的整数倍;根据处理后的时间偏移量确定所述采样数据所在的聚合周期。本申请能够快速的计算出时间分布。
Method and device for calculating time distribution
The invention provides a method and a device for calculating the time distribution, the method comprises the following steps: sampling time stamp data into predetermined time offset relative to the start time; the time offset processing for polymerization cycle length integer times; according to the time offset after determining the sampling the polymerization cycle data. The application can quickly calculate the time distribution.
【技术实现步骤摘要】
一种计算时间分布的方法及装置
本专利技术涉及云监控领域,尤其涉及一种计算时间分布的方法及装置。
技术介绍
云监控的数据形成业务结构大体上可以分为三个阶段:采集、分析、入库。如图1所示,多个agent(代理)在海量的服务器上采集多种指标,将实时采集的采样数据通过gateway(网关)上报给Analysis(分析)模块,由分析模块进行处理后入库。采样数据中包括不同指标的指标样本;指标样本是在某一个时间点采集的相应指标的数值,虽然不能完全代表全面的数据,但是可以作为一种趋势展现给用户,达到监控的目标。比如采集的指标样本包括CPU数值和内存数值时,agent上报的采样数据如表一所示。表一、采样数据分析模块根据采样数据得到时间序列,进行实际时间分布的计算;所述时间序列是指将同一指标的数值按其发生的时间先后顺序排列而成的数列。时间序列分析的主要目的是根据已有的历史数据对未来进行预测;时间分布是指将在监控系统中的时间序列分布在不同的聚会周期中;计算时间分布是指根据时间戳计算出采样数据所在的聚合周期,其中,所在的聚合周期可以采用具体的时刻表示,即:时间分布的计算结果为用于表示某一个聚合周期的具体时刻,比如对于时间戳为2015年12月18日15点45分23秒125毫秒的采样数据,如果聚合周期的长度为一分钟,则时间分布的计算结果为2015年12月18日15点45分,该具体时刻“2015年12月18日15点45分”表示的是长度为一分钟的一个聚合周期:从“2015年12月18日15点45分整”到“2015年12月18日15点45分59秒999毫秒”。分别用于表示相邻的两个聚合周期的两个具体时刻之间为固定时间间隔,该固定时间间隔即聚合周期的长度;所述聚合周期的长度可以根据用户的期望设置。如果用户期望看到每分钟的指标波动,则固定时间间隔为1分钟,得到的每个聚合周期的指标样本如表二所示。表二、固定时间间隔为1分钟时每个聚合周期的指标样本编号聚合周期服务器CPU数值内存数值12015年12月18日15点45分I-hz-01-cm23%1230M22015年12月18日15点46分I-hz-01-cm18%1330M32015年12月18日15点47分I-hz-01-cm12%1250M42015年12月18日15点48分I-hz-01-cm11%1330M52015年12月18日15点49分I-hz-01-cm08%1340M62015年12月18日15点50分I-hz-01-cm99%1380M72015年12月18日15点51分I-hz-01-cm12%803M82015年12月18日15点52分I-hz-01-cm23%1530M如果用户期望看到每5分钟的指标波动,则固定时间间隔为5分钟,得到的每个聚合周期的指标样本如表三所示。表三、固定时间间隔为5分钟时每个聚合周期的指标样本如果用户期望看到天的指标波动,则固定时间间隔为一天(24小时),得到的每个聚合周期的指标样本如表四所示。表四、固定时间间隔为一天时每个聚合周期的指标样本编号聚合周期服务器CPU数值内存数值12015年12月18日I-hz-01-cm23%1230M22015年12月19日I-hz-01-cm25%1310M32015年12月20日I-hz-01-cm19%990M42015年12月21日I-hz-01-cm27%1510M如上表所示,用户在不同场景下期望看到不同粒度的采样数据波动展示时,可以通过设置相应的聚合周期实现。计算时间分布即根据时间戳计算采样数据属于哪个聚合周期的过程。现有技术中,在java技术范畴内计算时间分布的方式如下,使用Date类型对象记录时间戳,这个时间戳是指标样本采集实际发生的时间,一般都是一个散列时间,比如4分13秒,15分01秒等。而用户期望看到的是每1分钟的数据、每几分钟的数据、每几小时的数据等。因此分析模块需要将时间戳根据固定时间间隔进行时间分布的计算。目前比较常用的计算方法的代码如下:Datedata=newDate();Calendarc1=Calendar.getInstance();c1.setTime(newDate());c1.set(Calendar.SECOND,0);data=c1.getTime();//data数据已经被抹去了秒数据这种计算方法的大概流程如下:首先将时间戳切分成年、月、日、小时、分钟、秒、毫秒等几个数值。一般是采用split()将一个字符串分割成字符串数组,比如将时间戳“2015年12月18日15点45分23秒125毫秒”切分为“2015年”、“12月”、“18日”、“15点”、“45分”、“23秒”和“125毫秒”。然后根据时间分布的要求(即固定时间间隔的长度),将上述几个数值中的一个或几个分别进行重置。比如固定时间间隔为1分钟时,将毫秒和秒的数值置为0。接下来将上述几个数值重新合并为时间戳,比如合并后为“2015年12月18日15点45分0秒0毫秒”。最后根据时间戳获取时间分布。上述方法的缺点包括:使用split将时间戳切分比较费时,也比较浪费内存,需要记录多个整型数据,每一个整型数据将会占有8个字节。合并过程也比较浪费时间。而计算时间分布是在Analysis阶段最重要的一个环节,该环节一旦阻塞,将会让整个链路的吞吐降低,导致数据延时或者数据丢失。另外,需要用户分别设计不同固定时间间隔对应的算法。比如五分钟间隔,需要用户先将秒级数据清零,然后计算分钟级别数据需要重置为多少后再进行重置。对于不同的固定时间间隔无法通用一个算法。
技术实现思路
本申请提供了一种计算时间分布的方法及装置,可以解决如何快速的计算出时间分布的问题。本申请采用如下技术方案。一种计算时间分布的方法,包括:将采样数据中的时间戳转换成相对于预定起始时刻的时间偏移量;将所述时间偏移量处理为聚合周期的长度的整数倍;根据处理后的时间偏移量确定所述采样数据所在的聚合周期。可选地,所述相对于预定起始时刻的时间偏移量的数据类型为长整形;所述聚合周期的长度的单位为毫秒。可选地,所述根据处理后的时间偏移量确定所述采样数据所在的聚合周期包括:将处理后的时间偏移量作为长整形数据转换成对应的时刻,所述时刻用于表示所述采样数据所在聚合周期。可选地,所述将所述时间偏移量处理为聚合周期的长度的整数倍包括:使用所述时间偏移量除以所述聚合周期的长度,将得到的商取整后乘以所述时间偏移量,得到的乘积为所述处理后的时间偏移量。可选地,所述取整为向下取整。一种计算时间分布的装置,包括:第一转换模块,用于将采样数据中的时间戳转换成相对于预定起始时刻的时间偏移量;计算模块,用于将所述时间偏移量处理为聚合周期的长度的整数倍;第二转换模块,用于根据处理后的时间偏移量确定所述采样数据所在的聚合周期。可选地,所述相对于预定起始时刻的时间偏移量的数据类型为长整形;所述聚合周期的长度的单位为毫秒。可选地,所述第二转换模块根据处理后的时间偏移量确定所述采样数据所在的聚合周期包括:所述第二转换模块将处理后的时间偏移量作为长整形数据转换成对应的时刻,所述时刻用于表示所述采样数据所在聚合周期。可选地,所述计算模块将所述时间偏移量处理为聚合周期的长度的整数倍包括:所述计算本文档来自技高网...
【技术保护点】
一种计算时间分布的方法,包括:将采样数据中的时间戳转换成相对于预定起始时刻的时间偏移量;将所述时间偏移量处理为聚合周期的长度的整数倍;根据处理后的时间偏移量确定所述采样数据所在的聚合周期。
【技术特征摘要】
1.一种计算时间分布的方法,包括:将采样数据中的时间戳转换成相对于预定起始时刻的时间偏移量;将所述时间偏移量处理为聚合周期的长度的整数倍;根据处理后的时间偏移量确定所述采样数据所在的聚合周期。2.如权利要求1所述的方法,其特征在于:所述相对于预定起始时刻的时间偏移量的数据类型为长整形;所述聚合周期的长度的单位为毫秒。3.如权利要求2所述的方法,其特征在于,所述根据处理后的时间偏移量确定所述采样数据所在的聚合周期包括:将处理后的时间偏移量作为长整形数据转换成对应的时刻,所述时刻用于表示所述采样数据所在聚合周期。4.如权利要求2所述的方法,其特征在于,所述将所述时间偏移量处理为聚合周期的长度的整数倍包括:使用所述时间偏移量除以所述聚合周期的长度,将得到的商取整后乘以所述时间偏移量,得到的乘积为所述处理后的时间偏移量。5.如权利要求4所述的方法,其特征在于:所述取整为向下取整。6.一种计算时间分布的装置,其特征在于,包括:第一转换模...
【专利技术属性】
技术研发人员:刘峰,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛,KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。