一种对时序数据进行时间窗口滑动的逆序处理方法与流程

文档序号:12063818阅读:715来源:国知局
一种对时序数据进行时间窗口滑动的逆序处理方法与流程

本发明是一种时序数据处理技术,根据时序数据中的时间戳进行逆排序,将指定区间的时序运算结果存于将来某个对应时间戳上,从而提供时间窗口平行滑动处理的能力。主要适用于时序数据处理技术等数据分析领域,可大量应用于业务检测、金融风控等业务场景。



背景技术:

在数据分析领域,经常需要涉及时序数据的处理,其中对于时间窗口滑动处理的方案很多,大多都是将某个维度上面的数据进行过滤保留原始数据,从而进行adhoc查询的方案。adhoc查询非常灵活,但是一旦维度过大(数据过于密集),性能低下。

假设有个账号具备如下交易序列,⑦⑤⑥②排布如图1所示。假设以当前时间作为基准,我们需要统计该账号过去6小时的累计交易金额。按照adhoc处理的形式,需要根据当前时间(18:00:00),计算统计区间的起点(18-6=12:00:00),找到12点到18点的所有数据,然后对这些数据进行求和计算得到335这个答案。每次系统时间向前滑动,就需要重复上述计算步骤,整个计算过程复杂且效率低下,唯一的优势就是计算比较灵活。



技术实现要素:

本发明的目的在于针对现有技术的不足,提供一种对时序数据进行时间窗口滑动的逆序处理方法。

本发明的目的是通过以下技术方案来实现的:一种对时序数据进行时间窗口滑动的逆序处理方法,对于一个时序数据集合,时间戳集合T={t1,t2,…tn},对应的数值集合V={v1,v2,…vn};对该时序数据序列进行时间窗口为W毫秒的平滑移动处理,同时进行F算子操作;具体处理步骤为:

(1)时序数据逆序:对原始时序数据T和V进行逆序排序,得到n,n-1,…1这样的序列。

(2)时间窗口移动:对逆序后的时间戳集合T进行W窗口移动得到新的时间戳序列FT={ftn,ftn-1,…ft1},其中fti=ti+W。

(3)进行算子操作:给出一个集合FV={fvn,fvn-1,…fv1},那么fvi=F(vn,vn-1,…vn-i),其中1<=i<=n。

(4)查询移动窗口:根据指定时间戳CT(可以是系统时间),找到离CT最新的将来时fti,那么fvi就是该时刻CT对应的基于时间窗口W平滑移动的进行F算子的计算结果。

进一步地,所述F算子操作为计数、求和、平均、最大或最小等。

本发明的有益效果是:本发明通过对时序数据进行逆向排序,然后将预先计算好的结果存储在将来的某个时间,通过这样一种存储结构,可以根据指定的时间戳,快速得到对应的计算结果,因为计算结果是已经提前计算好的;另外,由于存储结果也是同样的数字,内存耗费没有增长,存储效率很高;最为重要的是,这部分结果是跟着系统时间移动而不断变化的,能够达到时间窗口平滑移动的目的。

附图说明

图1为一个实施例的账号交易序列示意图;

图2为本发明方法计算后的结果展示图。

具体实施方式

下面结合附图和具体实施例对本发明作进一步详细说明。

假设我们有一个时序数据集合,时间戳集合T={t1,t2,…tn},对应的数值集合V={v1,v2,…vn};并假设我们需要对该时序数据序列进行时间窗口为W毫秒的平滑移动处理,同时进行F算子操作(F可以是计数、求和、平均、最大、最小等)。那么本发明对应的处理流程可以表述为:

(1)时序数据逆序:对原始时序数据T和V进行逆序排序,得到n,n-1,…1这样的序列。(2)时间窗口移动:对逆序后的时间戳集合T进行W窗口移动得到新的时间戳序列FT={ftn,ftn-1,…ft1},其中fti=ti+W。

(3)进行算子操作:给出一个集合FV={fvn,fvn-1,…fv1},那么fvi=F(vn,vn-1,…vn-i),其中1<=i<=n。F对应的算子操作可以支持计数、求和、平均、最大、最小等各种算子。

(4)查询移动窗口:根据指定时间戳CT(可以是系统时间),找到离CT最新的将来时fti,那么fvi就是该时刻CT对应的基于时间窗口W平滑移动的进行F算子的计算结果。

实施例

假设以当前时间作为基准,我们需要统计该账号过去6小时的累计交易金额,本发明计算后的结果展现形式如图2所示。

本发明通过对原始时间序列数据进行倒排序,逆向计算任意时间戳过去6小时的累计统计结果,并将这部分结果存放到对应的将来时时间戳,从而我们得到了一个计算结果时间序列:335、323、316、302、297、272、249、182、171、169、71、56。表示当前时间如果在335对应时间戳之前,结果就是335;当前时间如果在335和323之间,计算结果为323;以此类推,直到当前时间移动到56以后,表示结果为0。

通过这样一种存储结构,我们可以根据指定的时间戳,快速得到对应的计算结果,因为计算结果是已经提前计算好的;另外,由于存储结果也是同样的数字,其实内存耗费也没有增长,存储效率很高;当然,最为重要的是,这部分结果是跟着系统时间移动而不断变化的,能够达到时间窗口平滑移动的目的。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1