一种区块链跨分片交易数据处理方法及装置制造方法及图纸

技术编号:22218727 阅读:53 留言:0更新日期:2019-09-30 01:11
本发明专利技术公开了一种区块链跨分片交易数据处理方法及装置,该方法包括获取用户发送的交易数据,并对交易数据进行解析,得到交易数据涉及的账号并确定账号对应的分片信息,根据账号对应的分片信息,确定分片执行表,分片执行表包括各分片执行预处理的顺序以及预处理时间阈值,将交易数据根据分片执行表在各分片间传递并预处理,根据各分片对应的共识节点对交易数据的预处理结果以及预处理时间,确定交易数据的处理结果。通过对交易数据进行解析得到账号信息并确定账号对应的分片信息,从而确定出各分片执行预处理的顺序,然后依次在各分片间传递并预处理,可以实现去中心化的交易数据跨分片执行,并保证了交易数据的一致性与原子性。

A Data Processing Method and Device for Block Chain Transaction

【技术实现步骤摘要】
一种区块链跨分片交易数据处理方法及装置
本专利技术实施例涉及金融
,尤其涉及一种区块链跨分片交易数据处理方法及装置。
技术介绍
区块链(blockchain)是一种新型的去中心化数据共识协议,可以在无中心节点主导的环境下形成分布式的数据一致性。在已有的区块链系统中,所有节点都需要维护一份完整的全量数据,因此区块链系统的吞吐率不能随着节点数量的增加而扩展。在电子支付等高TPS(TransactionPerSecond,每秒交易数量)环境中,区块链的性能是制约其应用的一个主要瓶颈。当前提高吞吐率的主要技术手段是将交易数据分片处理,既不同的交易存储在不同的共识节点上,以此降低数据冗余提高系统吞吐率。但在区块链系统中不存在统一调度的中心节点,因此如何维护交易数据在不同的分片上的一致性是需要解决的问题。目前,解决的方案是当需要处理跨分片交易时,使用可信第三方或者等效的集中式管理节点实现数据的一致性。类似于传统的分布式数据库系统,由可信节点(或者指定某一节点)实现数据的原子操作,进而将操作结果同步到原始的分片中,从而实现跨分片的一致性数据操作。
技术实现思路
本专利技术实施例提供一种区块链跨分片交易数据处理方法及装置,用以实现在去中心化的环境中数据事务性操作,从而保证跨分片交易数据的一致性。第一方面,本专利技术实施例提供一种区块链跨分片交易数据处理方法,包括:获取用户发送的交易数据,并对所述交易数据进行解析,得到所述交易数据涉及的账号并确定所述账号对应的分片信息;根据所述账号对应的分片信息,确定分片执行表,所述分片执行表包括各分片执行预处理的顺序以及预处理时间阈值;将所述交易数据根据所述分片执行表在各分片间传递并预处理;根据各分片对应的共识节点对所述交易数据的预处理结果以及预处理时间,确定所述交易数据的处理结果。上述技术方案中,通过对交易数据进行解析得到账号并确定对应的分片信息,从而确定出各分片执行预处理的顺序,然后依次在各分片间传递并预处理,可以实现去中心化的交易数据跨分片执行,并保证了交易数据的一致性与原子性,数据一致性保护依赖于数据流本身,而不依赖于某种形式的中心节点实现加锁,不违背区块链的去中心化性质。可选的,所述确定所述账号对应的分片信息,包括:根据所述账号或所述账号的交易对象从分片分配表中查询到所述账号对应的分片信息,所述分片分配表中包括账号或交易对象与分片的对应关系;或根据所述账号的MD5(Message-DigestAlgorithm,消息摘要算法)值确定所述账号对应的分片信息。可选的,所述根据所述账号对应的分片信息,确定分片执行表,包括:按照所述交易数据接收的时间对所述对应的分片信息进行排序或者按照所述交易数据的交易对象对所述对应的分片信息进行划分,确定出所述分片执行表。可选的,所述将所述交易数据根据所述分片执行表在各分片间传递并预处理,包括:根据所述分片执行表中各分片的执行预处理的顺序,依次各分片对应的共识节点对所述交易数据进行预处理,并锁定各分片对应的账户中的资源,得到预处理结果并添加签名;其中,当前分片对应的共识节点预处理完毕后,后续分片对应的共识节点才开始执行预处理。可选的,所述根据各分片对应的共识节点对所述交易数据的预处理结果以及预处理时间,确定所述交易数据的处理结果,包括:若所述分片执行表中所有分片对应的共识节点的预处理时间均未超过其对应的预处理时间阈值,则确定所述交易数据处理完成,否则取消对本次交易的处理,并释放各分片对应的共识节点预处理时锁定的资源。第二方面,本专利技术实施例提供一种跨分片交易数据处理装置,包括:获取单元,用于获取用户发送的交易数据,并对所述交易数据进行解析,得到所述交易数据涉及的账号并确定所述账号对应的分片信息;处理单元,用于根据所述账号对应的分片信息,确定分片执行表,所述分片执行表包括各分片执行预处理的顺序以及预处理时间阈值;将所述交易数据根据所述分片执行表在各分片间传递并预处理;根据各分片对应的共识节点对所述交易数据的预处理结果以及预处理时间,确定所述交易数据的处理结果。可选的,所述获取单元具体用于:根据所述账号或所述账号的交易对象从分片分配表中查询到所述账号对应的分片信息,所述分片分配表中包括账号或交易对象与分片的对应关系;或根据所述账号的MD5值确定所述账号对应的分片信息。可选的,所述处理单元具体用于:按照所述交易数据接收的时间对所述对应的分片信息进行排序或者按照所述交易数据的交易对象对所述对应的分片信息进行划分,确定出所述分片执行表。可选的,所述处理单元具体用于:根据所述分片执行表中各分片的执行预处理的顺序,依次由各分片对应的共识节点对所述交易数据进行预处理,并锁定各分片对应的账户中的资源,得到预处理结果并添加签名;其中,当前分片对应的共识节点预处理完毕后,后续分片对应的共识节点才开始执行预处理。可选的,所述处理单元具体用于:若所述分片执行表中所有分片对应的共识节点的预处理时间均未超过其对应的预处理时间阈值,则确定所述交易数据处理完成,否则取消对本次交易的处理,并释放各分片对应的共识节点预处理时锁定的资源。第三方面,本专利技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行上述区块链跨分片交易数据处理方法。第四方面,本专利技术实施例还提供了一种计算设备,包括:存储器,用于存储程序指令;处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述区块链跨分片交易数据处理方法。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种系统架构的示意图;图2为本专利技术实施例提供的一种区块链跨分片交易数据处理方法的流程示意图;图3为本专利技术实施例提供的一种区块链跨分片交易数据处理装置的结构示意图。具体实施方式为了使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术作进一步地详细描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。图1示例性的示出了本专利技术实施例所适用的一种系统架构,该系统架构可以包括多个发送方100和区块链系统200。其中,发送方100用于与区块链系统200进行通信,将交易数据发送给区块链系统200进行处理并上链。区块链系统200由多个区块链节点210,与发送方100进行通信,用于处理和存储发送方100发送的交易数据。该多个区块链节点210可以相互连接通信,每个区块链节点中包括多个区块,区块用于存储发送方100发送的交易数据。需要说明的是,上述图1所示的结构仅是一种示例,本专利技术实施例对此不做限定。基于上述描述,图2示例性的示出了本专利技术实施例提供的一种区块链跨分片交易数据处理方法的流程,该流程可以区块链跨分片交易数据处理装置执行。如图2所示,该流程具体包括:步骤201,获取用户发送的交易数据,并对所述交易数据进行解析,得到所述交本文档来自技高网...

【技术保护点】
1.一种区块链跨分片交易数据处理方法,其特征在于,包括:获取用户发送的交易数据,并对所述交易数据进行解析,得到所述交易数据涉及的账号并确定所述账号对应的分片信息;根据所述账号对应的分片信息,确定分片执行表,所述分片执行表包括各分片执行预处理的顺序以及预处理时间阈值;将所述交易数据根据所述分片执行表在各分片间传递并预处理;根据各分片对应的共识节点对所述交易数据的预处理结果以及预处理时间,确定所述交易数据的处理结果。

【技术特征摘要】
1.一种区块链跨分片交易数据处理方法,其特征在于,包括:获取用户发送的交易数据,并对所述交易数据进行解析,得到所述交易数据涉及的账号并确定所述账号对应的分片信息;根据所述账号对应的分片信息,确定分片执行表,所述分片执行表包括各分片执行预处理的顺序以及预处理时间阈值;将所述交易数据根据所述分片执行表在各分片间传递并预处理;根据各分片对应的共识节点对所述交易数据的预处理结果以及预处理时间,确定所述交易数据的处理结果。2.如权利要求1所述的方法,其特征在于,所述确定所述账号对应的分片信息,包括:根据所述账号或所述账号的交易对象从分片分配表中查询到所述账号对应的分片信息,所述分片分配表中包括账号或交易对象与分片的对应关系;或根据所述账号的消息摘要算法MD5值确定所述账号对应的分片信息。3.如权利要求1所述的方法,其特征在于,所述根据所述账号对应的分片信息,确定分片执行表,包括:按照所述交易数据接收的时间对所述对应的分片信息进行排序或者按照所述交易数据的交易对象对所述对应的分片信息进行划分,确定出所述分片执行表。4.如权利要求1所述的方法,其特征在于,所述将所述交易数据根据所述分片执行表在各分片间传递并预处理,包括:根据所述分片执行表中各分片的执行预处理的顺序,依次由各分片对应的共识节点对所述交易数据进行预处理,并锁定各分片对应的账户中的资源,得到预处理结果并添加签名;其中,当前分片对应的共识节点预处理完毕后,后续分片对应的共识节点才开始执行预处理。5.如权利要求1至4任一项所述的方法,其特征在于,所述根据各分片对应的共识节点对所述交易数据的预处理结果以及预处理时间,确定所述交易数据的处理结果,包括:若所述分片执行表中所有分片对应的共识节点的预处理时间均未超过其对应的预处理时间阈值,则确定所述交易数据处理完成,否则取消对本次交易的处理,并释放各分片对应的共识节点预处理时锁定的资源。6.一种区块链跨分片交易数据处理装置,其特征在于,包括:获取单元,用于获取用户发送的交易数...

【专利技术属性】
技术研发人员:熊璐杨阳陈舟黄自力范磊
申请(专利权)人:中国银联股份有限公司
类型:发明
国别省市:上海,31

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

1