基于数据回放与时序追赶技术下的实时银行流计算业务系统的制作方法

文档序号:33374567发布日期:2023-03-08 03:31阅读:62来源:国知局
基于数据回放与时序追赶技术下的实时银行流计算业务系统的制作方法

1.本发明涉及银行流计算业务中的实时数据处理领域,尤其涉及一种基于数据回放与时序追赶技术下的实时银行流计算业务系统。


背景技术:

2.银行流计算业务策略会随着市场大环境和节奏,以及用户相关特征数据的变化做出动态调整,从而提高银行流计算业务策略的准确性,为银行业务的流畅性以及用户的体验进行服务。尤其是“互联网+”时代下的银行流计算业务,通常会深度挖掘用户消费行为习惯做到向客户多角度全场景银行流计算业务覆盖,让平台能够长期准确为用户提供适合的银行业务服务。然而这种场景下需要银行流计算业务系统在实时计算的同时能够应对各项频繁指标变化调整银行流计算业务策略。一方面,决策者会根据用户消费交易活跃程度调整指标维度,例如扩大时间计算范围、新增影响因子等。另一方面,在基于用户特征的银行流计算业务模式中,会随着关联关系网络的扩展挖掘到更多用户特征而新增一个指标维度的数据,或是基于最新挖掘到的某一段时间用户消费行为特征,进而需要对特定时间段的特定指标回放计算,使得这部分数据需要重新纳入计算指标。由此,在实施银行流计算业务策略时,系统需要支持指标的变动,在必要时对历史数据回放,且新指标能够在短时间内追赶当前时序提供实时银行流计算业务策略保障。
3.针对如何在海量数据的实时计算中数据重放问题,现有lambda结构和kappa架构两种架构实现“批流一体化”的技术方案。lambda架构是流式计算模式和批量计算模式共同维护大数据处理系统,由流式计算模块提供实时数据计算,由批量计算模块做准确的离线计算并矫正实时计算中可能产生的错误。这种架构缺点在于需要维护流计算和批量计算两种不同的代码逻辑增加维护成本,且批式数据在对实时计算的时序追赶上的实现困难。kappa架构则利用强大的流式计算模式提供稳定及时的算力,在发生错误时将数据流重新推送到消息队列完成重播。但需要在服务空闲阶段停止计算服务并重新回放历史数据,从而产生一段时间的计算“空窗期”,既影响了正常的流计算服务也影响系统性能,使得银行流计算业务系统效率下降。
4.因此,针对以上问题,本发明着力解决在实时银行流计算业务场景下,对频繁指标变化带来的数据回放问题,设计出一个实时银行流计算业务系统。银行流计算业务人员在需要更新指标时利用决策前端部署或指定需要回放的数据,处理系统在不影响正常流数据处理情况下处理回放数据并提供实时更新结果。


技术实现要素:

