CN109146447A - 区块链透明分片方法、装置及系统 - Google Patents
区块链透明分片方法、装置及系统 Download PDFInfo
- Publication number
- CN109146447A CN109146447A CN201810743807.2A CN201810743807A CN109146447A CN 109146447 A CN109146447 A CN 109146447A CN 201810743807 A CN201810743807 A CN 201810743807A CN 109146447 A CN109146447 A CN 109146447A
- Authority
- CN
- China
- Prior art keywords
- fragment
- node
- transaction data
- block chain
- transparent
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/10—Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
- G06Q20/102—Bill distribution or payments
-
- 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/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- 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/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
Abstract
本发明提供了一种区块链透明分片方法、装置及系统,所述方法包含:获取服务于区块链的多个分片节点信息,根据所述分片节点信息通过一致性哈希算法获得分片节点与分片的对应关系;根据分片节点与分片的对应关系和所述分片节点,于DHT网络上构建与所述分片对应的ReDiR树;获取交易数据的合约位址信息,根据所述合约位址信息通过一致性哈希算法获得交易数据与分片的对应关系;根据所述交易数据与分片的对应关系,于对应分片中获得分片节点;将所述交易数据发送至所述分片节点。
Description
技术领域
本发明涉及区块链应用领域,尤指一种区块链透明分片方法及系统。
背景技术
目前经典架构的区块链网络都遇到了极大的性能瓶颈,例如所熟知比特币和以太坊,尽管绝大多数交易之间并无关联性,但是所有的交易都串行执行,而且网络上的所有全节点都需要执行所有的交易,这就造成了极大的计算资源的浪费。
为了解决并行计算的问题,需要对区块链进行垂直切分,切分出多个分片,一个分片可以被看做一个子链,分片依附于主链,分片与分片之间在业务上相互独立,交易处于各自独立的空间中。分片架构是一种可显著提高网络吞吐量的架构,每个分片都有自己的共识节点,使得计算得以真正并行化。
但是分片给用户也带来更高的使用复杂性,节点和智能合约如何均衡分配到分片也是需要解决的问题。
在以太坊的分片架构中,节点可自主选择加入哪个分片,智能合约的发布及调用需要确定目标分片的节点地址,这种方案一方面会导致分片中节点数量、智能合约数量、交易负载不均衡,另一方面用户发布及调用合约使用不方便。
发明内容
本发明目的在于提供一种区块链透明分片方法及系统使节点和合约均衡分布在不同的分片中,有效提高用户的使用效率和解决交易负载不均衡等问题。
为达上述目的,本发明一实施例所提供的区块链透明分片方法具体包含:获取服务于区块链的多个分片节点信息,根据所述分片节点信息通过一致性哈希算法获得分片节点与分片的对应关系;根据分片节点与分片的对应关系和所述分片节点,于DHT(分布式哈希表)网络上构建与所述分片对应的ReDiR(Recursive Distributed Rendezvous)树;根据所述ReDiR树获得处理交易数据的分片节点。
在上述区块链透明分片方法中,优选的,根据分片节点与分片的对应关系和所述分片节点,于DHT网络上构建与所述分片对应的ReDiR树还包含:所述分片节点加入所述ReDiR树后,根据分片节点于所述ReDiR树中所处空间位置获得服务位置信息;将所述服务位置信息与所述分片节点信息绑定后发布至所述DHT网络中。
在上述区块链透明分片方法中,优选的,所述服务位置信息包含所述ReDiR树中的层级位置信息及所述分片节点的编号信息。
在上述区块链透明分片方法中,优选的,所述分片节点加入所述ReDiR树还包含:将所述分片节点的编号信息与预定阈值比较,根据比较结果获得所述分片节点在所述ReDiR树中的层级位置信息。
本发明一实施例提供一种区块链透明分片方法,所述方法包含:获取交易数据的合约位址信息,根据所述合约位址信息通过一致性哈希算法获得交易数据与分片的对应关系;根据所述交易数据与分片的对应关系,于对应分片中获得分片节点;将所述交易数据发送至所述分片节点。
在上述区块链透明分片方法中,优选的,根据所述交易数据与分片的对应关系,于对应分片中获得分片节点之前还包含:通过所述分片中的分片节点,于DHT网络上构建与所述分片对应的ReDiR树;根据所述交易数据与分片的对应关系,于对应分片的ReDiR树中获得分片节点。
在上述区块链透明分片方法中,优选的,根据所述交易数据与分片的对应关系,于对应分片中获得分片节点还包含:根据当前操作所述交易数据的用户的账户地址与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。
在上述区块链透明分片方法中,优选的,根据当前操作所述交易数据的用户的账户地址与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点还包含:根据当前操作所述交易数据的用户的账户地址于所述ReDiR树中生成资源地址信息;根据所述资源地址信息查询所述ReDiR树中分片节点的位址信息;根据查询结果调整所述资源地址信息。
在上述区块链透明分片方法中,优选的,根据所述交易数据与分片的对应关系,于对应分片中获得分片节点还包含:根据所述交易数据的合约位址信息与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。
在上述区块链透明分片方法中,优选的,根据所述逻辑距离获得处理所述交易数据的分片节点包含:通过异或运算获得所述逻辑距离,选择所述逻辑距离最小的分片节点作为处理所述交易数据的分片节点。
本发明一实施例还提供一种区块链透明分片装置,所述装置包含关系确定模块、构建模块和查询模块;所述关系确定模块用于获取服务于区块链的多个分片节点信息,根据所述分片节点信息通过一致性哈希算法获得分片节点与分片的对应关系;所述构建模块用于根据分片节点与分片的对应关系和所述分片节点,于DHT网络上构建与所述分片对应的ReDiR树;所述查询模块用于根据所述ReDiR树获得处理交易数据的分片节点。
在上述区块链透明分片装置中,优选的,所述构建模块还包含在所述分片节点加入所述ReDiR树后,根据分片节点于所述ReDiR树中所处空间位置获得服务位置信息;将所述服务位置信息与所述分片节点信息绑定后发布至所述DHT网络中。
本发明一实施例还提供一种区块链透明分片装置,所述装置包含合约处理模块、关系查询模块和发送模块;所述合约处理模块用于获取交易数据的合约位址信息,根据所述合约位址信息通过一致性哈希算法获得交易数据与分片的对应关系;所述关系查询模块用于根据所述交易数据与分片的对应关系,于对应分片中获得分片节点;所述发送模块用于将所述交易数据发送至所述分片节点。
在上述区块链透明分片装置中,优选的,所述装置还包含生成模块,所述生成模块用于通过所述分片中的分片节点,于DHT网络上构建与所述分片对应的ReDiR树;根据所述交易数据与分片的对应关系,于对应分片的ReDiR树中获得分片节点。
在上述区块链透明分片装置中,优选的,所述关系查询模块还包含距离计算模块,所述距离计算模块用于根据当前操作所述交易数据的用户的账户地址或所述交易数据的合约位址信息中一个,与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。
本发明还提供一种区块链透明分片系统,所述系统包含构建单元和处理单元;所述构建单元用于获取服务于区块链的多个分片节点信息,根据所述分片节点信息通过一致性哈希算法获得分片节点与分片的对应关系;以及根据分片节点与分片的对应关系和所述分片节点,于DHT网络上构建与所述分片对应的ReDiR树;所述处理单元用于获取交易数据的合约位址信息,根据所述合约位址信息通过一致性哈希算法获得交易数据与分片的对应关系;以及根据所述交易数据与分片的对应关系,于对应分片中获得分片节点;将所述交易数据发送至所述分片节点。
在上述区块链透明分片系统中,优选的,所述处理单元还包含账户计算模块,所述账户计算模块用于根据当前操作所述交易数据的用户的账户地址与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。
在上述区块链透明分片系统中,优选的,所述处理单元还包含合约计算模块,所述合约计算模块用于根据所述交易数据的合约位址信息与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。
在上述区块链透明分片系统中,优选的,所述构建单元还包含发布模块,所述发布模块用于所述分片节点加入所述ReDiR树后,根据分片节点于所述ReDiR树中所处空间位置获得服务位置信息;将所述服务位置信息与所述分片节点信息绑定后发布至所述DHT网络中。
本发明的有益技术效果在于:通过使用一致哈希算法确定合约和分片的对应关系,以及分片节点和分片的对应关系;使得节点和合约均衡分布在不同的分片中。其次基于DHT网络的ReDiR(Recursive Distributed Rendezvous)服务发现机制,使得合约部署者和调用者不必指定目标分片和节点地址,交易可以透明路由到相应的分片。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1为本发明一实施例所提供的区块链透明分片方法流程示意图;
图2为本发明一实施例所提供的区块链分片示意图;
图3为本发明一实施例所提供的区块链分片及分片节点关系示意图;
图4为本发明一实施例所提供的ReDiR树结构示意图;
图5为本发明一实施例所提供的区块链透明分片方法流程示意图;
图6为本发明一实施例所提供的区块链分片及交易数据合约地址信息关系示意图;
图7为本发明一实施例所提供的区块链透明分片系统结构示意图;
图8为本发明一实施例所提供的区块链透明分片装置结构示意图;
图9为本发明一实施例所提供的区块链透明分片装置结构示意图;
图10为本发明一实施例所提供的区块链透明分片装置结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
在本说明书的描述中,参考术语“一实施例”、“一具体实施例”、“例如”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本申请的实施,其中的步骤顺序不作限定,可根据需要作适当调整。
请参考图1所示,本发明一实施例所提供的区块链透明分片方法具体包含:S101获取服务于区块链的多个分片节点信息,根据所述分片节点信息通过一致性哈希算法获得分片节点与分片的对应关系;S102根据分片节点与分片的对应关系和所述分片节点,于DHT网络上构建与所述分片对应的ReDiR树;S103根据所述ReDiR树获得处理交易数据的分片节点。以此,利用DHT网络的ReDiR(Recursive Distributed Rendezvous)服务发现机制,使得合约部署者和调用者不必指定目标分片和节点地址,直接于所述ReDiR树上获取到需要的分片节点;同时利用上述实施例,使得各分片节点均衡分布,有效提高并行化计算效率。
在上述步骤S101中,区块链在创建之初就确定了分片的数量N,对每个分片从1到N进行编号,即分片ID,并根据分片ID构造分片信息的一致性hash环,如下图2所示;此时,服务于分片的节点称为分片节点;根据分片节点的编号信息nodeid,通过一致性哈希算法即可确定分片节点和分片的对应关系,具体请参考图3所示。
在上述步骤S102中的根据分片节点与分片的对应关系和所述分片节点,于DHT网络上构建与所述分片对应的ReDiR树还包含:所述分片节点加入所述ReDiR树后,根据分片节点于所述ReDiR树中所处空间位置获得服务位置信息;将所述服务位置信息与所述分片节点信息绑定后发布至所述DHT网络中。具体的,所述服务位置信息包含所述ReDiR树中的层级位置信息及所述分片节点的编号信息;其中,所述分片节点加入所述ReDiR树还包含:将所述分片节点的编号信息与预定阈值比较,根据比较结果获得所述分片节点在所述ReDiR树中的层级位置信息。实际工作中,请参考图4所示,每个分片的所有节点在DHT网络上构建成一颗ReDiR树;分片节点在加入DHT网络时会在分片对应的ReDiR树上发布自己的地址信息,即发布服务。分片节点在发布服务时,选取指定层级l(可为2)作为起始Level,找到自身nodeid在分片所在的ReDiR树(namespace为分片ID)l层的空间位置I(l,nodeid),生成服务ID(ID=namespace+level+nodeid),将服务ID与节点信息一起发布到空间位置I(l,nodeid)中。同时根据nodeid判断需不需要向其他Level发送存储请求。依据的条件有:nodeid值是空间I(l,nodeid)当前最大、最小值或空间I(l,nodeid)边界值,需要向level+1层进行存储;nodeid值是当前空间的唯一值或者是低一层的边界值则需要向level-1层进行存储。
在区块链上,跟合约相关的交易有两种类型:a)合约部署交易;b)合约调用交易。两种类型的交易的最大区别在于合约地址,部署交易中的合约地址根据合约代码Hash生成,调用交易中的合约地址为调用者指定的合约地址。除此之外,两种类型的交易在网络上的发送和传播等并无区别。为此,请参考图5所示,本发明一实施例还提供一种区块链透明分片方法,所述方法包含:S501获取交易数据的合约位址信息,根据所述合约位址信息通过一致性哈希算法获得交易数据与分片的对应关系;S502根据所述交易数据与分片的对应关系,于对应分片中获得分片节点;S503将所述交易数据发送至所述分片节点。在该实施例中,主要根据交易的合约地址,通过一致性哈希算法来确定合约所在的分片,即交易的目标分片;具体可参考图6所示。
在本发明一实施例中,上述区块链透明分片方法还包含:通过所述分片中的分片节点,于DHT网络上构建与所述分片对应的ReDiR树;根据所述交易数据与分片的对应关系,于对应分片的ReDiR树中获得分片节点。
在上述步骤S502中的根据所述交易数据与分片的对应关系,于对应分片中获得分片节点还包含:根据当前操作所述交易数据的用户的账户地址与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。其中,根据当前操作所述交易数据的用户的账户地址与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点还包含:根据当前操作所述交易数据的用户的账户地址于所述ReDiR树中生成资源地址信息;根据所述资源地址信息查询所述ReDiR树中分片节点的位址信息;根据查询结果调整所述资源地址信息。
在本发明另一实施例中,在上述步骤S502中的根据所述交易数据与分片的对应关系,于对应分片中获得分片节点还包含:根据所述交易数据的合约位址信息与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。其中,根据所述逻辑距离获得处理所述交易数据的分片节点包含:通过异或运算获得所述逻辑距离,选择所述逻辑距离最小的分片节点作为处理所述交易数据的分片节点。
在上述实施例中,目标分片确定后,需要在分片所在的ReDiR树查找分片节点。用户使用自己的账户地址或合约位址信息来查找跟自己逻辑距离最近的分片节点。这里逻辑距离是指账户地址或合约位址信息与分片节点的位址信息做异或运算的结果。实际工作中,首先选取指定层级l(可为2)作为起始Level,找到用户账户地址或合约位址信息(address)在分片所在的ReDiR树(namespace为分片ID)l层的空间位置I(l,address),生成资源ID(ID=namespace+level+address)。利用资源ID向指定的空间I(l,address)查询。当在l层级没有找到资源,则需要根据address判断需不需要向其他Level发送查询请求。依据的条件有:如果查询结果没有后继结点,说明可能存在于更高的level中,使得level+1向上继续查找;有后继值说明可能存在于更低的level中,使得level-1向下继续查找;如果address为空间I(l,address)的边界值,则整个网络中不存在,停止查询。
请参考图8所示,本发明一实施例还提供一种区块链透明分片装置,所述装置包含关系确定模块、构建模块和查询模块;所述关系确定模块用于获取服务于区块链的多个分片节点信息,根据所述分片节点信息通过一致性哈希算法获得分片节点与分片的对应关系;所述构建模块用于根据分片节点与分片的对应关系和所述分片节点,于DHT网络上构建与所述分片对应的ReDiR树;所述查询模块用于根据所述ReDiR树获得处理交易数据的分片节点。其中,所述构建模块还包含在所述分片节点加入所述ReDiR树后,根据分片节点于所述ReDiR树中所处空间位置获得服务位置信息;将所述服务位置信息与所述分片节点信息绑定后发布至所述DHT网络中。
请参考图9所示,本发明另一实施例还提供一种区块链透明分片装置,所述装置包含合约处理模块、关系查询模块和发送模块;所述合约处理模块用于获取交易数据的合约位址信息,根据所述合约位址信息通过一致性哈希算法获得交易数据与分片的对应关系;所述关系查询模块用于根据所述交易数据与分片的对应关系,于对应分片中获得分片节点;所述发送模块用于将所述交易数据发送至所述分片节点。其中,所述装置还可包含生成模块,所述生成模块用于通过所述分片中的分片节点,于DHT网络上构建与所述分片对应的ReDiR树;根据所述交易数据与分片的对应关系,于对应分片的ReDiR树中获得分片节点。
请参考图10所示,在上述实施例中,所述关系查询模块还包含距离计算模块,所述距离计算模块用于根据当前操作所述交易数据的用户的账户地址或所述交易数据的合约位址信息中一个,与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。
请参考图7所示,本发明另一实施例还提供一种区块链透明分片系统,所述系统包含构建单元701和处理单元702;所述构建单元用于获取服务于区块链的多个分片节点信息,根据所述分片节点信息通过一致性哈希算法获得分片节点与分片的对应关系;以及根据分片节点与分片的对应关系和所述分片节点,于DHT网络上构建与所述分片对应的ReDiR树;所述处理单元用于获取交易数据的合约位址信息,根据所述合约位址信息通过一致性哈希算法获得交易数据与分片的对应关系;以及根据所述交易数据与分片的对应关系,于对应分片中获得分片节点;将所述交易数据发送至所述分片节点。
在上述实施例中,所述处理单元还可包含账户计算模块,所述账户计算模块用于根据当前操作所述交易数据的用户的账户地址与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。
在上述实施例中,所述处理单元还可包含合约计算模块,所述合约计算模块用于根据所述交易数据的合约位址信息与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。
在上述实施例中,所述构建单元还可包含发布模块,所述发布模块用于所述分片节点加入所述ReDiR树后,根据分片节点于所述ReDiR树中所处空间位置获得服务位置信息;将所述服务位置信息与所述分片节点信息绑定后发布至所述DHT网络中。
本发明所提供的区块链透明分片方法及系统通过使用一致哈希算法确定合约和分片的对应关系,以及分片节点和分片的对应关系;使得节点和合约均衡分布在不同的分片中。其次基于DHT网络的ReDiR(Recursive Distributed Rendezvous)服务发现机制,使得合约部署者和调用者不必指定目标分片和节点地址,交易可以透明路由到相应的分片。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (19)
1.一种区块链透明分片方法,其特征在于,所述方法包含:
获取服务于区块链的多个分片节点信息,根据所述分片节点信息通过一致性哈希算法获得分片节点与分片的对应关系;
根据分片节点与分片的对应关系和所述分片节点,于DHT网络上构建与所述分片对应的ReDiR树;
根据所述ReDiR树获得处理交易数据的分片节点。
2.根据权利要求1所述的区块链透明分片方法,其特征在于,根据分片节点与分片的对应关系和所述分片节点,于DHT网络上构建与所述分片对应的ReDiR树还包含:所述分片节点加入所述ReDiR树后,根据分片节点于所述ReDiR树中所处空间位置获得服务位置信息;将所述服务位置信息与所述分片节点信息绑定后发布至所述DHT网络中。
3.根据权利要求2所述的区块链透明分片方法,其特征在于,所述服务位置信息包含所述ReDiR树中的层级位置信息及所述分片节点的编号信息。
4.根据权利要求3所述的区块链透明分片方法,其特征在于,所述分片节点加入所述ReDiR树还包含:将所述分片节点的编号信息与预定阈值比较,根据比较结果获得所述分片节点在所述ReDiR树中的层级位置信息。
5.一种区块链透明分片方法,其特征在于,所述方法包含:
获取交易数据的合约位址信息,根据所述合约位址信息通过一致性哈希算法获得交易数据与分片的对应关系;
根据所述交易数据与分片的对应关系,于对应分片中获得分片节点;
将所述交易数据发送至所述分片节点。
6.根据权利要求5所述的区块链透明分片方法,其特征在于,根据所述交易数据与分片的对应关系,于对应分片中获得分片节点之前还包含:通过所述分片中的分片节点,于DHT网络上构建与所述分片对应的ReDiR树;根据所述交易数据与分片的对应关系,于对应分片的ReDiR树中获得分片节点。
7.根据权利要求6所述的区块链透明分片方法,其特征在于,根据所述交易数据与分片的对应关系,于对应分片中获得分片节点还包含:根据当前操作所述交易数据的用户的账户地址与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。
8.根据权利要求7所述的区块链透明分片方法,其特征在于,根据当前操作所述交易数据的用户的账户地址与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点还包含:根据当前操作所述交易数据的用户的账户地址于所述ReDiR树中生成资源地址信息;根据所述资源地址信息查询所述ReDiR树中分片节点的位址信息;根据查询结果调整所述资源地址信息。
9.根据权利要求6所述的区块链透明分片方法,其特征在于,根据所述交易数据与分片的对应关系,于对应分片中获得分片节点还包含:根据所述交易数据的合约位址信息与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。
10.根据权利要求7至9中任一项所述的区块链透明分片方法,其特征在于,根据所述逻辑距离获得处理所述交易数据的分片节点包含:通过异或运算获得所述逻辑距离,选择所述逻辑距离最小的分片节点作为处理所述交易数据的分片节点。
11.一种区块链透明分片装置,其特征在于,所述装置包含关系确定模块、构建模块和查询模块;
所述关系确定模块用于获取服务于区块链的多个分片节点信息,根据所述分片节点信息通过一致性哈希算法获得分片节点与分片的对应关系;
所述构建模块用于根据分片节点与分片的对应关系和所述分片节点,于DHT网络上构建与所述分片对应的ReDiR树;
所述查询模块用于根据所述ReDiR树获得处理交易数据的分片节点。
12.根据权利要求11所述的区块链透明分片装置,其特征在于,所述构建模块还包含在所述分片节点加入所述ReDiR树后,根据分片节点于所述ReDiR树中所处空间位置获得服务位置信息;将所述服务位置信息与所述分片节点信息绑定后发布至所述DHT网络中。
13.一种区块链透明分片装置,其特征在于,所述装置包含合约处理模块、关系查询模块和发送模块;
所述合约处理模块用于获取交易数据的合约位址信息,根据所述合约位址信息通过一致性哈希算法获得交易数据与分片的对应关系;
所述关系查询模块用于根据所述交易数据与分片的对应关系,于对应分片中获得分片节点;
所述发送模块用于将所述交易数据发送至所述分片节点。
14.根据权利要求13所述的区块链透明分片装置,其特征在于,所述装置还包含生成模块,所述生成模块用于通过所述分片中的分片节点,于DHT网络上构建与所述分片对应的ReDiR树;根据所述交易数据与分片的对应关系,于对应分片的ReDiR树中获得分片节点。
15.根据权利要求14所述的区块链透明分片装置,其特征在于,所述关系查询模块还包含距离计算模块,所述距离计算模块用于根据当前操作所述交易数据的用户的账户地址或所述交易数据的合约位址信息中一个,与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。
16.一种区块链透明分片系统,其特征在于,所述系统包含构建单元和处理单元;
所述构建单元用于获取服务于区块链的多个分片节点信息,根据所述分片节点信息通过一致性哈希算法获得分片节点与分片的对应关系;以及根据分片节点与分片的对应关系和所述分片节点,于DHT网络上构建与所述分片对应的ReDiR树;
所述处理单元用于获取交易数据的合约位址信息,根据所述合约位址信息通过一致性哈希算法获得交易数据与分片的对应关系;以及根据所述交易数据与分片的对应关系,于对应分片中获得分片节点;将所述交易数据发送至所述分片节点。
17.根据权利要求16所述的区块链透明分片系统,其特征在于,所述处理单元还包含账户计算模块,所述账户计算模块用于根据当前操作所述交易数据的用户的账户地址与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。
18.根据权利要求16所述的区块链透明分片系统,其特征在于,所述处理单元还包含合约计算模块,所述合约计算模块用于根据所述交易数据的合约位址信息与对应分片的ReDiR树中分片节点的位址信息计算获得两者之间的逻辑距离,根据所述逻辑距离获得处理所述交易数据的分片节点。
19.根据权利要求16所述的区块链透明分片系统,其特征在于,所述构建单元还包含发布模块,所述发布模块用于所述分片节点加入所述ReDiR树后,根据分片节点于所述ReDiR树中所处空间位置获得服务位置信息;将所述服务位置信息与所述分片节点信息绑定后发布至所述DHT网络中。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810743807.2A CN109146447B (zh) | 2018-07-09 | 2018-07-09 | 区块链透明分片方法、装置及系统 |
PCT/CN2019/095226 WO2020011154A1 (zh) | 2018-07-09 | 2019-07-09 | 区块链透明分片方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810743807.2A CN109146447B (zh) | 2018-07-09 | 2018-07-09 | 区块链透明分片方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109146447A true CN109146447A (zh) | 2019-01-04 |
CN109146447B CN109146447B (zh) | 2022-07-05 |
Family
ID=64799967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810743807.2A Active CN109146447B (zh) | 2018-07-09 | 2018-07-09 | 区块链透明分片方法、装置及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109146447B (zh) |
WO (1) | WO2020011154A1 (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020011154A1 (zh) * | 2018-07-09 | 2020-01-16 | 云图有限公司 | 区块链透明分片方法、装置及系统 |
CN110753026A (zh) * | 2019-02-27 | 2020-02-04 | 北京嘀嘀无限科技发展有限公司 | 一种基于区块链的分片方法及装置 |
CN110958324A (zh) * | 2019-12-12 | 2020-04-03 | 上海优扬新媒信息技术有限公司 | 一种区块链网络的数据处理方法及装置 |
CN111026511A (zh) * | 2019-11-20 | 2020-04-17 | 中国科学院计算技术研究所 | 基于事务数据分区-链间融合的区块链并行系统及方法 |
CN111083052A (zh) * | 2019-12-19 | 2020-04-28 | 上海优扬新媒信息技术有限公司 | 一种基于有序平衡二叉树的分片方法及装置 |
CN111221910A (zh) * | 2019-12-31 | 2020-06-02 | 杭州趣链科技有限公司 | 一种提升区块链读写性能的分片存储方法 |
CN111694809A (zh) * | 2020-06-11 | 2020-09-22 | 杭州云链趣链数字科技有限公司 | 基于区块链的文件过滤方法、装置和计算机设备 |
CN112039860A (zh) * | 2020-08-18 | 2020-12-04 | 上海简苏网络科技有限公司 | 一种在联盟链中实现联合共识分片的方法和装置 |
CN112866025A (zh) * | 2021-01-14 | 2021-05-28 | 公安部第三研究所 | 一种智能合约的分片处理方法 |
CN113411376A (zh) * | 2021-05-12 | 2021-09-17 | 精英数智科技股份有限公司 | 基于区块链分片存储的传感器数据处理方法及装置 |
CN115550251A (zh) * | 2022-12-01 | 2022-12-30 | 杭州蚂蚁酷爱科技有限公司 | 区块链网络、节点集合的维护方法及装置 |
WO2023070925A1 (zh) * | 2021-10-28 | 2023-05-04 | 湖南天河国云科技有限公司 | 区块链交易池的分片方法、系统、存储介质和计算机系统 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111680327B (zh) * | 2020-06-10 | 2024-02-23 | 中国银行股份有限公司 | 基于区块链的客户信息整合方法、装置、设备及存储介质 |
CN112688870B (zh) * | 2020-12-28 | 2022-11-04 | 杭州趣链科技有限公司 | 一种路由方法、路由装置及节点设备 |
CN115834087B (zh) * | 2023-02-21 | 2023-06-06 | 中国科学院合肥物质科学研究院 | 基于层叠网络的区块链分片方法、系统、设备及存储介质 |
CN116012164B (zh) * | 2023-03-17 | 2023-06-30 | 安徽中科晶格技术有限公司 | 基于虚拟账户的区块链跨分片交易方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120158756A1 (en) * | 2010-12-20 | 2012-06-21 | Jimenez Jaime | Searching in Peer to Peer Networks |
US20120198051A1 (en) * | 2011-01-31 | 2012-08-02 | Telefonaktiebolaget L M Ericsson (Publ) | Adaptive Service Discovery in Structured Peer-to-Peer Overlay Networks and Method |
CN106682984A (zh) * | 2016-10-27 | 2017-05-17 | 上海亿账通区块链科技有限公司 | 基于区块链的交易事务处理方法及系统 |
CN106899680A (zh) * | 2017-03-09 | 2017-06-27 | 上海亿账通区块链科技有限公司 | 多区块链的分片处理方法和装置 |
CN108243250A (zh) * | 2018-01-05 | 2018-07-03 | 无锡井通网络科技有限公司 | 一种基于分布式网络的分片快速选择方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107770154B (zh) * | 2017-09-22 | 2019-08-27 | 中国科学院信息工程研究所 | 基于云存储的区块链可靠数据存储方法、终端及系统 |
CN109146447B (zh) * | 2018-07-09 | 2022-07-05 | 矩阵元技术(深圳)有限公司 | 区块链透明分片方法、装置及系统 |
-
2018
- 2018-07-09 CN CN201810743807.2A patent/CN109146447B/zh active Active
-
2019
- 2019-07-09 WO PCT/CN2019/095226 patent/WO2020011154A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120158756A1 (en) * | 2010-12-20 | 2012-06-21 | Jimenez Jaime | Searching in Peer to Peer Networks |
US20120198051A1 (en) * | 2011-01-31 | 2012-08-02 | Telefonaktiebolaget L M Ericsson (Publ) | Adaptive Service Discovery in Structured Peer-to-Peer Overlay Networks and Method |
CN106682984A (zh) * | 2016-10-27 | 2017-05-17 | 上海亿账通区块链科技有限公司 | 基于区块链的交易事务处理方法及系统 |
CN106899680A (zh) * | 2017-03-09 | 2017-06-27 | 上海亿账通区块链科技有限公司 | 多区块链的分片处理方法和装置 |
CN108243250A (zh) * | 2018-01-05 | 2018-07-03 | 无锡井通网络科技有限公司 | 一种基于分布式网络的分片快速选择方法 |
Non-Patent Citations (2)
Title |
---|
J. MAENPAA等: "Service Discovery Usage for Resource Location And Discovery (RELOAD)", 《HTTPS://WWW.RFC-EDITOR.ORG/RFC/PDFRFC/RFC7374.TXT.PDF》 * |
SEAN RHEA等: "OpenDHT: A Public DHT Service and Its Uses", 《SIGCOMM’05》 * |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020011154A1 (zh) * | 2018-07-09 | 2020-01-16 | 云图有限公司 | 区块链透明分片方法、装置及系统 |
CN110753026A (zh) * | 2019-02-27 | 2020-02-04 | 北京嘀嘀无限科技发展有限公司 | 一种基于区块链的分片方法及装置 |
CN110753026B (zh) * | 2019-02-27 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | 一种基于区块链的分片方法及装置 |
CN111026511A (zh) * | 2019-11-20 | 2020-04-17 | 中国科学院计算技术研究所 | 基于事务数据分区-链间融合的区块链并行系统及方法 |
CN111026511B (zh) * | 2019-11-20 | 2023-08-08 | 中国科学院计算技术研究所 | 基于事务数据分区-链间融合的区块链并行系统及方法 |
CN110958324A (zh) * | 2019-12-12 | 2020-04-03 | 上海优扬新媒信息技术有限公司 | 一种区块链网络的数据处理方法及装置 |
CN110958324B (zh) * | 2019-12-12 | 2023-12-19 | 度小满科技(北京)有限公司 | 一种区块链网络的数据处理方法及装置 |
CN111083052B (zh) * | 2019-12-19 | 2022-01-28 | 度小满科技(北京)有限公司 | 一种基于有序平衡二叉树的分片方法及装置 |
CN111083052A (zh) * | 2019-12-19 | 2020-04-28 | 上海优扬新媒信息技术有限公司 | 一种基于有序平衡二叉树的分片方法及装置 |
CN111221910A (zh) * | 2019-12-31 | 2020-06-02 | 杭州趣链科技有限公司 | 一种提升区块链读写性能的分片存储方法 |
CN111694809A (zh) * | 2020-06-11 | 2020-09-22 | 杭州云链趣链数字科技有限公司 | 基于区块链的文件过滤方法、装置和计算机设备 |
CN112039860A (zh) * | 2020-08-18 | 2020-12-04 | 上海简苏网络科技有限公司 | 一种在联盟链中实现联合共识分片的方法和装置 |
WO2022151709A1 (zh) * | 2021-01-14 | 2022-07-21 | 公安部第三研究所 | 一种智能合约的分片处理方法 |
CN112866025A (zh) * | 2021-01-14 | 2021-05-28 | 公安部第三研究所 | 一种智能合约的分片处理方法 |
CN113411376A (zh) * | 2021-05-12 | 2021-09-17 | 精英数智科技股份有限公司 | 基于区块链分片存储的传感器数据处理方法及装置 |
WO2023070925A1 (zh) * | 2021-10-28 | 2023-05-04 | 湖南天河国云科技有限公司 | 区块链交易池的分片方法、系统、存储介质和计算机系统 |
CN115550251A (zh) * | 2022-12-01 | 2022-12-30 | 杭州蚂蚁酷爱科技有限公司 | 区块链网络、节点集合的维护方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2020011154A1 (zh) | 2020-01-16 |
CN109146447B (zh) | 2022-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109146447A (zh) | 区块链透明分片方法、装置及系统 | |
Whaiduzzaman et al. | Cloud service selection using multicriteria decision analysis | |
US8959138B2 (en) | Distributed data scalable adaptive map-reduce framework | |
Aridhi et al. | A MapReduce-based approach for shortest path problem in large-scale networks | |
CN110399535A (zh) | 一种数据查询方法、装置及设备 | |
Yao et al. | Improved ant colony optimization for seafood product delivery routing problem | |
Mennes et al. | GRECO: A distributed genetic algorithm for reliable application placement in hybrid clouds | |
CN106250457B (zh) | 大数据平台物化视图的查询处理方法及系统 | |
CN103366117B (zh) | 一种感染型病毒修复方法及系统 | |
CN110347515B (zh) | 一种适合边缘计算环境的资源优化分配方法 | |
CN104915717A (zh) | 数据处理方法、知识库推理方法及相关装置 | |
CN106202092A (zh) | 数据处理的方法及系统 | |
da Silva et al. | Evolutionary computation for automatic web service composition: an indirect representation approach | |
CN108337170A (zh) | 分布式资源查找方法和系统 | |
WO2018133782A1 (en) | Best-efforts database functions | |
CN109995580A (zh) | 5g网络切片中基于ga_pso混合算法的vn映射方法 | |
CN110169019A (zh) | 数据库功能定义的网络交换机和数据库系统 | |
CN108415912A (zh) | 基于MapReduce模型的数据处理方法和设备 | |
CN104869044B (zh) | 一种虚拟网映射方法及装置 | |
CN105049315B (zh) | 一种基于虚拟网络分割的虚拟网络改进映射方法 | |
CN112702390B (zh) | 基于区块链的智能合约资源的组网方法和装置 | |
CN113377510A (zh) | 无服务器计算环境中基于一致性哈希的缓存包调度优化算法 | |
CN109981476A (zh) | 一种负载均衡方法和装置 | |
CN107743246A (zh) | 任务处理方法、系统及数据处理系统 | |
CN106202303B (zh) | 一种Chord路由表压缩方法及优化文件查找方法 |
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 |