一种金融数据的异常容灾方法技术

技术编号:39590104 阅读:6 留言:0更新日期:2023-12-03 19:42
本发明专利技术涉及金融数据处理技术领域,尤其是涉及一种金融数据的异常容灾方法

【技术实现步骤摘要】
一种金融数据的异常容灾方法、系统、设备及介质


[0001]本专利技术涉及金融数据处理
,尤其是涉及一种金融数据的异常容灾方法

系统

计算机设备以及存储介质


技术介绍

[0002]金融数据,作为一种高价值的无形资产,涉及金融领域的股票

期权

期货以及每个交易日从开盘到收盘的数据记录,数据记录为毫秒级,造成该类数据历史基数

日增量都相对庞大,在面对如此海量且有价值的历史数据和日增量数据时,如何将该类数据进行存储以及在设备发生故障后,如何进行容灾,以减少该类数据的丢失,成为了该领域技术人员亟待解决的技术问题

[0003]现有的对数据的异常容灾的方法包括:采用冷备用方案,通过增加一套与主节点一样配置的设备

当主节点宕机后,启动从节点以应对异常容灾;采用热备用方案,通过 zookeeper 分布式组件,对一个固定的
zookeeper
节点进行抢占,一旦抢占成功,则注册端口对用户服务,自身识别为主节点

当主节点宕机后,其他冷备用节点将会得到
zookeeper
的通知,再次启动抢占
zookeeper
节点抢占的逻辑;或者,采用基于分布式理念的多主方案,通过 zookeeper 分布式组件,把所有服务节点注册到
zookeeper
的节点列表上,注册成功后,服务节点即打开端口对外服务,但需要额外引入一个节点网关,把用户的请求均匀的进行转发

当任意节点宕机后,网关得到
zookeeper
丢线通知,则不再向故障节点进行转发,除非所有服务节点全部当机
crash
,否则都能正常对外服务

[0004]上述中的现有技术方案存在以下缺陷:在通过采用冷备用方案对数据进行容灾时,需要冗余一套与主节点一样配置的设备,从而导致了双倍的设备成本,同时没法提高日常正常运作的并发数量;在通过采用热备用方案对数据进行容灾时,虽然实现了在节点故障的时候快速转移数据,但依然无法降低成本,且服务器由于日常处于开机的状态,电力成本有所增加;在通过采用基于分布式理念的多主方案对数据进行容灾时,则需要增加主节点的容量,并需要随时准备好其中一部分节点故障后而造成大量的用户请求涌入,从而不仅导致了主节点在负载的监控上特别敏感,而且在节点局部故障可能造成雪崩,容易酿成全局事故

同时引入了网关,增加了链路复杂性,增加了问题排查的难度

[0005]上述现有的技术方案仍存在着高成本,可用性不高的技术缺陷,因此,还有改善空间


技术实现思路

[0006]为了降低设备成本和提高集群的可用性,本申请提供一种金融数据的异常容灾方法

系统

计算机设备以及存储介质

[0007]本申请的上述专利技术目的一是通过以下技术方案得以实现的:一种金融数据的异常容灾方法,所述金融数据的异常容灾方法包括以下步骤:
基于列式存储引擎的状态后端中的数据状态,对待存储的金融数据进行数据处理,得到标准化金融数据;根据所述标准化金融数据的数据状态,对所述状态后端中的数据状态进行更新,得到当前数据状态;设定检查点的触发周期,当所述检查点被触发时,基于所述标准化金融数据和所述当前数据状态,对所述状态后端进行持久化处理并在所述持久化处理完成后生成相应的检查点数据文件;当所述列式存储引擎中的服务节点发生服务异常时,加载最新的检查点数据文件对所述服务节点进行重启恢复

[0008]通过采用上述技术方案,通过将待存储的金融数据进行处理后存储到列式存储引擎的状态后端中,更新其状态后端中对应的数据状态,并设置检查点的触发周期,对状态后端中的金融数据及其数据状态进行周期性的持久化处理,且在持久化处理完成后生成相应的检查点数据文件

当列式存储引擎中的服务节点发生服务异常时,进而可以从本机的文件系统中加载最新生成的检查点数据文件对异常的服务节点进行重启恢复,从而有效地避免了采用双设备进行容灾,使得所有设备都能投入到生产使用当中,有助于降低设备成本和降低设备冗余,提升集群的可用性和提高每个服务节点资源的利用率

同时,由于金融数据及其状态存储在列式存储引擎中,有助于在服务节点故障时实现毫秒级重启,从而有助于保证集群在高并发的金融场景下,降低集群雪崩的可能性

