数据同步方法和装置、电子设备和计算机可读介质与流程

文档序号:36383143发布日期:2023-12-14 18:32阅读:22来源:国知局
数据同步方法和装置与流程

本发明涉及计算机,尤其涉及一种数据同步方法和装置、电子设备和计算机可读介质。


背景技术:

1、在金融科技行业,采用监管探针、外部感知、信息共享与报送等方式实时采集分析金融创新风险情况,对潜在风险的提前探测和综合评估,打造更加安全、便捷、透明的金融体系。监管探针是一种新型的金融监管工具,其核心思想是分析网络流量中的目标报文来抓取机构内交易数据,增强监管的自动化、智能化和准确性。现有监管探针方案在当网络不可靠时会丢失tcp(传输层协议)数据包,且通过旁路抓取网络流量的方式无法保证数据包的重新传输能被探针全部抓取到,所以有一定概率会丢失数据。

2、在实现本发明过程中,发明人发现现有技术中至少存在如下问题:

3、会存在丢失数据的情况,且无法保证抓取的数据不被篡改,无法保证可追溯性,探针的可用性、容灾性、扩展能力均较差。


技术实现思路

1、有鉴于此,本发明实施例提供一种数据同步方法和装置,能够主动且准实时地获取机构内部的交易数据,避免丢失数据,保证抓取的数据不可篡改且可追溯,为监管机构进行数据分析提供可靠的数据来源,且探针高可用,容灾和扩展能力强。

2、为实现上述目的,根据本发明实施例的一个方面,提供了一种数据同步方法。

3、一种数据同步方法,包括:利用数据抓取组件抓取第一系统的交易数据,并将所述第一系统的交易数据推送到所述第一系统的消息中间件集群;对所述第一系统的交易数据进行哈希处理,得到所述第一系统的交易数据的上链存证数据,将所述第一系统的交易数据的上链存证数据存储到区块链网络,以由第二系统从所述区块链网络获取所述第一系统的交易数据的上链存证数据;在收到所述第二系统根据所述第一系统的交易数据的上链存证数据发出的数据同步请求后,通过所述第一系统的消息中间件集群,将所述第一系统的交易数据同步至所述第二系统。

4、可选地,所述利用数据抓取组件抓取第一系统的交易数据,包括:利用部署在所述第一系统的网关应用层的探针程序,抓取所述第一系统的交易数据。

5、可选地,所述利用部署在所述第一系统的网关应用层的探针程序,抓取所述第一系统的交易数据,包括:从所述第一系统的应用的网卡将流量复制到物理机、虚拟机或容器中,复制的所述流量包括所述第一系统的交易数据,所述应用用于所述第一系统执行交易以得到所述第一系统的交易数据。

6、可选地,所述利用数据抓取组件抓取第一系统的交易数据,包括:利用所述第一系统的至少两个探针服务器中部署的探针程序,抓取所述第一系统的交易数据,所述至少两个探针服务器设置在所述第一系统的同一互联网数据中心中,且采用相同的探针程序配置。

7、可选地,所述利用数据抓取组件抓取第一系统的交易数据,包括:利用所述第一系统的应用所在的物理机、虚机或容器中的探针程序,抓取所述第一系统的交易数据,所述应用用于所述第一系统执行交易以得到所述第一系统的交易数据。

8、可选地,在所述探针程序部署在docker容器(容器技术的一种产品实现)中的情况下,在所述容器运行所述探针程序的镜像文件,以抓取所述第一系统的交易数据,镜像文件包括基于所述docker容器的busybox(一个集成了linux命令和工具的软件工具箱)制作的基础镜像。

9、可选地,所述利用数据抓取组件抓取第一系统的交易数据,并将所述第一系统的交易数据推送到所述第一系统的消息中间件集群,包括:通过所述探针程序监控所述第一系统交易时的报文数据,并从所述报文数据中提取出指定地址和协议的目标报文数据,将所述目标报文数据解析为csv(逗号分隔值)格式的交易数据,将所述csv格式的交易数据推送到所述第一系统的消息中间件集群。

10、可选地,所述将所述目标报文数据解析为csv格式的交易数据,包括:将提取出的所述目标报文数据存放到共享内存,以从所述共享内存读取所述目标报文数据并进行报文重组,得到组合后的tcp数据流,根据http协议对所述tcp数据流进行数据解析,得到json格式数据,从所述json格式数据提取出预设业务的交易数据,对所述预设业务的交易数据重新编排为所述csv格式,得到所述csv格式的交易数据。