5.本发明目的在于针对现有技术的不足,提出一种基于数据回放与时序追赶技术下的实时银行流计算业务系统,
6.本发明的目的是通过以下技术方案来实现的:一种基于数据回放与时序追赶技术下的实时银行流计算业务系统,该系统包括流水预处理模块、实时流计算引擎模块和热更
新与指标视图缓存模块;
7.所述流水预处理模块用于输入用户特征数据和多场景消费流水数据,其中包括包括实时的计算数据和回放数据,在接收到输入的数据流的实时请求时会将请求数据包传入kafka消息队列,然后传至下游分流解析器对数据包加工处理并将数据拷贝成两份,一份传送至实时流计算引擎模块做指标计算,另一份传入事件日志存储池保存流水的每一步明细以备数据回放;
8.所述实时流计算引擎模块用于对流水预处理模块的数据流做分布式实时流数据处理,采用chandy-lamport算法实现一致性和容错机制;实时流计算引擎模块中所有的计算节点采用松耦合连接方式,能够实现弹性扩容,保证能够回放数据及时序追赶当前流处理数据且不会影响当前流处理速度,针对数据回放过程做到不停机持续计算服务;
9.所述热更新与指标视图缓存模块用于根据实时流计算引擎模块的指标计算完成后的情况做指标视图缓存或热更新,如果是实时流水计算则会反馈到中间态存储器进行断点状态存储,并对经常使用的实时计算指标及其所在时间段的状态形成指标视图缓存;在数据回放时则对涉及到的存储状态做热更新使其及时反馈到实时处理结果中,并对相关视图做修改。
10.进一步地,流水预处理模块中分流解析器拆解用户请求数据包并抽取用户特征数据以及消费流水数据统一为系统标准格式。
11.进一步地,回放数据在分流解析中会被标记为一种特定的id形式,保证在计算过程中能够与常规的流数据状态区分计算而不影响正常流处理过程,保证计算的高效稳定性。
12.进一步地,所述事件日志存储池,负责存储流水数据明细,为之后的数据回放阶段做储备,同时响应来自决策前端的回放请求;日志文件存储在hdfs文件系统中,按照自然时间分级存储事件分区,自然时间分区粒度可由用户设置最小粒度,并基于此实现对频繁数据所在分区的热数据缓存机制,其中频繁数据定义为平均4个最小时间单位内访问一次的数据,缓存采用redis做分布式架构缓存机制,其余数据则在hdfs分区存放;分级索引管理了磁盘与缓存,在银行流计算业务人员指定需要回放存储的历史数据时快速检索并提取。
13.进一步地,所述决策前端,银行流计算业务系统的交互界面;银行流计算业务系统将实时计算数据呈现在决策前端供银行流计算业务人员分析决策;在做指标更新时,银行流计算业务人员利用决策前端发送更新命令并指定回放用户哪个时间段、哪些指标数据做回放。
14.进一步地,所述实时流计算引擎模块由分布式集群架构负责消费kafka利用集群进行实时流数据的计算,由kafka传输到下游的数据都具有相同的数据格式,因此无论是回放数据还是常规的实时流数据对计算引擎均是透明的,保证重放过程与常规的流计算过程并行进行,并将指标及时反馈到实时银行流计算业务决策中。
15.进一步地,所述热更新与指标视图缓存模块负责在得到一段分区的计算指标后对中间状态做“断点式”存储,即离散化的存储对应的中间状态,这部分存储同样也由hdfs分级分区存储在磁盘中;按照银行流计算业务规律采用“时间序列最近邻”原则将最近一段时间数据的计算指标和关联指标在内存中形成视图缓存加速回放过程时序追赶进度。
16.本发明的有益效果:
17.(1)本发明公开的基于数据回放与时序追赶技术下的实时银行流计算业务系统,针对银行流计算业务决策过程的特点,对因指标调整产生的流数据回放问题提供技术支持,保障系统能够及时根据市场环境变化和新增的用户特征数据精准决策。
18.(2)本发明的使回放与常规流的实时计算并行执行成为可能,银行流计算业务人员利用决策前端根据反馈的实时结果发送回放命令,在不停机的情况下系统持续提供计算服务,并采用热更新机制对计算完成的指标及时更新保证回放时序及时追赶流计算进度并将结果反馈在实时银行流计算业务决策中。
19.(3)本发明的设计充分利用分布式集群中庞大的存储空间驱动在频繁指标更新操作下的做数据回放和时序追赶,并基于时空热数据分布和行为规律的做聚合指标视图缓存,更加贴合实时银行流计算业务场景。
附图说明
20.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动前提下,还可以根据这些附图获得其他附图。
21.图1为实时银行流计算业务系统的三层结构示意图;
22.图2为指标更新时数据回放流程图。
具体实施方式
23.以下结合附图对本发明具体实施方式作进一步详细说明。
24.本发明提供的一种基于数据回放与时序追赶技术下的实时银行流计算业务系统,当银行流计算业务人员实时捕获到用户新的消费特征或场景时新增调整计算指标需要对历史流水数据做回放,从而深度挖掘分析用户服务需求和特征以提供准确服务。系统通过实现提供作业指令的决策前端、历史数据存储的存储池、弹性扩容的计算引擎和提供中间态信息和热更新的存储器保障数据回放和时序追赶的实时性和可用性。
25.本发明提供的系统可以对客户需求、风控级别、收益状况、消费特征等多维度全场景分析,并根据用户实时银行消费行为特性动态调整指标,利用数据回放深度分析挖掘历史数据特征信息,及时贴合用户消费方面的服务需求。如图1所示,通过定义实现“流水预处理”、“实时流计算引擎”、“热更新与指标视图缓存”三个层次解决在实时数据流计算过程中对银行流计算业务场景计算指标调整的情况下依然能够精准快速地对进行回放计算,利用统一的数据格式使回放数据与正常流水数据一致,在不影响正常数据流计算的情况下即时反馈回放数据,并追赶当前流处理进度同时对已处理数据做热更新。银行流计算业务系统能够敏捷地针对市场环境变化和挖掘的用户实时关联特征对指标的更新做响应,在银行流计算业务人员通过决策前端发出回放指令后,充分发挥流计算实时响应优点,结合充足的存储空间减少回放成本并加快时序追赶进度,达到“流式计算与批量计算融合”的目的,为及时快速地提供银行流计算业务决策赋能。
26.流水预处理模块实现流程包括以下几点:
27.银行流计算业务系统的流水预处理模块的输入有两部分:一部分来自客户端的常
规计算数据流,另一部分则是由银行流计算业务人员从决策前端发出的数据回放指令和对应的回放数据。客户端常规计算流是已经预定好的各项指标和状态,因此可以直接由分流解析器做处理。回放数据是根据决策前端的指令生成,一种情况是银行流计算业务人员会根据用户消费行为情况动态调整指标,如扩大计算的时间范围,新增消费总额、单次消费金额以及消费频率等决策指标,这部分数据已经存储在日志存储池中,因此只需银行流计算业务人员指定回放范围即可。另一种情况是银行流计算业务人员在对用户关联信息做挖掘后,在已进行的时序中新增指标维度和数据,并对这部分数据做回放,如新增用户关联特征、新增消费场景的考察等,这时银行流计算业务人员会将指标维度的描述和对应回放数据由决策前端加载到银行流计算业务系统中的流水预处理模块做回放计算。
28.由客户端进入流水预处理模块的流数据首先由分流解析器按照统一格式解析,并提取出时间戳、计算指标、操作类型等关键信息。操作类型分为add和reback,对应常规数据流计算和回放数据。常规数据流会拷贝两份分别交付给kafka消息队列消费以及日志储存池进行存储,然后传至下游分流解析器对数据包加工处理并将数据一份传送至实时流计算引擎做指标计算,另一份传入事件日志存储池保存流水的每一步明细以备数据回放。reback回放数据来源于事件日志存储池,对其id加入特定的标签,如在id初始位置直接加入reback字符串,通过该字符串区分常规进行的数据流与回放数据,随后直接进入kafka进行消费。保证在计算过程中能够与常规的流数据状态区分计算而不影响正常流处理过程,保证计算的高效稳定性。
29.事件日志存储池负责存储流水数据明细,为之后的数据回放阶段做储备,同时响应来自决策前端的回放请求,日志文件存储在hdfs文件系统中,按照自然时间分级存储事件分区,自然时间分区粒度可由用户设置最小粒度,在接收到add数据时按照分级索引策略存储到对应位置,例如以三级索引为例,首先划分最小的时间单位,以及更大一级的时间单位和最大一级的时间单位,根据时间戳顺序依次将数据填入对应划分的时间块中,按照分级索引原则将数据存放在对应的时间分区中,当一个分区被认为是热数据分区时则会将分级索引指向对应缓存,缓存采用redis做分布式架构缓存机制,其余数据则在hdfs分区存放。分级索引管理了磁盘与缓存,在银行流计算业务人员指定需要回放存储的历史数据时快速检索并提取。当存储池接收到来自决策前端的指标调整时,若有提供新增的指标数据则会先存储这部分数据,随后抽取需要回放的时间片并在中间态存储器中查询回放时刻的状态,最终交付给分流解析器做下一步处理。
30.所述决策前端,是银行流计算业务人员与实时银行流计算业务系统交互桥梁。银行流计算业务系统将实时计算数据呈现在决策前端供银行流计算业务人员分析决策。在做指标更新时,银行流计算业务人员利用决策前端发送更新命令并指定回放用户哪个时间段、哪些指标数据做回放。
31.实时流计算引擎模块用于对实时数据的多维度计算服务,具体如下:
32.所述实时流计算引擎由分布式集群架构负责消费kafka利用集群进行实时海量流数据的计算,由kafka传输到下游的数据都具有相同的数据格式,由于统一的数据形式,实时流计算引擎模块对回放数据和常规的流数据均以透明的方式分布式实时流数据处理,保证重放过程与常规的流计算过程并行进行,并将指标及时反馈到实时银行流计算业务决策中,采用chandy-lamport算法实现一致性和容错机制;因此在进行数据回放时对集群而言
仅仅是数据流更加密集从而增加了系统的计算负载和吞吐量,计算引擎中所有的计算节点采用松耦合连接方式,在集群节点充裕的情况下可以设置在进行数据回放过程中动态调整集群节点数量做到弹性扩容。在一致性和容错保障上,利用事件自然时间分区的特点,即时序事件对应固定的时间戳,随着时间的分区自然对事件进行了分区,利用快照机制定义一次对分区的快照,快照属性随中间态信息一并存入中间态存储器中。保证回放数据及时追赶当前流处理时序且不会影响当前流处理速度,针对数据回放过程做到不停机持续计算服务。
33.指标的热更新和视图缓存模块实现具体如下:
34.对指标的实时计算完成后利用如果是实时流水计算则会反馈到中间态存储器进行断点状态存储,并对经常使用的指标及其所在时间段的状态形成指标视图缓存。在数据回放时则对涉及到的存储状态做热更新使其及时反馈到实时处理结果中,并对相关视图做修改。
35.常规的流计算通过实时流计算引擎模块完成运算后会随着快照分区一并交付给聚合计算引擎以断点的方式按照分区保存在hdfs中,建立起分级索引,按照银行流计算业务规律采用“时间序列最近邻”原则将最近一段时间数据的计算指标和关联指标在内存中形成视图缓存加速回放过程时序追赶进度。聚合计算是基于先前针对事件的自然时间分区做的计算,以不同时间跨度提供各种粒度的中间态,且满足对数据的分级存储要求,在进行数据回放时,由中间态存储器提供回放点的状态以及需要的中间状态给日志存储池做回放。
36.与事件日志存储池不同的是,这种分级采用数据库中的计算下推思想,数据库中的计算下推即利用计算节点多元索引聚合的能力,将部分sql计算下推到多元索引中进行,通过聚合算子避免了全表运算,提高了计算效率。此处则需要利用存储层聚合计算引擎建立起基于局部分区的聚合结果,减少数据回放过程中不必要的计算并向当前回放提供上下文信息。数据回放的结果会及时覆盖先前结果,并将处理状态反馈给决策前端供银行流计算业务人员参考决策,提供指标的热更新机制。
37.上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1