[0009]本申请在一较佳示例中可以进一步配置为:所述基于所述标准化金融数据和当前数据状态,对所述状态后端进行持久化处理,具体包括:基于所述标准化金融数据和所述当前数据状态,将所述状态后端中与所述标准化金融数据和所述当前数据状态相对应的线程注册到全局注册中心中;从所述全局注册中心中获取所述线程的注册顺序和依赖关系,根据所述注册顺序和所述依赖关系,将有依赖关系的线程按所述注册顺序进行排列,以形成若干条状态链;其中,所述状态链中的节点用于表示线程,两个节点之间具有方向的边用于表示线程之间的依赖关系;根据所述状态链的逻辑关系,构建得到有向无环图,其中,所述有向无环图包括列式存储引擎,全局注册中心和至少一条状态链;基于所述有向无环图,对所述状态后端进行持久化处理

[0010]通过采用上述技术方案,通过将状态后端中与更新后的金融数据及其数据状态相对应的线程注册到全局注册中心中,并根据全局注册中心中的线程的注册顺序和线程之间的依赖关系形成若干条状态链,从而构建得到有向无环图,进而可以将构建得到的有向无环图作为每一条状态链路节点之间的通知顺序,对有向无环图中的每一条状态链路中的每一个节点对应的线程进行持久化处理,有助于在有计算依赖的金融数据的场景下,使每一条链路之间互不影响,都能独立运作,从而能保证每一个层级状态的一致性,极大降低了已计算的数据被重复计算的可能性,有助于减少不必要的计算开销,提高了数据处理的效率

[0011]本申请在一较佳示例中可以进一步配置为:所述基于所述有向无环图,对所述状态后端进行持久化处理,具体包括:基于所述有向无环图,通过消息队列将所述标准化金融数据和所述当前数据状态
广播到所述有向无环图的每一条状态链中对应的根节点中;根据标准化金融数据和所述当前数据状态,并行对所述根节点下的每一个节点中的算子状态进行状态更新,并将更新后的状态发送至所述全局注册中心进行保存

[0012]通过采用上述技术方案,通过根据构建得到的有向无环图,利用消息队列将更新后的金融数据及其更新后的数据状态广播到有向无环图的每一条状态链路的根节点中,并行对每一个根节点下的每一个节点中的算子状态进行状态更新,并将更新后的状态发送至全局注册中心进行缓存

采用广播的方式将状态后端中更新后的金融数据及其更新后的数据状态广播到每一条状态链路中,有助于并行本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种金融数据的异常容灾方法,其特征在于,所述金融数据的异常容灾方法包括以下步骤:基于列式存储引擎的状态后端中的数据状态,对待存储的金融数据进行数据处理,得到标准化金融数据;根据所述标准化金融数据的数据状态,对所述状态后端中的数据状态进行更新,得到当前数据状态;设定检查点的触发周期,当所述检查点被触发时,基于所述标准化金融数据和所述当前数据状态,对所述状态后端进行持久化处理并在所述持久化处理完成后生成相应的检查点数据文件;当所述列式存储引擎中的服务节点发生服务异常时,加载最新的检查点数据文件对所述服务节点进行重启恢复
。2.
根据权利要求1所述的金融数据的异常容灾方法,其特征在于,所述基于所述标准化金融数据和当前数据状态,对所述状态后端进行持久化处理,具体包括:基于所述标准化金融数据和所述当前数据状态,将所述状态后端中与所述标准化金融数据和所述当前数据状态相对应的线程注册到全局注册中心中;从所述全局注册中心中获取所述线程的注册顺序和依赖关系,根据所述注册顺序和所述依赖关系,将有依赖关系的线程按所述注册顺序进行排列,以形成若干条状态链,其中,所述状态链中的节点用于表示线程,两个节点之间具有方向的边用于表示线程之间的依赖关系;根据所述状态链的逻辑关系,构建得到有向无环图,其中,所述有向无环图包括列式存储引擎,全局注册中心和至少一条状态链;基于所述有向无环图,对所述状态后端进行持久化处理
。3.
根据权利要求2所述的金融数据的异常容灾方法,其特征在于,所述基于所述有向无环图,对所述状态后端进行持久化处理,具体包括:基于所述有向无环图,通过消息队列将所述标准化金融数据和所述当前数据状态广播到所述有向无环图的每一条状态链中对应的根节点中;根据标准化金融数据和所述当前数据状态,并行对所述根节点下的每一个节点中的算子状态进行状态更新,并将更新后的状态发送至所述全局注册中心进行保存
。4.
根据权利要求3所述的金融数据的异常容灾方法,其特征在于,所述在所述持久化处理完成后生成相应的检查点数据文件,具体包括:当所述有向无环图中的所有节点的算子状态更新完成后,根据所述全局注册中心的全局状态生成相应的检查点数据文件;将所述检查点数据文件存储到本地文件系统中
。5.
根据权利要求1所述的金融数据的异常容灾方法,其特征在于,所述基于列式存储引擎的状态后端中的数据状态,对待存储的金融数据进行数据处理,得到标准化金融数据,具体包括:根据待存储的金融数据的数据类型,选择与所述数据类型相匹配的数据结构;将选定数据结构的金...

【专利技术属性】
技术研发人员:卢树文曾赞达罗文杰柯年军周伟杰谭彪荣
申请(专利权)人:广州经传多赢投资咨询有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1