11、可选地,提取出的所述目标报文数据存放到多个共享内存中,通过多进程方式执行所述报文重组、所述数据解析和所述编排的操作。

12、可选地,所述将所述第一系统的交易数据推送到所述第一系统的消息中间件集群,包括:将所述第一系统的交易数据划分批次,将得到的批次的交易数据和对应的批次信息推送到所述第一系统的消息中间件集群。

13、可选地,所述将所述第一系统的交易数据划分批次,将得到的批次的交易数据和对应的批次信息推送到所述第一系统的消息中间件集群,包括:将所述第一系统的交易数据逐条或批量发送到所述第一系统的上链服务,由所述上链服务确定所述第一系统的交易数据的批次信息,并将所述第一系统的交易数据和对应的批次信息保存到缓存,在缓存中的交易数据数量达到第一数量后,将所述第一数量的交易数据和对应的批次信息作为一条记录推送到所述第一系统的消息中间件集群。

14、可选地,对所述第一系统的交易数据进行哈希处理,得到所述第一系统的交易数据的上链存证数据,将所述第一系统的交易数据的上链存证数据存储到区块链网络,包括:对所述得到的批次的交易数据进行哈希处理,得到所述得到的批次的交易数据的哈希值;将所述得到的批次的交易数据的哈希值和对应的批次信息存储到所述区块链网络,以由所述第二系统根据所述哈希值和对应的批次信息发出所述数据同步请求。

15、可选地,所述第一系统的消息中间件集群包括多个;所述将所述第一系统的交易数据推送到所述第一系统的消息中间件集群,包括:将所述第一系统的交易数据推送到所述第一系统的当前存活的各消息中间件集群。

16、根据本发明实施例的另一方面,提供了一种数据同步方法。

17、一种数据同步方法,包括:从区块链网络获取第一系统的交易数据的上链存证数据,所述上链存证数据是所述第一系统对抓取的交易数据进行哈希处理得到的;根据所述第一系统的交易数据的上链存证数据,确定待同步到第二系统的所述第一系统的交易数据;通过所述第二系统的消息中间件集群,将待同步的所述第一系统的交易数据同步到所述第二系统。

18、可选地,所述通过所述第二系统的消息中间件集群,将待同步的所述第一系统的交易数据同步到所述第二系统,包括:通过所述第二系统的消息中间件集群,将待同步的所述第一系统的交易数据分发到多个数据采集组件进行解析,并将解析得到的各类数据存储到所述第二系统中对应的存储位置。

19、根据本发明实施例的又一方面,提供了一种数据同步装置。

20、一种数据同步装置,包括:交易数据抓取模块,用于利用数据抓取组件抓取第一系统的交易数据,并将所述第一系统的交易数据推送到所述第一系统的消息中间件集群;上链存证模块,用于对所述第一系统的交易数据进行哈希处理,得到所述第一系统的交易数据的上链存证数据,将所述第一系统的交易数据的上链存证数据存储到区块链网络,以由第二系统从所述区块链网络获取所述第一系统的交易数据的上链存证数据;交易数据同步模块,用于在收到所述第二系统根据所述第一系统的交易数据的上链存证数据发出的数据同步请求后,通过所述第一系统的消息中间件集群,将所述第一系统的交易数据同步至所述第二系统。

21、可选地,所述交易数据抓取模块还用于:利用部署在所述第一系统的网关应用层的探针程序,抓取所述第一系统的交易数据。

22、可选地,所述交易数据抓取模块还用于:从所述第一系统的应用的网卡将流量复制到物理机、虚拟机或容器中,复制的所述流量包括所述第一系统的交易数据,所述应用用于所述第一系统执行交易以得到所述第一系统的交易数据。

23、可选地,所述交易数据抓取模块还用于:利用所述第一系统的至少两个探针服务器中部署的探针程序,抓取所述第一系统的交易数据,所述至少两个探针服务器设置在所述第一系统的同一互联网数据中心中,且采用相同的探针程序配置。

24、可选地,所述交易数据抓取模块还用于:利用所述第一系统的应用所在的物理机、虚机或容器中的探针程序,抓取所述第一系统的交易数据,所述应用用于所述第一系统执行交易以得到所述第一系统的交易数据。

