CN110572450B - 数据同步方法、装置、计算机可读存储介质和计算机设备 - Google Patents
数据同步方法、装置、计算机可读存储介质和计算机设备 Download PDFInfo
- Publication number
- CN110572450B CN110572450B CN201910835208.8A CN201910835208A CN110572450B CN 110572450 B CN110572450 B CN 110572450B CN 201910835208 A CN201910835208 A CN 201910835208A CN 110572450 B CN110572450 B CN 110572450B
- Authority
- CN
- China
- Prior art keywords
- data
- version information
- management platform
- organization identifier
- highest version
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/275—Synchronous replication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Abstract
本申请涉及一种数据同步方法、装置、计算机可读存储介质和计算机设备,所述方法包括:接收数据管理平台广播的数据更新通知,所述数据更新通知在所述数据管理平台上的组织标识对应的数据和相应版本信息更新后触发;根据所述数据更新通知,获取所述数据管理平台上与区块链网络中的业务节点相关联的目标组织标识对应的最高版本信息;当目标组织标识在本地对应的最高版本信息与所获取的最高版本信息不匹配时,将携带所述目标组织标识的数据同步请求发送至所述数据管理平台;将所述数据管理平台针对所述数据同步请求反馈的更新的数据同步至本地,并更新本地的最高版本信息。本申请提供的方案能够提高业务处理的准确性。
Description
技术领域
本申请涉及区块链技术领域,特别是涉及一种数据同步方法、装置、计算机可读存储介质和计算机设备。
背景技术
随着区块链技术的发展,出现了基于区块链技术的区块链电子票据系统,通过区块链电子票据系统能够方便快捷的开具可追溯且不可篡改的电子票据,给人们的生活带来了诸多便捷。区块链电子票据系统通过数据管理平台来统一管理组织数据,通过区块链网络中的业务节点进行电子票据相关的业务处理。业务节点在进行业务处理时通常会涉及到业务相关的组织数据。
目前,业务节点通常是通过主动获取的方式从数据管理平台获取组织数据,以基于所获取的组织数据进行业务数据。但是,主动获取的方式会因组织数据的获取时机而影响业务处理时所基于的组织数据的准确性,从而存在业务处理准确性低的问题。
发明内容
基于此,有必要针对业务处理准确性低的技术问题,提供一种数据同步方法、装置、计算机可读存储介质和计算机设备。
一种数据同步方法,其特征在于,所述方法包括:
接收数据管理平台广播的数据更新通知,所述数据更新通知在所述数据管理平台上的组织标识对应的数据和相应版本信息更新后触发;
根据所述数据更新通知,获取所述数据管理平台上与区块链网络中的业务节点相关联的目标组织标识对应的最高版本信息;
当目标组织标识在本地对应的最高版本信息与所获取的最高版本信息不匹配时,将携带所述目标组织标识的数据同步请求发送至所述数据管理平台;
将所述数据管理平台针对所述数据同步请求反馈的更新的数据同步至本地,并更新本地的最高版本信息。
一种数据同步装置,所述装置包括:
接收模块,用于接收数据管理平台广播的数据更新通知,所述数据更新通知在所述数据管理平台上的组织标识对应的数据和相应版本信息更新后触发;
获取模块,用于根据所述数据更新通知,获取所述数据管理平台上与区块链网络中的业务节点相关联的目标组织标识对应的最高版本信息;
发送模块,用于当目标组织标识在本地对应的最高版本信息与所获取的最高版本信息不匹配时,将携带所述目标组织标识的数据同步请求发送至所述数据管理平台;
同步模块,用于将所述数据管理平台针对所述数据同步请求反馈的更新的数据同步至本地,并更新本地的最高版本信息。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述数据同步方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述数据同步方法的步骤。
上述数据同步方法、装置、计算机可读存储介质和计算机设备,数据管理平台在本地更新组织标识对应的数据和版本信息后,向区块链网络广播数据更新通知,以实现数据更新动态的及时通知。区块链网络中的每个业务节点,在接收到数据更新通知后,且在相关联的目标组织标识在数据管理平台上对应的最高版本信息,与在本地对应的最高版本信息不匹配时,将数据管理平台上与该目标组织标识对应的更新的数据同步至本地,并更新该目标组织标识在本地对应的最高版本信息。这样,能够及时捕获数据更新动态,以将数据管理平台上更新的数据及时而准确的同步至业务节点,以便于业务节点在进行业务处理时能够基于本地更新的数据快速而准确的进行业务处理,从而提高业务处理的准确性和效率。
一种数据同步方法,所述方法包括:
获取携带有组织标识的数据更新请求;
根据所述数据更新请求在本地更新所述组织标识对应的数据和相应版本信息,并触发生成数据更新通知;
向区块链网络广播所述数据更新通知;广播的所述数据更新通知用于指示所述区块链网络中的各业务节点,当相关联的目标组织标识在本地对应的最高版本信息,与在数据管理平台上对应的最高版本信息不匹配时,生成并反馈数据同步请求;
将所述数据同步请求中的目标组织标识所对应的更新的数据同步至相应业务节点。
一种数据同步装置,所述装置包括:
获取模块,用于获取携带有组织标识的数据更新请求;
更新模块,用于根据所述数据更新请求在本地更新所述组织标识对应的数据和相应版本信息,并触发生成数据更新通知;
广播模块,用于向区块链网络广播所述数据更新通知;广播的所述数据更新通知用于指示所述区块链网络中的各业务节点,当相关联的目标组织标识在本地对应的最高版本信息,与在数据管理平台上对应的最高版本信息不匹配时,生成并反馈数据同步请求;
同步模块,用于将所述数据同步请求中的目标组织标识所对应的更新的数据同步至相应业务节点。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述数据同步方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述数据同步方法的步骤。
上述数据同步方法、装置、计算机可读存储介质和计算机设备,数据管理平台在本地更新组织标识对应的数据和版本信息后,向区块链网络广播数据更新通知,以实现数据更新动态的及时通知。区块链网络中的每个业务节点,在接收到数据更新通知后,且在相关联的目标组织标识在数据管理平台上对应的最高版本信息,与在本地对应的最高版本信息不匹配时,将数据管理平台上与该目标组织标识对应的更新的数据同步至本地,并更新该目标组织标识在本地对应的最高版本信息。这样,能够及时捕获数据更新动态,以将数据管理平台上更新的数据及时而准确的同步至业务节点,以便于业务节点在进行业务处理时能够基于本地更新的数据快速而准确的进行业务处理,从而提高业务处理的准确性和效率。
附图说明
图1为一个实施例中数据同步方法的应用环境图;
图2为一个实施例中数据同步方法的流程示意图;
图3为另一个实施例中数据同步方法的流程示意图;
图4为一个实施例中数据同步方法的原理图;
图5为一个实施例中数据同步方法的时序图;
图6为另一个实施例中数据同步方法的时序图;
图7为一个实施例中区块链电子票据系统的架构图;
图8为一个实施例中数据同步装置的结构框图;
图9为另一个实施例中数据同步装置的结构框图;
图10为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中数据同步方法的应用环境图。参照图1,该数据同步方法应用于数据同步系统。该数据同步系统包括区块链网络110和数据管理平台120。区块链网络110与数据管理平台120通过网络连接。区块链网络110包括多个业务节点,比如业务节点112、业务节点114、业务节点116、…、业务节点11n。业务节点相互之间可以进行数据传递。数据管理平台120是为业务节点通信提供安全服务的平台或系统。业务节点是用于处理区块链电子票据业务数据的节点。
如图2所示,在一个实施例中,提供了一种数据同步方法。本实施例主要以该方法应用于上述图1中的区块链网络110中的业务节点来举例说明。参照图2,该数据同步方法具体包括如下步骤:
S202,接收数据管理平台广播的数据更新通知,数据更新通知在数据管理平台上的组织标识对应的数据和相应版本信息更新后触发。
其中,数据更新通知是用于通知数据更新动态的数据或数据包,具体可用于向业务节点通知数据管理平台存在数据更新。组织标识用于唯一标识组织,是由数字、字母和符号等字符中的至少一种组成的字符串,具体可以是组织名称、代码或编号等。组织具体可以是企业,组织标识具体可以是企业名称或纳税人识别号。企业是指电子票据业务中的企业实体,按照所涉及的票据功能可分为开票企业和报销企业。组织也可以是服务商,服务商是电子票据业务中的服务实体,能够为企业提供电子票据的开票、报销和红冲等功能服务。
组织标识对应的数据包括组织信息和关联信息。以组织为企业为例,组织标识对应的数据包括企业信息和企业与服务商之间的代理关系。组织标识对应的版本信息是反应该组织标识所对应的数据的更新版本的信息,也就是数据的版本信息。版本信息具体可以是版本号,比如V0、V1或V2等。不同的版本信息对应不同版本的数据,一个组织标识可对应有多个版本信息。当组织标识对应的数据更新时会对应更新数据的版本信息,也就是针对更新后的数据生成相应的版本信息,并作为组织标识对应的更新后的版本信息。
具体地,数据管理平台在本地更新组织标识对应的数据和相应版本信息后,触发生成相应的数据更新通知,并将所生成的数据更新通知广播至区块链网络。区块链网络中的业务节点接收数据管理平台广播的该数据更新通知。
在一个实施例中,数据更新通知中携带有存在数据更新的组织标识对应的最高版本信息。数据管理平台在本地更新组织标识对应的数据和相应版本信息后,将更新后的版本信息确定为该组织标识对应的最高版本信息,并根据该最高版本信息触发生成数据更新通知。可以理解,数据更新通知中还可携带有存在数据更新的组织标识。
在一个实施例中,数据管理平台在同一时间同时更新多个组织标识各自对应的数据和相应的版本信息后,触发生成携带该多个组织标识各自对应的最高版本信息的数据更新通知。可以理解,数据更新通知还可携带该多个组织标识。
在一个实施例中,数据管理平台根据每个组织标识对应的最高版本信息触发相应的数据更新通知。在一个实施例中,业务节点接收数据管理平台在更新组织标识对应的数据和相应版本信息后异步发送的数据更新通知。
在一个实施例中,数据管理平台将存在数据更新的组织标识按照组织标识相关联的业务节点进行聚类,针对每个聚类结果,触发生成携带该聚类结果中每个组织标识对应的最高版本信息的数据更新通知,并将所生成的数据更新通知异步发送至相应的业务节点。
在一个实施例中,数据更新通知是用于通知业务节点当前数据管理平台上存在数据更新的提示信息,也就是将数据管理平台当前的数据更新动态通知至业务节点的提示信息。数据管理平台在本地更新组织标识对应的数据和相应版本信息后,触发生成数据更新通知。
S204,根据数据更新通知,获取数据管理平台上与区块链网络中的业务节点相关联的目标组织标识对应的最高版本信息。
其中,最高版本信息是指组织标识所对应的版本信息中最新或最晚生成的版本信息。版本信息为版本号时,最高版本信息具体可以是指最高或最大的版本号。数据的版本可通过版本号来区分。比如,对于组织标识,当更新得到新版本的数据时,新版本的版本号中的数值要高于前一个版本的版本号中的数值。也就是,版本号中的数值越小,则对应的版本越低,版本号中的数值越大,则对应的版本越高。当前,也可设置为新版本的版本号中的数值低于前一个版本的版本号中的数值,本申请实施例在此不做限定。例如,还可通过其他的方式来区分数据的不同版本,比如依据不同的字母或字符等来确定。
具体地,区块链网络中的每个业务节点在接收到数据更新通知后,根据所接收到的数据更新通知,获取与自身相关联的、且存在数据更新的目标组织标识,在数据管理平台上对应的最高版本信息。
在一个实施例中,数据更新通知中携带有存在数据更新的组织标识对应的最高版本信息。业务节点解析所接收到的数据更新通知,得到在数据管理平台上存在数据更新的组织标识所对应的最高版本信息。业务节点从解析得到的最高版本信息中,筛选与自身相关联的目标组织标识所对应的最高版本信息。
在一个实施例中,业务节点解析所接收到的数据更新通知,得到在数据管理平台上存在数据更新的组织标识和组织标识所对应的最高版本信息。业务节点从解析得到的组织标识中筛选与自身相关联的目标组织标识,并从解析得到的最高版本信息中选取与目标组织标识对应的最高版本信息。
在一个实施例中,业务节点根据所接收到的数据更新通知触发生成版本信息获取请求,将该版本信息获取请求发送至数据管理平台,以从数据管理平台获取与自身相关联的目标组织标识对应的最高版本信息。数据管理平台在接收到版本信息获取请求后,从本地存在数据更新的组织标识中查询与相应业务节点相关联的目标组织标识,获取该目标组织标识对应的最高版本信息并反馈至相应业务节点。数据管理平台可将目标组织标识和相应的最高版本信息一并反馈至相应业务节点。
在一个实施例中,当业务节点对应的目标组织标识有多个时,数据管理平台可将该多个目标组织标识和各自相应的最高版本信息以列表的形式反馈至该业务节点。
在一个实施例中,业务节点通过自身的私钥对版本信息获取请求进行签名,并将签名后的版本信息获取请求发送至数据管理平台。数据管理平台通过业务节点的公钥对所接收到的版本信息获取请求进行验证,并在验证通过后,将与该业务节点相关联的目标组织标识对应的最高版本信息反馈至业务节点。
S206,当目标组织标识在本地对应的最高版本信息与所获取的最高版本信息不匹配时,将携带目标组织标识的数据同步请求发送至数据管理平台。
其中,数据同步请求是用于触发数据同步操作的请求。数据同步请求中携带有待同步数据的目标组织标识。
具体地,业务节点获取目标组织标识在本地对应的最高版本信息,并将该目标组织标识在本地对应的最高版本信息,与在数据管理平台上对应的最高版本信息进行匹配。当目标组织标识在本地对应的最高版本信息,与在数据管理平台上对应的最高版本信息不匹配时,业务节点触发生成携带有该目标组织标识的数据同步请求,并将该数据同步请求发送至数据管理平台。
在一个实施例中,当根据数据更新通知获取到多个目标组织标识各自对应的最高版本信息时,业务节点分别查询每个目标组织标识在本地对应的最高版本信息,并将所查询到的最高版本信息分别与所获取到的相应最高版本信息进行匹配。当该多个目标组织标识中,存在所查询到的最高版本信息与所获取到的相应最高版本信息不匹配时,业务节点触发生成携带有最高版本信息不匹配的目标组织标识的数据同步请求。这样,当存在多个目标组织标识各自在本地和数据管理平台上对应的最高版本信息不匹配时,可将该多个目标组织标识各自在数据管理平台上对应的更新的数据批量同步至本地。
S208,将数据管理平台针对数据同步请求反馈的更新的数据同步至本地,并更新本地的最高版本信息。
具体地,数据管理平台在接收到业务节点发送的数据同步请求后,解析所接收到的数据同步请求得到待同步数据的目标组织标识,从本地获取该目标组织标识对应的更新的数据,并将所获取到的数据反馈至相应业务节点。业务节点在接收到数据管理平台,针对数据同步请求中的目标组织标识反馈的更新的数据后,将所接收到的数据更新至本地,以实现目标组织标识对应的更新的数据的同步。业务节点基于目标组织标识在数据管理平台上对应的最高版本信息,更新该目标组织标识在本地对应的最高版本信息。
可以理解,业务节点可在判定目标组织标识在本地对应的最高版本信息,与在数据管理平台对应的最高版本信息不匹配时,根据该目标组织标识在数据管理平台上对应的最高版本信息,更新在本地对应的最高版本信息。区块链也可在将目标组织标识对应的更新的数据成功同步至本地后,对应更新该目标组织标识在本地对应的最高版本信息,在此不做限定。
在一个实施例中,业务节点在接收到数据管理平台针对目标组织标识反馈的更新的数据后,将该目标组织标识在本地对应的、且与该更新的数据对应的数据替换为该更新的数据,也就是同步于数据管理平台在本地更新目标组织标识对应的数据。相应地,业务节点根据该目标组织标识在数据管理平台上对应的最高版本信息,以覆盖或替换的更新方式更新该目标组织标识在本地对应的最高版本信息。比如,目标组织标识在本地对应的版本信息,也就是最高版本信息为V2,在数据管理平台上对应的最高版本信息为V3,业务节点则将该目标组织标识在本地对应的最高版本信息更新为V3。
在一个实施例中,业务节点将数据管理平台针对目标组织标识反馈的更新的数据,对应于该目标组织标识新增至本地。相应地,业务节点根据该目标组织标识在数据管理平台上对应的最高版本信息,以新增的更新方式更新该目标组织标识在本地对应的最高版本信息。比如,目标组织标识在本地对应的版本信息为V0、V1、V2,最高版本信息为V2,在数据管理平台上对应的最高版本信息为V3,业务节点则将该目标组织标识在本地对应的最高版本信息更新为V3,也就是将该目标组织标识在本地对应的版本信息更新为V0、V1、V2、V3。
在一个实施例中,目标组织标识在数据管理平台上对应的更新的数据,可以是指最高版本信息所对应的数据,与前一个版本信息所对应的数据之间的差异数据,也可以是指该最高版本信息所对应的数据。
上述数据同步方法,数据管理平台在本地更新组织标识对应的数据和版本信息后,向区块链网络广播数据更新通知,以实现数据更新动态的及时通知。区块链网络中的每个业务节点,在接收到数据更新通知后,且在相关联的目标组织标识在数据管理平台上对应的最高版本信息,与在本地对应的最高版本信息不匹配时,将数据管理平台上与该目标组织标识对应的更新的数据同步至本地,并更新该目标组织标识在本地对应的最高版本信息。这样,能够及时捕获数据更新动态,以将数据管理平台上更新的数据及时而准确的同步至业务节点,以便于业务节点在进行业务处理时能够基于本地更新的数据快速而准确的进行业务处理,从而提高业务处理的准确性和效率。
在一个实施例中,将携带目标组织标识的数据同步请求发送至数据管理平台,包括:对目标组织标识进行签名得到签名数据;将携带有目标组织标识和签名数据的数据同步请求发送至数据管理平台;发送的数据同步请求用于指示数据管理平台在签名数据通过验证时,反馈目标组织标识对应的更新的数据。
其中,签名数据是业务节点利用自身的私钥对目标组织标识进行签名得到的数据。
具体地,当判定目标组织标识在本地对应的最高版本信息,与在数据管理平台对应的最高版本信息不匹配时,业务节点利用自身的私钥对该目标组织标识进行签名,得到签名数据。业务节点根据目标组织标识和该目标组织标识对应的签名数据生成数据同步请求,并将该数据同步请求发送至数据管理平台。数据管理平台解析所接收到的数据同步请求得到目标组织标识和相应的签名数据,并利用相应业务节点的公钥对该签名数据进行验证。当该签名数据通过验证时,业务节点从本地获取该目标组织标识对应的更新的数据,并将所获取到的更新的数据反馈至相应业务节点。
在一个实施例中,业务节点根据所得到的签名数据生成数据同步请求。数据管理平台利用业务节点的公钥,对该数据同步请求中的签名数据进行解密验证。当利用业务节点的公钥能够成功解密该签名数据得到目标组织标识时,则判定签名数据通过验证,并基于解析得到的目标组织标识从本地获取相应更新的数据。
上述实施例中,通过签名和验签的方式来保证发起数据同步请求的业务节点,具有获取相应更新的数据的权限,从而能够保证数据的安全性。
在一个实施例中,上述数据同步方法还包括:当满足主动同步条件时,提取与本地的组织标识对应的最高版本信息;将提取的最高版本信息发送至数据管理平台;当本地的组织标识在数据管理平台上对应的最高版本信息与发送的最高版本信息不匹配时,则将数据管理平台上与本地的组织标识对应的最高版本信息和相应更新的数据同步至本地。
其中,主动同步条件是用于触发主动从数据管理平台同步数据的操作的条件。当满足主动同步条件时,业务节点主动从数据管理平台请求更新的数据。主动同步条件具体可以是当前时间与预设的主动同步触发时间一致,或者,接收到第三方平台或其他设备发送的主动同步触发操作,或者,自前一次主动请求更新的数据起达到预设时长等。
具体地,当判定满足主动同步条件时,业务节点从本地提取与本地的组织标识对应的最高版本信息,并将所提取到的最高版本信息发送至数据管理平台。数据管理平台在接收到业务节点发送的最高版本信息后,从本地获取所接收到的每个最高版本信息对应的组织标识所对应的最高版本信息,也就是从数据管理平台本地获取业务节点本地的组织标识,在数据管理平台上对应的最高版本信息。数据管理平台将从本地获取到的最高版本信息,与所接收到的相应最高版本信息进行匹配,也就是将业务节点本地的组织标识在业务节点上对应的最高版本信息,与在数据管理平台上对应的最高版本信息进行匹配。当所获取到的最高版本信息与所接收到的最高版本信息不匹配时,表明相应组织标识在数据管理平台上存在数据更新,数据管理平台将该组织标识在本地对应的最高版本信息和相应更新的数据同步至相应业务节点。
在一个实施例中,当满足主动同步条件时,业务节点从本地获取组织标识和组织标识在本地对应的最高版本信息,并将所获取到的组织标识和相应的最高版本信息发送至数据管理平台。数据管理平台在接收到业务节点发送的组织标识和相应最高版本信息后,获取所接收到的每个组织标识在本地对应的最高版本信息,并在所获取到的最高版本信息与所接收到的相应最高版本信息不匹配时,将相应组织标识在本地所对应的更新的数据同步至相应业务节点。
在一个实施例中,当判定业务节点本地的组织标识在业务节点对应的最高版本信息,与在数据管理平台对应的最高版本信息不匹配时,也就是判定业务节点本地的组织标识在数据管理平台上对应的数据存在更新时,数据管理平台将存在数据更新的组织标识,以及该组织标识在数据管理平台对应的最高版本信息反馈至相应业务节点。业务节点在接收到数据管理平台反馈的组织标识和相应的最高版本信息后,触发生成携带有所接收到的组织标识的数据同步请求,并将该数据同步请求发送至数据管理平台,以将数据管理平台与该组织标识对应的更新的数据同步至本地。数据管理平台根据所接收到的数据同步请求中的组织标识,在本地获取该组织标识对应的更新的数据,并将所获取到的数据同步至相应业务节点。
在一个实施例中,业务节点在接收到数据管理请求反馈的组织标识后,利用自身的私钥对该组织标识进行签名得到签名数据,并将携带签名数据的数据同步请求发送的数据管理平台。数据管理平台利用业务节点的公钥,对所接收到的数据同步请求中的签名数据进行解密验证。当签名数据通过验证时,数据管理平台将解密该签名数据得到的组织标识,在本地对应的更新的数据反馈至相应业务节点。
在一个实施例中,业务节点接收到数据管理平台反馈的最高版本信息和相应更新的数据后,根据该最高版本信息更新相应组织标识在本地对应的最高版本信息,并根据该更新的数据更新该组织标识在本地对应的数据。
在一个实施例中,业务节点在本地维持心跳包,并以预设时长为周期向数据管理平台主动请求更新的数据,也就是每间隔预设时长主动向数据管理平台请求更新的数据。可以理解,业务节点每间隔预设时长主动向数据管理平台发送心跳请求,以通过心跳请求从数据管理平台同步更新的数据。
上述实施例中,业务节点通过主动同步的方式,主动从数据管理平台请求更新的数据,以便于在通过广播的方式未能及时同步更新的数据时,能够通过主动获取的方式及时将更新的数据同步至本地,以保证业务节点与数据管理平台的数据的同步性,从而保证业务节点能够基于正确的数据进行业务处理,以保证业务处理正确性。
在一个实施例中,业务节点上运行有数据管理代理;数据同步方法通过数据管理代理执行;将数据管理平台针对数据同步请求反馈的更新的数据同步至本地,包括:通过数据管理代理,将数据管理平台针对数据同步请求反馈的更新的数据同步至本地的缓存区域。
其中,数据管理代理是运行于业务节点的软件或计算机程序,能够用于代理业务节点与数据管理平台进行通信。数据管理代理分布式部署于区块链网络中的业务节点上,也就是每个业务节点上分别部署有相应的数据管理代理。缓存区域是业务节点上用于缓存组织标识对应的数据的区域,具体可以是shm (shared memory,共享内存)。
具体地,区块链网络中的每个业务节点上运行有相应的数据管理代理。业务节点通过运行于其上的数据管理代理,执行上述一个或多个实施例中提供的数据同步方法中由业务节点执行的步骤。在业务节点与数据管理平台的交互过程中,上述由业务节点执行的步骤,均可通过运行在该业务节点上的数据管理代理执行。业务节点将组织标识对应的数据存储在预配置的缓存区域。当通过数据管理代理接收到数据管理平台,针对数据同步请求中的目标组织标识反馈的更新的数据时,业务节点通过数据管理代理将所接收到的更新的数据同步更新至缓存区域。
例如,业务节点通过运行于其上的数据管理代理接收数据管理平台广播的数据更新通知,并根据该数据更新通知,获取数据管理平台上与业务节点自身相关联的目标组织标识对应的最高版本信息。业务节点通过数据管理代理获取目标组织标识在本地对应的最高版本信息,并将目标组织标识在本地对应的最高版本信息,与在数据管理平台上对应的最高版本信息进行匹配。当目标组织标识在本地对应的最高版本信息,与在数据管理平台上对应的最高版本信息不匹配时,业务节点通过数据管理代理,将携带目标组织标识的数据同步请求发送至数据管理平台,并将数据管理平台对应反馈的更新的数据同步至缓存区域,以及更新目标组织标识在本地对应的最高版本信息。
上述实施例中,业务节点通过数据管理代理与数据管理平台进行数据交互,以实现数据同步过程与业务节点上的业务处理过程的异步执行,从而能够保证业务处理的正确性和效率。
在一个实施例中,上述数据同步方法还包括:获取业务请求;根据业务请求中的组织标识,从本地获取当前的最高版本信息对应的数据;基于获取的数据响应业务请求。
其中,业务请求是用于触发业务处理或业务操作的请求。业务请求中携带有组织标识,还可携带有业务数据。
具体地,业务节点接收其他平台或系统发送的业务请求,解析所接收到的业务请求得到相应的组织标识,并从本地获取该组织标识当前对应的最高版本信息所对应的数据。业务节点基于所获取到的数据对相应的业务请求进行响应。其他平台或系统比如服务商系统。
在一个实施例中,业务节点解析所接收到的业务请求得到组织标识和待处理的业务数据。业务节点从本地获取到组织标识当前对应的最高版本信息所对应的数据后,根据所获取到的组织标识对待处理的业务数据进行验证。当业务数据验证通过时,业务节点根据业务请求进行相应的业务处理。
在一个实施例中,业务请求具体可以是开票请求、报销请求或红冲请求等。业务节点在本地对应于组织标识存储的数据包括组织信息和关联信息,也可以包括与组织标识对应的、且携带组织信息的数字证书和关联信息。以组织为企业为例,数据包括企业的数字证书,以及企业和服务商的代理关系。业务节点在根据业务请求进行业务处理之前,业务处理所涉及的企业和服务商的数字证书,以及企业和服务商的代理关系进行验证,并在验证通过后进行业务处理。可以理解,若验证未通过,则拒绝响应业务请求。这样,能够保证业务处理的正确性。
在一个实施例中,业务节点根据业务请求中的组织标识,从缓存区域获取该组织标识对应的数据。
在一个实施例中,业务节点在对业务请求进行响应时,通过区块链网络中的共识节点将进行业务处理得到的数据写入区块链中,以实现对区块链电子票据数据的处理和记录。
上述实施例中,业务节点在数据同步过程中,能够异步的实现业务处理,而不影响正常的业务处理。这样,数据同步过程与业务处理过程相互独立,从而能够保证业务处理的效率和正确性。
如图3所示,在一个实施例中,提供了一种数据同步方法,本实施例主要以该方法应用于上述图1中的数据管理平台120来举例说明。参照图3,该数据同步方法具体包括如下步骤:
S302,获取携带有组织标识的数据更新请求。
其中,数据更新请求是用于触发数据更新操作的请求。数据更新请求中携带有待更新数据的组织标识,还可携带有待更新的目标数据。
在一个实施例中,数据管理平台接收第三方平台发送的数据更新请求,解析所接收到的数据更新请求得到待更新数据的组织标识。第三方平台具体可以是区块链电子税局平台和区块链税务链管理平台。可以理解,区块链电子税局平台为中心化部署的区块链电子税局系统,用于给待接入区块链电子发票系统的企业提供申请接入、公私钥管理、开票数据或报销数据查询统计、发票跟踪等功能。区块链税务链管理平台为中心化部署的区块链税务链管理系统,用于给税局管理人员提供企业或服务商的注册、开票管理、全局发票查询统计、发票跟踪、锁票、商家私钥丢失等异常处理功能。
在一个实施例中,一个数据更新请求中携带有多个待更新数据的组织标识。数据管理平台解析该数据更新请求得到该多个待更新数据的组织标识,还可得到该多个组织标识各自对应的待更新的目标数据。
在一个实施例中,数据管理平台接收多个数据更新请求,分别解析所接收到的每个数据更新请求,得到各自相应的待更新数据的组织标识。
S304,根据数据更新请求在本地更新组织标识对应的数据和相应版本信息,并触发生成数据更新通知。
具体地,数据管理平台解析所接收到的数据更新请求得到待更新数据的组织标识,并获取解析得到的组织标识所对应的待更新的目标数据。数据管理平台根据所获取到的目标数据在本地更新该组织标识对应的数据,得到更新的数据,根据组织标识的已有版本信息生成该更新的数据对应的版本信息,并将所生成的版本信息作为该组织标识在本地对应的最高版本信息,以实现组织标识在本地对应的版本信息的更新。数据管理平台在成功更新待更新数据的组织标识在本地对应的数据和相应版本信息后,触发生成数据更新通知。
在一个实施例中,数据管理平台解析所接收到的数据更新请求,得到待更新数据的组织标识和组织标识对应的待更新的目标数据。在一个实施例中,数据管理平台根据数据更新请求从相应第三方平台获取待更新的目标数据。
在一个实施例中,待更新的目标数据是指所需变更或更新的数据,具体包括更新后的数据,还可包括更新前的数据。
在一个实施例中,数据管理平台在本地更新待更新数据的组织标识对应的数据和相应版本信息后,可直接触发数据更新通知,也可以根据存在数据更新的组织标识生成携带该组织标识的数据更新通知。
S306,向区块链网络广播数据更新通知;广播的数据更新通知用于指示区块链网络中的各业务节点,当相关联的目标组织标识在本地对应的最高版本信息,与在数据管理平台上对应的最高版本信息不匹配时,生成并反馈数据同步请求。
具体地,数据管理平台在触发生成数据更新通知后,向区块链网络广播该数据更新通知。区块链网络中的业务节点在接收到数据管理平台所广播的数据更新通知后,根据该数据更新通知获取业务节点自身相关联的、且存在数据更新的目标组织标识,在数据管理平台上对应的最高版本信息,以及该目标组织标识在业务节点本地对应的最高版本信息。业务节点在判定目标组织标识在本地对应的最高版本信息,与在数据管理平台上对应的最高版本信息不匹配时,触发生成携带该目标组织标识的数据同步请求,并将所生成的数据同步请求反馈至数据管理平台。
在一个实施例中,业务节点解析所接收到的数据更新通知得到存在数据更新的组织标识所对应的最高版本信息,从解析得到的最高版本信息中获取自身相关联的目标组织标识对应的最高版本信息。可以理解,业务节点解析数据更新通知还可得到存在数据更新的组织标识。
在一个实施例中,业务节点根据所接收到的数据更新通知触发生成版本信息获取请求,并基于所生成的版本信息获取请求从数据管理平台,获取业务节点自身相关联的、且存在数据更新的目标组织标识,在数据管理平台上对应的最高版本信息。
S308,将数据同步请求中的目标组织标识所对应的更新的数据同步至相应业务节点。
具体地,数据管理平台在接收到业务节点针对数据更新通知反馈的数据同步请求后,解析该数据同步请求得到待同步数据的目标组织标识。业务节点从本地获取该目标组织标识对应的更新的数据,并将所获取到的数据同步至相应业务节点。业务节点将数据管理平台针对目标组织标识所同步的数据更新至本地,并根据该目标组织标识在数据管理平台对应的最高版本信息,更新该目标组织标识在业务节点本地对应的最高版本信息。
在一个实施例中,目标组织标识在数据管理平台对应的最高版本信息所对应的数据为更新的数据,数据管理平台则根据该最高版本信息从本地获取该目标组织标识对应的更新的数据。
在一个实施例中,目标组织标识在数据管理平台对应的最高版本信息所对应的数据,包括更新后的数据和未更新的数据,数据管理平台则将该最高版本信息对应的数据和前一个版本信息对应的数据之间的差异数据,确定为该目标组织标识对应的更新的数据,也就是将最高版本信息中的更新后的数据,确定为该目标组织标识对应的更新的数据。
上述数据同步方法,数据管理平台在本地更新组织标识对应的数据和版本信息后,向区块链网络广播数据更新通知,以实现数据更新动态的及时通知。区块链网络中的每个业务节点,在接收到数据更新通知后,且在相关联的目标组织标识在数据管理平台上对应的最高版本信息,与在本地对应的最高版本信息不匹配时,将数据管理平台上与该目标组织标识对应的更新的数据同步至本地,并更新该目标组织标识在本地对应的最高版本信息。这样,能够及时捕获数据更新动态,以将数据管理平台上更新的数据及时而准确的同步至业务节点,以便于业务节点在进行业务处理时能够基于本地更新的数据快速而准确的进行业务处理,从而提高业务处理的准确性和效率。
在一个实施例中,步骤S308包括:解析数据同步请求得到目标组织标识和相应的签名数据;当签名数据通过验证时,将解析得到的目标组织标识对应的更新的数据同步至相应业务节点。
具体地,数据管理平台在接收到业务节点发送的数据同步请求后,解析所接收到的数据同步请求,得到待同步数据的目标组织标识和相应的签名数据。数据管理平台利用发送该数据同步请求的业务节点的公钥,对解析得到的签名数据进行验证。当签名数据验证通过时,数据管理平台根据解析得到的目标组织标识从本地获取相应的更新的数据,并将所获取到的数据同步至相应业务节点。
在一个实施例中,数据管理平台解析所接收到的数据同步请求得到签名数据,并利用相应业务节点的公钥对该签名数据进行解密验证。当能够解密得到目标组织标识时,则判定签名数据通过验证,并将该目标组织标识在本地对应的更新的数据同步至业务节点。
上述实施例中,通过签名和验签的方式来保证发起数据同步请求的业务节点,具有获取相应更新的数据的权限,从而能够保证数据的安全性。
在一个实施例中,上述数据同步方法还包括:接收区块链网络中的业务节点发送的最高版本信息;接收的最高版本信息由业务节点在满足主动同步条件时,根据本地的组织标识对应获取;当本地的组织标识在数据管理平台上对应的最高版本信息,与接收的最高版本信息不匹配时,则将本地与本地的组织标识对应的最高版本信息和相应更新的数据同步至业务节点。
具体地,区块链网络中的每个业务节点在满足主动同步条件时,从本地获取本地的组织标识对应的最高版本信息,并将所获取到的最高版本信息发送的数据管理平台。数据管理平台在接收到业务节点发送的最高版本信息后,获取最高版本信息对应的组织标识在本地对应的最高版本信息,也就是获取业务节点本地的组织标识在数据管理平台上对应的最高版本信息。数据管理平台将所获取到的最高版本信息与所接收到的最高版本信息进行匹配。当所获取到的最高版本信息与所接收到的最高版本信息不匹配时,数据管理平台获取相应组织标识在本地对应的最高版本信息和相应更新的数据,并将所获取到的最高版本信息和相应更新的数据同步至相应业务节点。
在一个实施例中,业务节点在满足主动同步条件时,将本地的组织标识和组织标识在本地对应的最高版本信息发送至数据管理平台,以便于数据管理平台获取所接收到的组织标识在数据管理平台对应的最高版本信息。
在一个实施例中,当判定组织标识在业务节点和数据管理平台上分别对应的最高版本信息不匹配时,数据管理平台将该组织标识,以及该组织标识在数据管理平台上对应的最高版本信息发送至相应业务节点。数据管理平台在接收到业务节点针对所接收到的组织标识反馈的数据同步请求时,将该组织标识在本地对应的更新的数据同步至该业务节点。
上述实施例中,业务节点通过主动同步的方式,主动从数据管理平台请求更新的数据,以便于在通过广播的方式未能及时同步更新的数据时,能够通过主动获取的方式及时将更新的数据同步至本地,以保证业务节点与数据管理平台的数据的同步性,从而保证业务节点能够基于正确的数据进行业务处理,以保证业务处理正确性。
在一个实施例中,步骤S306之后,上述数据同步方法还包括:当广播数据更新通知后达到预设时长,仍未接收到区块链网络中的每个业务节点反馈的应答信息时,返回至向区块链网络广播数据更新通知的步骤继续执行,直至达到预设次数或者接收到每个业务节点反馈的应答信息;预设时长与广播数据更新通知的次数成正相关关系。
其中,预设时长为预先设定的时长,具体可以是向区块链网络重复广播相同数据更新通知的时间间隔,也就是相邻两次向区块链网络广播同一数据更新通知的时间间隔。应答信息是业务节点针对所接收到的数据更新通知向数据管理平台反馈的信息。预设次数是预先设定的次数阈值,能够用于判定是否停止迭代地执行向区块链网络广播数据更新通知的步骤。正相关关系是指预设时长随着广播数据更新通知的次数的增加而增加。
具体地,数据管理平台向区块链网络广播数据更新通知后,接收区块链网络中的业务节点针对该数据更新通知反馈的应答信息,并统计反馈应答信息的业务节点的数量,以及自广播该数据更新通知起的等待应答时长。当统计的等待应答时长大于或等于预设时长时,也就是当广播数据更新通知后达到预设时长时,数据管理平台仍未接收到区块链网络中的每个业务节点分别反馈的应答信息,则再次向该区块链网络广播该数据更新通知。数据管理平台在前次统计的已反馈应答信息的业务节点的数量上,继续统计该区块链网络中针对该数据更新通知反馈应答信息的业务节点的数量,并再次统计自再次广播该数据更新通知起的等待应答时长。
当再次统计的等待应答时长大于或等于预设时长时,数据管理平台仍未接收到区块链网络中每个业务节点分别反馈的应答信息,则再次向该区块链网络广播该数据更新通知,并针对再次广播的数据更新通知迭代地执行上述步骤,直至广播数据更新通知的次数大于或等于预设次数,或者,接收到区块链网络中的每个业务节点分别反馈的应答信息时,停止迭代。在上述迭代过程中,数据管理平台根据迭代的次数确定相邻两次迭代之间的时间间隔,也就是根据迭代的次数或者广播该数据更新通知的次数确定每次迭代中的预设时长。
在一个实施例中,数据管理平台在广播数据更新通知后,统计区块链网络中针对该数据更新通知反馈应答信息的业务节点的数量,以及自广播该数据更新通知起的等待应答时长。当统计的数量等于区块链网络中的业务节点的总数量、且统计的等待应答时长小于预设时长时,数据管理平台则不会触发上述迭代流程,也就是不会继续执行向区块链网络广播数据更新通知的步骤。这样,当在自广播数据更新通知起的预设时长内,数据管理平台接收到区块链网络中所有业务节点反馈的应答信息,则无需再次广播该数据更新通知。
举例说明,假设初始的预设时长为5秒,预设次数为4,数据管理平台向区块链网络广播数据更新通知A,当广播该数据更新通知A后达到5秒时,仍未接收到区块链网络中的每个业务节点分别反馈的应答信息,数据管理平台则向区块链网络再次广播该数据更新通知A。当再次广播该数据更新通知A后达到10 秒时,仍未接收到区块链网络中的每个业务节点,针对该数据更新通知A分别反馈的应答信息,数据管理平台则再次广播该数据更新通知A。依次类推,直至广播该数据更新通知的次数大于或等于4,或者,数据管理平台接收到区块链网络中的每个业务节点分别反馈的应答信息,则停止上述迭代过程。
在一个实施例中,当广播数据更新通知后达到预设时长,数据管理平台仍未接收到区块链网络中的每个业务节点分别反馈的应答信息,则确定尚未反馈应答信息的业务节点,并判断该尚未反馈应答信息的业务节点是否已通过主动同步的方式,将数据更新通知对应的、且与该业务节点对应的目标标识所对应的更新的数据同步至该业务节点本地。若通过主动同步的方式已将相应更新的数据同步至业务节点,则无需再次广播该数据更新通知。
在一个实施例中,当广播数据更新通知后达到预设时长,数据管理平台仍未接收到区块链网络中的每个业务节点分别反馈的应答信息,则确定尚未反馈应答信息的业务节点,并向所确定的业务节点再次广播该数据更新通知。
上述实施例中,当区块链网络中存在未反馈应答信息的业务节点时,数据管理平台重复广播该数据更新通知,直至重复的次数达到预设次数,或者接收到所有业务节点分别反馈的应答信息。数据管理平台通过该种广播式异步爬坡通知方式,能够保证每个业务节点均能获取到数据更新通知,以根据数据更新通知将更新的数据及时同步至业务节点本地。
图4为一个实施例中提供的数据同步方法的原理图。如图4所示,数据同步方法中包括广播通知和主动同步两种异步执行的数据同步方式。对于广播通知方式,数据管理平台在本地更新组织标识对应的数据和版本信息后,触发生成数据更新通知,并广播至区块链网络;区块链网络中的业务节点根据数据更新通知,获取自身相关联的目标组织标识在数据管理平台对应的最高版本信息;当目标组织标识在业务节点本地对应的最高版本信息,与在数据管理平台上对应的版本信息不匹配时,业务节点将数据管理平台上与该目标组织标识对应的更新的数据同步至本地,并更新本地的最高版本信息。可以理解,广播通知和主动同步也可理解为并行执行的两种数据同步方式。
对于主动同步方式,业务节点在判定满足主动同步条件时,提取本地的组织标识在本地对应的最高版本信息,并将提取的最高版本信息发送至数据管理平台;当业务节点本地的组织标识在数据管理平台上对应的最高版本信息,与在业务节点本地对应的最高版本信息不匹配时,数据管理平台将本地与业务节点本地的组织标识对应的最高版本信息和相应更新的数据同步至业务节点。
对于数据管理平台上的更新的数据,若通过广播通知方式,成功该更新的数据同步至相应业务节点之后,业务节点才判定满足主动同步条件,则业务节点所提取的与本地的组织标识在本地对应的最高版本信息,是通过广播通知方式在本地更新后的最高版本信息,且所提取的最高版本信息与该本地的组织标识在数据管理平台上对应的最高版本信息相匹配,则不会再基于主动同步方式,在业务节点本地更新该本地的组织标识对应的数据和最高版本信息。相应地,若通过主动同步方式已将该更新的数据同步至业务节点本地,则业务节点基于数据更新通知,从数据管理平台上获取的与相关联的目标组织标识对应的最高版本信息,与该目标组织标识在业务节点本地对应的最高版本信息一致,则无需再通过广播通知的方式,再次更新目标组织表示在业务节点本地对应的数据和最高版本信息。
其中,通过异步执行的方式将基于主动同步方式的数据同步方法,与基于广播通知方式的数据同步方法相结合,这样,在通过广播通知方式未成功同步的更新的数据,能够通过主动同步的方式进行同步,以确保数据管理平台与业务节点上数据的一致性,从而能够保证业务节点进行业务处理时所基于的数据的正确性。可以理解,上述广播通知方式也可理解为异步通知方式或广播式异步通知方式。
图5为一个实施例中通过广播通知方式实现数据同步方法的时序图。数据管理平台根据所获取到的数据更新请求,更新该数据更新请求中的组织标识在本地对应的数据和版本信息,将更新后的版本信息作为该组织标识在本地对应的最高版本信息M,并进行记录。数据管理平台在更新组织标识对应的数据和版本信息后,触发生成数据更新通知,并广播至区块链网络中的业务节点。业务节点通过运行于其上的数据管理代理,根据数据更新通知触发生成版本信息获取请求,以从数据管理平台获取与该业务节点相关联的目标组织标识和相应的最高版本信息M。业务节点通过数据管理代理,将目标组织标识在本地对应的最高版本信息N与在数据管理平台上对应的最高版本信息M进行比较。当最高版本信息N与最高版本信息M不匹配时,业务节点通过数据管理代理将携带有目标组织标识的数据同步请求发送至数据管理平台,以从数据管理平台获取该目标组织标识对应的更新的数据。业务节点通过数据管理代理接收数据管理平台针对数据同步请求反馈的更新的数据,将该更新的数据同步至缓存区域,并更新目标组织标识在本地对应的最高版本信息N,也就是将最高版本信息M作为目标组织标识对应的最高版本信息记录在本地。
在通过广播通知方式实现数据同步的过程中,业务节点可提供正常的业务处理或服务,且在进行业务处理时与数据管理平台和业务管理代理无交互流程。具体地,业务节点在获取到业务请求时,根据业务请求中的组织标识向缓存区域请求获取该组织标识对应的数据,并接收缓存区域对应返回的数据。业务节点基于从缓存区域获取到的数据和业务请求中的业务数据进行业务处理,并通过区块链网络中的共识节点将处理得到的数据写入区块链中。其中,业务请求可以是开票请求、报销请求和红冲请求,业务节点将相应开票数据、报销数据或红冲数据发送至共识节点进行入链操作,并接收共识节点在入链成功后对应返回的提示信息。
在一个实施例中,数据管理平台具体可以是TPKI(Tencent Public KeyInfrastructure,公钥基础设施)。数据管理代理具体可以是TPKI_Agent(TPKI 代理)。业务节点上部署有SPV(电子票据业务逻辑部署单元),可包括税局 SPV和服务商SPV。数据管理代理具体可部署于业务节点上的SPV中。缓存区域具体可以是Shm(shared memory,共享内存)。业务节点具体可以是Bers节点。共识节点具体可以是TrstSQL(区块链底层实现),兼容Mysql协议,支持多种共识算法实现。
图6为一个实施例中通过主动同步方式实现数据同步方法的时序图。区块链网络中的业务节点,通过运行于其上的数据管理代理在本地维持心跳包,当满足主动同步条件时,获取本地的组织标识在本地对应的最高版本信息N,也就是获取本地记录的与本地的组织标识对应的最高版本信息N。业务节点通过数据管理代理将从本地获取的最高版本信息N发送至数据管理平台。数据管理平台将业务节点本地的组织标识在数据管理平台对应的最高版本信息M,与所接收到的相应最高版本信息N进行比较,并在最高版本信息M与相应的最高版本信息N 不匹配的组织标识,作为相应业务节点相关联的目标组织标识,并将目标组织标识和目标组织标识在数据管理平台对应的最高版本信息M反馈至相应业务节点。业务节点通过数据管理代理接收数据管理平台反馈的目标组织标识和相应的最高版本信息M,将携带目标组织标识的数据同步请求发送至数据管理平台,接收数据管理平台针对数据同步请求中的目标组织标识反馈的更新的数据,并将更新的数据同步至缓存区域,以及将目标组织标识在本地对应的最高版本信息N更新为最高版本信息M。
在通过主动同步方式实现数据同步的过程中,业务节点可提供正常的业务处理或服务,且在进行业务处理时与数据管理平台和业务管理代理无交互流程。具体地,在通过主动同步方式将数据管理平台上更新的数据同步至业务节点本地的过程中,业务节点可按照类似于图5中所示的流程,基于所获取到的业务请求,从缓存区域获取业务请求指定的组织标识对应的数据,以进行业务处理,并将处理得到的数据通过共识节点写入区块链中。
在一个实施例中,图6中所示的处理流程仅为示例,并不用于具体限定。比如,数据管理平台在确定业务节点本地的组织标识,在数据管理平台上对应的最高版本信息M,与在业务节点本地对应的最高版本信息N不匹配时,可直接将该组织标识在数据管理平台上对应的最高版本信息M和更新的数据同步至相应业务节点。
图7为一个实施例中数据同步方法所应用于的区块链电子票据系统的架构图。区块链电子票据系统包括数据管理平台、第三方平台和区块链网络,第三方平台包括区块链电子税局平台和区块链税务链管理平台,区块链网络包括多个区块链节点,区块链节点具体可包括业务节点和共识节点。业务节点采用分布式部署方式,业务节点与共识节点相对应。其中,区块链电子税局平台对接企业,能够为待接入区块链电子票据系统的企业提供企业注册、企业变更服务商、企业开启或关闭开票功能、企业变更税率等开票信息等功能。区块链税务链管理平台对接税局,能够给税局管理人员提供企业或服务商注册、企业或服务商信息查询、开启或关停企业权限等功能。
数据管理平台是一种基于公钥算法和技术,为区块链节点通信提供安全服务器的中心化基础设施,是创建、颁发、管理、注销公钥数字证书所涉及到的所有软件和硬件的集合体。数据管理平台的核心元素是数字证书,执行者是CA 证书机构。数据管理平台可供所有系统或平台查询调用者数字证书、以及登录自身的数字证书。数据管理平台本地存储有每个组织标识对应的最高版本信息,也就是存储有每个组织标识对应的数据的最高版本信息。数据管理平台在本地存储有通知队列,通知队列中存储有待广播的数据更新通知。业务节点上运行有数据管理代理,业务节点通过运行于其上的数据管理代理与数据管理平台进行通信。业务节点用于实现开票、报销和红冲等业务功能。区块链电子票据系统可通过数据管理平台异步通知和业务节点主动拉取相结合的方式,将数据管理平台上更新的数据同步至相应的业务节点。企业可通过区块链电子税局平台更新数据管理平台上的数据,税局管理人员也可通过区块链税务链管理平台更新数据管理平台上的数据。这样,能够实现区块链电子票据系统中,分布式部署的业务节点与数据管理平台的低耦合,数据同步操作不会影响业务节点的业务逻辑处理或操作。
在一个实施例中,当组织标识在数据管理平台上对应的数据存在更新时,数据管理平台在本地记录组织标识对应的最高版本信息,并向区块链网络中的业务节点异步通知存在数据更新的组织标识。业务节点根据自身相关联的、且存在数据更新的目标组织标识,主动从数据管理平台获取该目标组织标识对应的更新的数据。或者,业务节点维持心跳包,并在满足主动同步条件时,依据本地记录的最高版本信息主动从数据管理平台获取存在数据更新的组织标识,并将所获取的组织标识对应的更新的数据同步至本地。
在一个实施例中,通知队列中缓存的数据更新通知中携带有在数据管理平台上存在数据更新的组织标识,以及组织标识在数据管理平台上对应的最高版本信息。这样,通知队列中缓存有存在数据更新的组织标识和相应的最高版本信息。
在一个实施例中,数据管理平台在本地针对组织标识对应更新的数据可以是组织信息,也可以是关联信息。组织信息比如企业信息,关联信息比如企业与服务商的代理关系。组织信息具体可以携带于组织对应的数字证书中,这样,更新的数据也可以数字证书,当组织对应的组织信息需要更新时,数据管理平台会在本地更新相应组织标识对应的数字证书中的组织信息,由此实现组织标识对应的数字证书的更新。
在一个实施例中,区块链电子票据系统通过数据管理平台进行接入企业和服务商的注册、审批、认证等管理。认证通过后,数据管理平台生成企业和服务商的公私钥及账户地址等接入区块链服务的虚拟标识,同时生成应用于区块链电子票据中的企业和服务商的数字证书。区块链电子票据系统中分布式部署的业务节点,在执行开票、报销和红冲等操作前,需要先获取企业和服务商的数字证书,查询企业和服务商的代理关系。业务节点在本地缓存企业和服务商的相关数据,以避免与数据管理平台频繁进行业务交互,也就是避免在业务处理过程中频繁与数据管理平台进行数据交互,能够提升业务节点的并发处理性能,从而能够提升区块链电子票据系统的并发处理能力,以及提升业务节点的管理功能。
在去中心化的业务节点部署方式中,当数据管理平台中企业和服务商的相关数据发生更新后,若业务节点无法及时获取更新的数据,仍然基于本地缓存的且尚未更新的数据进行业务处理,将会导致错误的执行结果。
对于复杂系统内部的多模块交互,目前通常通过模块强关联或模块弱关联的方式来实现。模块强关联是指每次进行业务处理时,调用方模块向被调用方模块发起交互请求,以从被调用方模块获取最新数据。模块强关联方式下,系统对外提供服务,在处理内部数据时,每次都需要进行模块间数据请求交互,模块间高度耦合,系统的并发处理能力受限。尤其是在被调用方模块异常时,会导致整个系统崩溃。模块弱关联是指调用方模块批量加载被调用方模块的数据,生成缓存数据,并定期向被调用方模块发起交互请求,以实现缓存数据的定期更新。在模块弱耦合方式下,系统对外提供服务,调用方模块不能保证缓存数据为最新的数据,数据的准确性依赖于被调用方模块的数据更新频率,也就是依赖于被调用方模块的数据更新频率与发起交互请求的周期之间的关系。
然而,区块链电子票据系统采用数据管理平台中心化部署和业务节点分布式部署的方式,依据数据的最高版本信息,也就是组织标识对应的最高版本信息,通过异步通知的方式将数据管理平台上更新的数据及时同步至业务节点的缓存区域中,以保证业务节点上缓存的数据正确性,从而保证业务节点执行业务处理时数据的准确性,也就是业务节点上开票、报销、红冲和查询等业务处理的正常进行。可以理解,区块链电子票据系统通过异步通知和主动获取相结合的方式,将数据管理平台上更新的数据及时而准确的同步至业务节点,能够进一步保证业务节点上数据的准确性。异步通知也即广播通知,主动获取也即主动拉取或主动同步。
在一个实施例中,电子票据具体可以是电子发票,是一种运用区块链技术开具的可追溯且不可篡改的数字资产。电子票据的开具不需要纸质,也不需要特殊设备,也不需要预先领用。电子票据与现行票据具有同等法律效力。
应该理解的是,虽然本申请各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图8所示,在一个实施例中,提供了一种数据同步装置800,该数据同步装置包括:接收模块802、获取模块804、发送模块806和同步模块808,其中,
接收模块802,用于接收数据管理平台广播的数据更新通知,数据更新通知在数据管理平台上的组织标识对应的数据和相应版本信息更新后触发。
获取模块804,用于根据数据更新通知,获取数据管理平台上与区块链网络中的业务节点相关联的目标组织标识对应的最高版本信息。
发送模块806,用于当目标组织标识在本地对应的最高版本信息与所获取的最高版本信息不匹配时,将携带目标组织标识的数据同步请求发送至数据管理平台。
同步模块808,用于将数据管理平台针对数据同步请求反馈的更新的数据同步至本地,并更新本地的最高版本信息。
在一个实施例中,发送模块806,还用于对目标组织标识进行签名得到签名数据;将携带有目标组织标识和签名数据的数据同步请求发送至数据管理平台;发送的数据同步请求用于指示数据管理平台在签名数据通过验证时,反馈目标组织标识对应的更新的数据。
在一个实施例中,获取模块804,还用于当满足主动同步条件时,提取与本地的组织标识对应的最高版本信息;发送模块806,还用于将提取的最高版本信息发送至数据管理平台;同步模块808,还用于当本地的组织标识在数据管理平台上对应的最高版本信息与发送的最高版本信息不匹配时,则将数据管理平台上与本地的组织标识对应的最高版本信息和相应更新的数据同步至本地。
在一个实施例中,业务节点上运行有数据管理代理;数据同步方法通过数据管理代理执行;同步模块808,还用于通过数据管理代理,将数据管理平台针对数据同步请求反馈的更新的数据同步至本地的缓存区域。
在一个实施例中,上述数据同步装置800还包括:业务处理模块;
业务处理模块,用于获取业务请求;根据业务请求中的组织标识,从本地获取当前的最高版本信息对应的数据;基于获取的数据响应业务请求。
如图9所示,在一个实施例中,提供了一种数据同步装置900,该数据同步装置包括:获取模块902、更新模块904、广播模块906和同步模块908,其中,
获取模块902,用于获取携带有组织标识的数据更新请求。
更新模块904,用于根据数据更新请求在本地更新组织标识对应的数据和相应版本信息,并触发生成数据更新通知。
广播模块906,用于向区块链网络广播数据更新通知;广播的数据更新通知用于指示区块链网络中的各业务节点,当相关联的目标组织标识在本地对应的最高版本信息,与在数据管理平台上对应的最高版本信息不匹配时,生成并反馈数据同步请求。
同步模块908,用于将数据同步请求中的目标组织标识所对应的更新的数据同步至相应业务节点。
在一个实施例中,同步模块908,还用于解析数据同步请求得到目标组织标识和相应的签名数据;当签名数据通过验证时,将解析得到的目标组织标识对应的更新的数据同步至相应业务节点。
在一个实施例中,上述数据同步装置900还包括:接收模块;
接收模块,用于接收区块链网络中的业务节点发送的最高版本信息;接收的最高版本信息由业务节点在满足主动同步条件时,根据本地的组织标识对应获取;同步模块908,还用于当本地的组织标识在数据管理平台上对应的最高版本信息,与接收的最高版本信息不匹配时,则将本地与本地的组织标识对应的最高版本信息和相应更新的数据同步至业务节点。
在一个实施例中,广播模块906,还用于当广播数据更新通知后达到预设时长,仍未接收到区块链网络中的每个业务节点反馈的应答信息时,返回至向区块链网络广播数据更新通知的步骤继续执行,直至达到预设次数或者接收到每个业务节点反馈的应答信息;预设时长与广播数据更新通知的次数成正相关关系。
图10示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的业务节点或数据管理平台。如图10所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现数据同步方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行数据同步方法。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的数据同步装置可以实现为一种计算机程序的形式,计算机程序可在如图10所示的计算机设备上运行。计算机设备的存储器中可存储组成该数据同步装置的各个程序模块,比如,图8所示的接收模块 802、获取模块804、发送模块806和同步模块808。还比如,图9所示的获取模块902、更新模块904、广播模块906和同步模块908。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的数据同步方法中的步骤。
例如,图10所示的计算机设备可以通过如图8所示的数据同步装置中的接收模块802执行步骤S202。计算机设备可通过获取模块804执行步骤S204。计算机设备可通过发送模块806执行步骤S206。计算机设备可通过同步模块808 执行步骤S208。
还例如,图10所示的计算机设备可以通过如图9所示的数据同步装置中的获取模块902执行步骤S302。计算机设备可通过更新模块904执行步骤S304。计算机设备可通过广播模块906执行步骤S306。计算机设备可通过同步模块908 执行步骤S308。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述数据同步方法的步骤。此处数据同步方法的步骤可以是上述各个实施例的数据同步方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述数据同步方法的步骤。此处数据同步方法的步骤可以是上述各个实施例的数据同步方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM (DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (14)
1.一种数据同步方法,其特征在于,所述方法包括:
通过数据管理代理,接收数据管理平台广播的数据更新通知,所述数据更新通知在所述数据管理平台上的组织标识对应的数据和相应版本信息更新后触发,所述数据更新通知携带聚类结果中每个组织标识对应的最高版本信息,所述聚类结果为所述数据管理平台将存在数据更新的组织标识按照组织标识相关联的业务节点进行聚类得到,所述业务节点基于业务相关的组织数据进行业务处理,所述组织数据为所述组织标识对应的数据;
通过所述数据管理代理,根据所述数据更新通知,获取所述数据管理平台上与区块链网络中的业务节点相关联的目标组织标识对应的最高版本信息;
当目标组织标识在本地对应的最高版本信息与所获取的最高版本信息不匹配时,通过所述数据管理代理,将携带所述目标组织标识的数据同步请求发送至所述数据管理平台;
通过所述数据管理代理,将所述数据管理平台针对所述数据同步请求反馈的更新的数据同步至本地,并更新本地的最高版本信息;
当满足主动同步条件时,提取与本地的组织标识对应的最高版本信息,将提取的所述最高版本信息发送至所述数据管理平台,当本地的组织标识在所述数据管理平台上对应的最高版本信息与发送的所述最高版本信息不匹配时,则将所述数据管理平台上与本地的组织标识对应的最高版本信息和相应更新的数据同步至本地。
2.根据权利要求1所述的方法,其特征在于,所述将携带所述目标组织标识的数据同步请求发送至所述数据管理平台,包括:
对所述目标组织标识进行签名得到签名数据;
将携带有所述目标组织标识和所述签名数据的数据同步请求发送至所述数据管理平台;发送的所述数据同步请求用于指示所述数据管理平台在所述签名数据通过验证时,反馈所述目标组织标识对应的更新的数据。
3.根据权利要求1至2任一项所述的方法,其特征在于,所述方法还包括:
获取业务请求;
根据所述业务请求中的组织标识,从本地获取当前的最高版本信息对应的数据;
基于获取的所述数据响应所述业务请求。
4.一种数据同步方法,所述方法包括:
获取携带有组织标识的数据更新请求;
根据所述数据更新请求在本地更新所述组织标识对应的数据和相应版本信息,并触发生成数据更新通知;
向区块链网络广播所述数据更新通知;广播的所述数据更新通知用于指示所述区块链网络中的各业务节点,当相关联的目标组织标识在本地对应的最高版本信息,与在数据管理平台上对应的最高版本信息不匹配时,通过运行的数据管理代理生成并反馈数据同步请求;
将所述数据同步请求中的目标组织标识所对应的更新的数据同步至相应业务节点;
所述触发生成数据更新通知包括:
将存在数据更新的组织标识按照组织标识相关联的业务节点进行聚类,所述业务节点基于业务相关的组织数据进行业务处理,所述组织数据为所述组织标识对应的数据;
根据聚类结果,触发生成携带聚类结果中每个组织标识对应的最高版本信息的数据更新通知;
所述向区块链网络广播所述数据更新通知包括:
将生成的数据更新通知发送至相应的业务节点;
当接收到所述区块链网络中的业务节点在满足主动同步条件时,发送的根据本地的组织标识对应获取的最高版本信息,且所述本地的组织标识在数据管理平台上对应的最高版本信息,与接收的所述最高版本信息不匹配时,将本地与所述本地的组织标识对应的最高版本信息和相应更新的数据同步至所述业务节点。
5.根据权利要求4所述的方法,其特征在于,所述将所述数据同步请求中的目标组织标识所对应的更新的数据同步至相应业务节点,包括:
解析所述数据同步请求得到目标组织标识和相应的签名数据;
当所述签名数据通过验证时,将解析得到的所述目标组织标识对应的更新的数据同步至相应业务节点。
6.根据权利要求4至5任一项所述的方法,其特征在于,所述向区块链网络广播所述数据更新通知之后,所述方法还包括:
当广播所述数据更新通知后达到预设时长,仍未接收到所述区块链网络中的每个业务节点反馈的应答信息时,返回至所述向区块链网络广播所述数据更新通知的步骤继续执行,直至达到预设次数或者接收到每个业务节点反馈的应答信息;所述预设时长与广播所述数据更新通知的次数成正相关关系。
7.一种数据同步装置,其特征在于,所述装置包括:
接收模块,用于通过数据管理代理,接收数据管理平台广播的数据更新通知,所述数据更新通知在所述数据管理平台上的组织标识对应的数据和相应版本信息更新后触发,所述数据更新通知携带聚类结果中每个组织标识对应的最高版本信息,所述聚类结果为所述数据管理平台将存在数据更新的组织标识按照组织标识相关联的业务节点进行聚类得到,所述业务节点基于业务相关的组织数据进行业务处理,所述组织数据为所述组织标识对应的数据;
获取模块,用于通过所述数据管理代理,根据所述数据更新通知,获取所述数据管理平台上与区块链网络中的业务节点相关联的目标组织标识对应的最高版本信息;
发送模块,用于当目标组织标识在本地对应的最高版本信息与所获取的最高版本信息不匹配时,通过所述数据管理代理,将携带所述目标组织标识的数据同步请求发送至所述数据管理平台;
同步模块,用于通过所述数据管理代理,将所述数据管理平台针对所述数据同步请求反馈的更新的数据同步至本地,并更新本地的最高版本信息;
获取模块,还用于当满足主动同步条件时,提取与本地的组织标识对应的最高版本信息;发送模块,还用于将提取的最高版本信息发送至数据管理平台;同步模块,还用于当本地的组织标识在数据管理平台上对应的最高版本信息与发送的最高版本信息不匹配时,则将数据管理平台上与本地的组织标识对应的最高版本信息和相应更新的数据同步至本地。
8.根据权利要求7所述的装置,其特征在于,发送模块,还用于对目标组织标识进行签名得到签名数据;将携带有目标组织标识和签名数据的数据同步请求发送至数据管理平台;发送的数据同步请求用于指示数据管理平台在签名数据通过验证时,反馈目标组织标识对应的更新的数据。
9.根据权利要求7至8任一项所述的装置,其特征在于,数据同步装置还包括:业务处理模块;业务处理模块,用于获取业务请求;根据业务请求中的组织标识,从本地获取当前的最高版本信息对应的数据;基于获取的数据响应业务请求。
10.一种数据同步装置,其特征在于,所述装置包括:
获取模块,用于获取携带有组织标识的数据更新请求;
更新模块,用于根据所述数据更新请求在本地更新所述组织标识对应的数据和相应版本信息,并触发生成数据更新通知;
广播模块,用于向区块链网络广播所述数据更新通知;广播的所述数据更新通知用于指示所述区块链网络中的各业务节点,当相关联的目标组织标识在本地对应的最高版本信息,与在数据管理平台上对应的最高版本信息不匹配时,通过运行的数据管理代理生成并反馈数据同步请求;
同步模块,用于将所述数据同步请求中的目标组织标识所对应的更新的数据同步至相应业务节点;
所述更新模块还用于将存在数据更新的组织标识按照组织标识相关联的业务节点进行聚类,根据聚类结果,触发生成携带聚类结果中每个组织标识对应的最高版本信息的数据更新通知,所述业务节点基于业务相关的组织数据进行业务处理,所述组织数据为所述组织标识对应的数据;
所述广播模块还用于将生成的数据更新通知发送至相应的业务节点;
接收模块,用于接收区块链网络中的业务节点发送的最高版本信息;接收的最高版本信息由业务节点在满足主动同步条件时,根据本地的组织标识对应获取;同步模块,还用于当本地的组织标识在数据管理平台上对应的最高版本信息,与接收的最高版本信息不匹配时,则将本地与本地的组织标识对应的最高版本信息和相应更新的数据同步至业务节点。
11.根据权利要求10所述的装置,其特征在于,同步模块,还用于解析数据同步请求得到目标组织标识和相应的签名数据;当签名数据通过验证时,将解析得到的目标组织标识对应的更新的数据同步至相应业务节点。
12.根据权利要求10至11任一项所述的装置,其特征在于,广播模块,还用于当广播数据更新通知后达到预设时长,仍未接收到区块链网络中的每个业务节点反馈的应答信息时,返回至向区块链网络广播数据更新通知的步骤继续执行,直至达到预设次数或者接收到每个业务节点反馈的应答信息;预设时长与广播数据更新通知的次数成正相关关系。
13.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至6中任一项所述方法的步骤。
14.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至6中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910835208.8A CN110572450B (zh) | 2019-09-05 | 2019-09-05 | 数据同步方法、装置、计算机可读存储介质和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910835208.8A CN110572450B (zh) | 2019-09-05 | 2019-09-05 | 数据同步方法、装置、计算机可读存储介质和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110572450A CN110572450A (zh) | 2019-12-13 |
CN110572450B true CN110572450B (zh) | 2022-09-30 |
Family
ID=68777871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910835208.8A Active CN110572450B (zh) | 2019-09-05 | 2019-09-05 | 数据同步方法、装置、计算机可读存储介质和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110572450B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111124759A (zh) * | 2019-12-27 | 2020-05-08 | 浪潮通用软件有限公司 | 一种混合云架构下数据同步的方法、设备及介质 |
CN111177171A (zh) * | 2019-12-31 | 2020-05-19 | 上海分布信息科技有限公司 | 基于区块链的业务数据认证与管理方法及系统 |
CN113448971A (zh) * | 2020-03-24 | 2021-09-28 | 北京字节跳动网络技术有限公司 | 基于分布式系统的数据更新方法、计算节点和存储介质 |
CN111475575B (zh) * | 2020-04-09 | 2021-08-10 | 腾讯科技(深圳)有限公司 | 基于区块链的数据同步方法、装置及计算机可读存储介质 |
CN111679853A (zh) * | 2020-06-08 | 2020-09-18 | 中国银行股份有限公司 | 开源软件的发布方法、装置、计算机设备及可读存储介质 |
CN113872923B (zh) * | 2020-06-30 | 2023-06-06 | 成都质数斯达克科技有限公司 | 基于区块链系统的交易方法、更新方法、装置、设备及存储介质 |
CN112463882A (zh) * | 2020-11-20 | 2021-03-09 | 广东省安心加科技有限公司 | 数据同步方法及云平台、边缘端 |
CN112488834B (zh) * | 2020-11-24 | 2024-03-19 | 成都质数斯达克科技有限公司 | 节点管理方法、装置、电子设备及可读存储介质 |
CN112434111A (zh) * | 2020-11-26 | 2021-03-02 | 平安普惠企业管理有限公司 | 基础数据同步方法、装置、设备及存储介质 |
CN112714149A (zh) * | 2020-11-27 | 2021-04-27 | 北京飞讯数码科技有限公司 | 数据同步方法、装置、计算机设备及存储介质 |
CN113010600B (zh) * | 2021-02-02 | 2023-01-31 | 腾讯科技(深圳)有限公司 | 一种基于区块链的数据管理系统、方法、相关设备及介质 |
CN114579667A (zh) * | 2022-04-28 | 2022-06-03 | 深圳市华曦达科技股份有限公司 | 一种HBase数据增量同步的方法、装置及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103312669A (zh) * | 2012-03-09 | 2013-09-18 | 广州从兴电子开发有限公司 | 一种实现数据一致性保障方法、装置及系统 |
CN105453127A (zh) * | 2014-07-31 | 2016-03-30 | 飞索科技有限公司 | 分布式服务器-客户端环境中的文档同步的方法和系统 |
CN109636427A (zh) * | 2019-01-29 | 2019-04-16 | 深圳市智税链科技有限公司 | 基于区块链系统的业务处理方法、装置、介质及电子设备 |
CN109933629A (zh) * | 2019-03-15 | 2019-06-25 | 腾讯科技(深圳)有限公司 | 数据同步方法、装置、计算机设备以及可读存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11568703B2 (en) * | 2016-06-08 | 2023-01-31 | Sichuan Energy Internet Res. Inst., Tsinghua Univ. | Systems and methods for wireless charging stations |
CN108737491B (zh) * | 2018-03-23 | 2020-09-01 | 腾讯科技(深圳)有限公司 | 信息推送方法和装置以及存储介质、电子装置 |
-
2019
- 2019-09-05 CN CN201910835208.8A patent/CN110572450B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103312669A (zh) * | 2012-03-09 | 2013-09-18 | 广州从兴电子开发有限公司 | 一种实现数据一致性保障方法、装置及系统 |
CN105453127A (zh) * | 2014-07-31 | 2016-03-30 | 飞索科技有限公司 | 分布式服务器-客户端环境中的文档同步的方法和系统 |
CN109636427A (zh) * | 2019-01-29 | 2019-04-16 | 深圳市智税链科技有限公司 | 基于区块链系统的业务处理方法、装置、介质及电子设备 |
CN109933629A (zh) * | 2019-03-15 | 2019-06-25 | 腾讯科技(深圳)有限公司 | 数据同步方法、装置、计算机设备以及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110572450A (zh) | 2019-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110572450B (zh) | 数据同步方法、装置、计算机可读存储介质和计算机设备 | |
CN110543788B (zh) | 数据存储方法、装置、计算机可读存储介质和计算机设备 | |
CN110348242B (zh) | 业务请求处理方法及装置 | |
CN107276765B (zh) | 区块链中共识的处理方法及装置 | |
CN110599266B (zh) | 电子票据数据处理方法、装置、计算机设备和存储介质 | |
CN110602116B (zh) | 基于区块链的数据验证方法、装置和计算机可读存储介质 | |
CN110633963B (zh) | 电子票据处理方法、装置、计算机可读存储介质和设备 | |
WO2021233049A1 (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN110784495B (zh) | 基于区块链的大数据集群系统的发现与配置信息管理方法 | |
CN110224855B (zh) | 微服务实例的注册方法、装置、计算机设备及存储介质 | |
CN110602095B (zh) | 基于区块链网络的数据分发、存储方法和装置 | |
CN111275438B (zh) | 区块链网络的共识方法、装置、设备和存储介质 | |
CN110929229A (zh) | 一种基于区块链的office文档可信性验证方法及系统 | |
CN110224833B (zh) | 票据数据处理方法和系统 | |
CN110597541B (zh) | 基于区块链的接口更新处理方法、装置、设备及存储介质 | |
CN110730081B (zh) | 基于区块链网络的证书吊销方法、相关设备及介质 | |
CN110597918A (zh) | 一种账户管理方法、装置及计算机可读存储介质 | |
CN112651001A (zh) | 访问请求的鉴权方法、装置、设备及可读存储介质 | |
CN108282484B (zh) | 密码获取方法、装置、计算机设备和存储介质 | |
CN111666205A (zh) | 一种数据审计的方法、系统、计算机设备和存储介质 | |
CN111597543A (zh) | 基于区块链智能合约的广域进程访问权限认证方法及系统 | |
CN111159233B (zh) | 分布式缓存方法、系统、计算机设备以及存储介质 | |
CN114584326B (zh) | 区块链数据处理方法、装置、电子设备及存储介质 | |
CN108882230B (zh) | 通话记录管理方法、装置及系统 | |
CN115510366A (zh) | 业务消息推送方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |