This invention discloses a realization method of cumulative time window, first through the sliding window algorithm to carry on the statistical analysis of the cumulative transaction data information, and then determine the time window position change range, form or step size to select appropriate addition or subtraction algorithm engine engine algorithm, finally complete the statistical analysis of transaction data and obtain the cumulative value the value and query in Redis Cluster database or Hbase database. The invention solves the problem of multi scene combination, SQL query algorithm is not flexible, query throughput is not high and the query size is not precise enough, to achieve a rapid response to obtain the time window cumulative value, improve the accuracy of.
【技术实现步骤摘要】
本专利技术涉及互联网信息监测
,尤其涉及一种时间窗口累计的实现方法。
技术介绍
在支付业务中,随着业务发展,风险控制愈加依赖于通过多维度、多场景在指定时间段内交易发生的次数、量等各种累计值来做相关的逻辑运算,以及通过建模、同比、环比的方式判断具体的交易风险。累计值以时间窗口维度计算,包括定时区间和滑动式扫描区间;在滑动窗口中,时间窗口不是向前跳,而是每过一个单位时间向前滑动一次,滑动的时间长度是自定义设置的,主要涉及三个参数:位置交换范围、窗体大小和步长,这三个参数关系到算法的效率和有效性,主要通过对算法的复杂度进行评估和分析。算法复杂度的分析主要进行时间复杂度的分析,插入的订单数据经过MQ队列排队等待,插入时间点也可能不是时间窗口上最大的时间点,因此需要对冲突数据进行修补。现有方案是通过Oracle关系数据库,根据业务的不同,按照年、月、日等各种指定时间形式通过where子句,累计不同条件场景下的统计值。通过SQL拼接的形式查询,但是:1)由于各种场景的统计值存储以对应的月、日来创建,导致需求变更不可避免地要去改动表结构和查询条件,通过SUM函数实现的SQL需要开发和二次拼接,也不支持滑动时间窗口自定义的累计值统计业务;2)大量的SQL查询消耗DB的资源,数据库不支持分布式部署,随着业务的发展,在高并发、大容量的情况下,数据库的查询瓶颈越来越明显;3)由于关系数据库的局限性,所有对接的时间窗口都必须事先按照常用的年、月、日等固定步长确定,不能自定义不同粒度步长的时间窗口;4)在多维度、多场景下做累计业务统计,会造成额外的人员支出。
技术实现思路
本专 ...
【技术保护点】
一种时间窗口累计的实现方法,其特征在于,包括以下步骤:S1:实时获取交易数据信息并加以存储;S2:通过滑动时间窗口累计算法对所述交易数据信息进行统计分析;S3:判断时间窗口的位置交换范围、窗体或步长的大小,如果是大则执行步骤S4,否则执行步骤S5;S4:选择减法引擎算法计算Redis Cluster数据库中的数据累计值和获取值,如果Redis Cluster数据库异常则执行步骤S6,若否,则结束;S5:选择加法引擎算法计算Redis Cluster数据库中的数据累计值和获取值,如果Redis Cluster数据库异常则执行步骤S7,若否,则结束;S6:选择减法引擎算法计算Hbase数据库中的数据累计值和获取值;S7:选择加法引擎算法计算Hbase数据库中的数据累计值和获取值。
【技术特征摘要】
1.一种时间窗口累计的实现方法,其特征在于,包括以下步骤:S1:实时获取交易数据信息并加以存储;S2:通过滑动时间窗口累计算法对所述交易数据信息进行统计分析;S3:判断时间窗口的位置交换范围、窗体或步长的大小,如果是大则执行步骤S4,否则执行步骤S5;S4:选择减法引擎算法计算Redis Cluster数据库中的数据累计值和获取值,如果Redis Cluster数据库异常则执行步骤S6,若否,则结束;S5:选择加法引擎算法计算Redis Cluster数据库中的数据累计值和获取值,如果Redis Cluster数据库异常则执行步骤S7,若否,则结束;S6:选择减法引擎算法计算Hbase数据库中的数据累计值和获取值;S7:选择加法引擎算法计算Hbase数据库中的数据累计值和获取值。2.根据权利要求1所述的时间窗口累计的实现方法,其特征在于,所述步骤S4中计算数据累计值的步骤包括:S41:查看需要插入的分数列上是否有值;S42:删除同分数维度下的数据并返回最大成员;S43:修复插入时间后面的数据;S44:插入累计数据;S45:删除无效时间数据;S46:设置Map的过期时间。3.根据权利要求1所述的时间窗口累计的实现方法,其特征在于,所述步骤S4中计算数据获取值的步骤包括:S47:获取有效时间范围内的最大值;S48:获取无效时间范围内的最小值;S49:用最大值减去最小值获取时间窗口之间有效的累计数据。4.根据权利要求1所述的时间窗口累计的实现方法,其特征在于,所述步骤S6中计算数据累计值的步骤包括:S61:查询需要插入的时间列,并返回当前列上的值;S62:修复有效时间数;S63:存储...
【专利技术属性】
技术研发人员:周伟,杨文武,吴文坚,赵明露,
申请(专利权)人:广州唯品会网络技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。