25、可选地,所述交易数据抓取模块还用于:在所述探针程序部署在docker容器(容器技术的一种产品实现)中的情况下,在所述容器运行所述探针程序的镜像文件,以抓取所述第一系统的交易数据,镜像文件包括基于所述docker容器的busybox制作的基础镜像。

26、可选地,所述交易数据抓取模块还用于:通过所述探针程序监控所述第一系统交易时的报文数据,并从所述报文数据中提取出指定地址和协议的目标报文数据,将所述目标报文数据解析为csv格式的交易数据,将所述csv格式的交易数据推送到所述第一系统的消息中间件集群。

27、可选地,所述交易数据抓取模块包括解析子模块,用于:将提取出的所述目标报文数据存放到共享内存,以从所述共享内存读取所述目标报文数据并进行报文重组,得到组合后的tcp(传输层协议)数据流,根据http协议对所述tcp数据流进行数据解析,得到json格式数据,从所述json(一种数据表示格式,javascript object notation)格式数据提取出预设业务的交易数据,对所述预设业务的交易数据重新编排为所述csv格式,得到所述csv格式的交易数据。

28、可选地,提取出的所述目标报文数据存放到多个共享内存中,所述解析子模块还用于:通过多进程方式执行所述报文重组、所述数据解析和所述编排的操作。

29、可选地,所述交易数据抓取模块包括推送子模块,用于:将所述第一系统的交易数据划分批次,将得到的批次的交易数据和对应的批次信息推送到所述第一系统的消息中间件集群。

30、可选地,所述推送子模块还用于:将所述第一系统的交易数据逐条或批量发送到所述第一系统的上链服务,由所述上链服务确定所述第一系统的交易数据的批次信息,并将所述第一系统的交易数据和对应的批次信息保存到缓存,在缓存中的交易数据数量达到第一数量后,将所述第一数量的交易数据和对应的批次信息作为一条记录推送到所述第一系统的消息中间件集群。

31、可选地,所述上链存证模块还用于:对所述得到的批次的交易数据进行哈希处理,得到所述得到的批次的交易数据的哈希值;将所述得到的批次的交易数据的哈希值和对应的批次信息存储到所述区块链网络,以由所述第二系统根据所述哈希值和对应的批次信息发出所述数据同步请求。

32、可选地,所述第一系统的消息中间件集群包括多个;所述交易数据抓取模块还用于:将所述第一系统的交易数据推送到所述第一系统的当前存活的各消息中间件集群。

33、根据本发明实施例的又一方面,提供了一种数据同步装置。

34、一种数据同步装置,包括:上链存证数据获取模块,用于从区块链网络获取第一系统的交易数据的上链存证数据,所述上链存证数据是所述第一系统对抓取的交易数据进行哈希处理得到的;待同步数据确定模块,用于根据所述第一系统的交易数据的上链存证数据,确定待同步到第二系统的所述第一系统的交易数据;数据同步执行模块,用于通过所述第二系统的消息中间件集群,将待同步的所述第一系统的交易数据同步到所述第二系统。

35、可选地,所述数据同步执行模块还用于:通过所述第二系统的消息中间件集群,将待同步的所述第一系统的交易数据分发到多个数据采集组件进行解析,并将解析得到的各类数据存储到所述第二系统中对应的存储位置。

36、根据本发明实施例的又一方面,提供了一种电子设备。

37、一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现本发明实施例所提供的数据同步方法。

38、根据本发明实施例的又一方面,提供了一种计算机可读存储介质。

39、一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例所提供的数据同步方法。

40、上述发明中的一个实施例具有如下优点或有益效果:利用数据抓取组件抓取第一系统的交易数据,并将第一系统的交易数据推送到第一系统的消息中间件集群;对第一系统的交易数据进行哈希处理,得到第一系统的交易数据的上链存证数据,将第一系统的交易数据的上链存证数据存储到区块链网络,以由第二系统从区块链网络获取第一系统的交易数据的上链存证数据;在收到第二系统根据第一系统的交易数据的上链存证数据发出的数据同步请求后,通过第一系统的消息中间件集群,将第一系统的交易数据同步至第二系统。能够主动且准实时地获取机构内部的交易数据,避免数据丢失,保证抓取的数据不可篡改且可追溯,为监管机构进行数据分析提供可靠的数据来源,且可利用第一系统的至少两个探针服务器中部署的探针程序,抓取第一系统的交易数据,至少两个探针服务器设置在第一系统的同一互联网数据中心中,且采用相同的探针程序配置,探针高可用,容灾和扩展能力强。

41、上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。

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