全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210588511.4 (22)申请日 2022.05.26 (71)申请人 浙江邦盛科技股份有限公司 地址 310012 浙江省杭州市西湖区西斗门 路3号天堂软件园D幢17层ABCD座 (72)发明人 陈伟 鲁萍 杨运平 王刚  唐迪佳  (74)专利代理 机构 杭州求是专利事务所有限公 司 33200 专利代理师 刘静 (51)Int.Cl. G06F 16/11(2019.01) G06F 16/182(2019.01) G06Q 10/10(2012.01) G06Q 40/02(2012.01) (54)发明名称 一种基于队列的银行流计算业务系统中检 查点快速持久化方法 (57)摘要 本发明公开了一种基于队列的银行流计算 业务系统中检查点快速持久化方法。 在银行流计 算业务中, 很多时候交易量会激增, 需要处理的 数据量也大大增加, 超出业务系统中节点的承 载 能力。 新节 点恢复业务系统中原节 点的工作的依 据是原节 点的计算状态记录, 业务系统采用流计 算的方式对 数据进行处理, 因此对业务系统当前 流计算状态进行快照保存并作持久化处理是必 要的。 周期性快照的处理方式有两个缺点: 造成 计算停顿、 产生大量非必须的快照信息。 针对上 述处理方法的缺陷, 该系统使用的方法是一种以 优化后快速的检查点算法为基线的轻量级快照 数据处理引擎, 高效的管理整个节点迁移系统, 便于计算状态在两个节点间的相互迁移, 且资源 占用较少, 迁移 代价较小。 权利要求书1页 说明书5页 附图2页 CN 114896200 A 2022.08.12 CN 114896200 A 1.一种基于队列的银行流计算业务系统中检查点快速持久化方法, 其特征在于, 该方 法包括如下步骤: (1)在银行流计算业务系统的操作量增加之前, 人为向业务系统中需要进行流计算状 态迁移的节点发出 快照开始的指令, 记录当前进行流计算节点的状态; (2)需要进行流计算状态迁移的节点在接收到快照的信号后, 触发检查点机制: 银行流 计算业务系统的Kafka中对应Topic的数据、 信息、 消息传输均停止, 业务系统中进行流计算 的节点开始进行自身计算状态的快照操作, 记录下Kafka中对应Topic的偏移 量值以及节 点 当前计算状态; (3)基于Kafka消息队列先进先出的规则, 将执行快照操作后的银行流计算业务系统中 节点的流计算状态相关数据记录, 按Kafka消 息队列中的顺序依次存入HDFS文件系统中进 行持久化保存; 存储 结束后, 获取HDFS文件系统中的流计算状态相关数据的地址, 将该地址 与Kafka中当前Topic的偏移量值作为数据对存入Oracle数据库中, 业务系统中的当前执行 快照操作后的节点使用指针指向Oracle 数据库中的数据对; (4)对指针做切换操作: 流计算状态迁移的目标节点使用指针指向Oracle数据库中的 数据对, 利用记录的Topic偏移量值重新开始消费Kafka中对应的Topic, 读取HDFS文件系统 中的流计算状态相关数据, 对业务系统中原节点的流计算状态进行恢复, 并取消原节点指 向Oracle 数据库中该 条数据对的指针。 2.根据权利要求1所述的一种基于队列的银行流计算业务系统中检查点快速持久化方 法, 其特征在于, 流计算状态迁移的节点开始进 行自身计算状态的快照操作具体为: 记录下 上一次快照至此时与 节点相关的数据处理的中间计算记录以及此次快照当前Topic的偏移 量值。权 利 要 求 书 1/1 页 2 CN 114896200 A 2一种基于队列的银行流计算 业务系统中检查点快速持久化 方法 技术领域 [0001]本发明属于分布式计算领域, 尤其涉及一种基于队列的银行流计算业务系统中检 查点快速持久化方法。 背景技术 [0002]在银行风控等实时性要求较高的流计算业务场景 中, 要求系统的计算性能可以满 足大量持续高强度的数据运算, 并做到低延时与高吞吐的目标。 除此之外, 在这些场景中, 除了实时性的要求以外, 对容错率的要求也很高, 较小的错误也可能会导致实际应用中很 大的问题。 [0003]银行流计算业务作为银行重要的作业场景之一, 采用流计算的架构对交易数据进 行处理。 在复杂的业务场景中, 往往涉及到交易量突然激增的状况, 此时待处理数据比正常 情况多出较多倍数, 如果仍然使用承载能力较差的节点进行 处理, 则会引起系统节点崩溃, 从而引发一系列数据无法计算、 不一致的状况, 造成无法估量的损失。 而这样的情况可以通 过对流计算状态进行快照并做持久化处理的方式避免, 即在预估此后一段时间业务系统中 会触发较多操作, 引起计算需求增大的前提下, 进 行人工操作, 对银行流计算业务系统发出 信号, 使系统中的节点记录好当前的流计算状态并进 行存储, 从而对 快照做持久化处理, 便 于之后将当前的计算状态迁移至承载能力更强的节点中。 同时, 在计算需求显著减少后, 为 了避免资源的浪费, 可以利用同样的步骤, 将业务系统的流计算状态迁移至承载能力稍弱 的节点中。 [0004]目前涉及银行流计算业务系统中节点迁移场景下的解决方案要求对操作状态进 行持续的全局快照, 这样的方式有两个严重影响系统性能的缺陷: [0005]1)每一次全局快照均 会使银行流计算业务系统中的所有计算进程停止运行, 所有 通道消息停止传输, 造成整个流计算过程的停滞, 以达到获取全局一致性状态的目的。 这样 强制打断系统运行的过程 通常会导 致系统性能降低; [0006]2)银行流计算业务系统某一时刻的全局状态是指其所有进程和通道的状态组合, 全局快照算法会将对全局状态进 行记录, 即将所有的通道传输记录以及未 处理的消息作为 快照的一部分, 使得快照过大, 包含的冗余信息过多, 导致系统中各个节点的计算性能下 降。 [0007]综上所述, 目前银行流计算业务系统在判断交易量激增后, 进行节点迁移的场景 中必须使用快照与持久化技术来进行恢复处理, 而其采用的全局快照技术会对节点的计算 性能以及实时性牺牲较大, 保证数据正确性和一致性的同时不能保证系统中节点的快速计 算能力。 因此需要一类轻量级、 对系统性能无较大影响的快照数据 处理技术应用于银行流 计算业务系统中, 保证流计算状态 能快速稳定的记录下来并持久化的保存, 以便于后续从 节点保存的状态下恢复业 务系统的计算。说 明 书 1/5 页 3 CN 114896200 A 3

.PDF文档 专利 一种基于队列的银行流计算业务系统中检查点快速持久化方法

文档预览
中文文档 9 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共9页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种基于队列的银行流计算业务系统中检查点快速持久化方法 第 1 页 专利 一种基于队列的银行流计算业务系统中检查点快速持久化方法 第 2 页 专利 一种基于队列的银行流计算业务系统中检查点快速持久化方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 06:18:18上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。