一种基于有序平衡二叉树的分片方法及装置制造方法及图纸

技术编号:23991337 阅读:37 留言:0更新日期:2020-04-29 16:14
本发明专利技术公开了一种基于有序平衡二叉树的分片方法,包括:当接收到目标节点加入目标网络的请求时,判断所述目标节点是否为所述目标网络的首节点;若否,将所述请求发送给所述目标网络的目标区块链中的各个节点,接收所述各个节点对所述请求的响应,其中,所述目标区块链中的各个节点组成目标平衡二叉树;依据所述响应,确定所述目标平衡二叉树的目标子树节点,将所述目标节点加入到所述目标子树节点中。上述的分片方法将所述目标区块链中的各个节点组成所述目标平衡二叉树,各个分片可以并行的处理交易,分片技术能提高交易处理和确认的并发度,进而可以提高所述目标区块链的吞吐量。

A partition method and device based on ordered balanced binary tree

【技术实现步骤摘要】
一种基于有序平衡二叉树的分片方法及装置
本专利技术涉及区块链
,尤其涉及一种基于有序平衡二叉树的分片方法及装置。
技术介绍
在区块链系统达成共识的过程中,是通过区块链系统中对应节点进行投票实现的,投票的时间取决于区块链中节点的数量。随着区块链系统中节点数量的增加,达成全局共识需要的时间也在不断增加,导致整个区块链系统的吞吐量受到了极大的挑战,为了解决这个问题,必须对区块链系统进行扩容,进而提高区块链系统的吞吐量。
技术实现思路
有鉴于此,本专利技术提供了一种基于有序平衡二叉树的分片方法及装置,用于解决现有技术中随着区块链系统中节点数量的增加,达成全局共识需要的时间也在不断增加,导致整个区块链系统的吞吐量受到了极大的挑战,具体方案如下:一种基于有序平衡二叉树的分片方法,包括:当接收到目标节点加入目标网络的请求时,判断所述目标节点是否为所述目标网络的首节点;若否,将所述请求发送给所述目标网络的目标区块链中的各个节点,接收所述各个节点对所述请求的响应,其中,所述目标区块链中的各个节点组成目标平衡二叉树;依据所述响应,确定所述目标平衡二叉树的目标子树节点,将所述目标节点加入到所述目标子树节点中。上述的方法,可选的,还包括:若所述目标节点为所述目标网络的首节点,依据所述目标节点,构建所述目标区块链;初始化所述目标区块链。上述的方法,可选的,还包括:判断与所述目标平衡二叉树是否失衡;若是,确定所述目标平衡二叉树中的最小不平衡子树,依据所述最小不平衡子树对所述目标平衡二叉树进行调整。上述的方法,可选的,依据所述响应,确定所述目标平衡二叉树的目标子树节点,将所述目标节点加入到所述目标子树节点中包括:依据所述响应,确定所述目标节点与所述目标平衡二叉树中各个子树的网络距离;在各个网络距离中选取最短网络距离,与所述最短网络距离对应的子树节点为所述目标子树节点。上述的方法,可选的,还包括:当检测到任意节点离开所述目标区块链时,判断所述任意节点是否为叶子节点;若是,则直接离开,或;若否,依次在所述任意节点对应的左右子树选取高度最高的节点代替所述任意节点,或;若所述任意节点对应的左右子树高度相等,则默认选取与所述任意节点对应的左子树。上述的方法,可选的,还包括:当所述目标区块链中的交易双方节点进行交易时,获取所述交易双方节点在所述目标平衡二叉树中的位置;依据所述位置,确定所述交易双方节点的最小公共父节点;依据所述最小公共父节点完成共识,共识完成后,生成的目标区块由与所述交易双方节点对应分区的根节点进行广播。上述的方法,可选的,还包括:为所述目标区块链中各个节点分配加权因子。一种基于有序平衡二叉树的分片装置,包括:第一判断模块,用于当接收到目标节点加入目标网络的请求时,判断所述目标节点是否为所述目标网络的首节点;发送与接收模块,用以若否,将所述请求发送给所述目标网络的目标区块链中的各个节点,接收所述各个节点对所述请求的响应,其中,所述目标区块链中的各个节点组成目标平衡二叉树;确定与加入模块,用于依据所述响应,确定所述目标平衡二叉树的目标子树节点,将所述目标节点加入到所述目标子树节点中。上述的装置,可选的,还包括:第二判断模块,用于判断与所述目标平衡二叉树是否失衡;确定与调整模块,用于若是,确定所述目标平衡二叉树中的最小不平衡子树,依据所述最小不平衡子树对所述目标平衡二叉树进行调整。上述的装置,可选的,所述确定与加入模块包括:第一确定单元,用于依据所述响应,确定所述目标节点与所述目标平衡二叉树中各个子树的网络距离;第二确定单元,用于在各个网络距离中选取最短网络距离,与所述最短网络距离对应的子树节点为所述目标子树节点。与现有技术相比,本专利技术包括以下优点:本专利技术公开了一种基于有序平衡二叉树的分片方法,包括:当接收到目标节点加入目标网络的请求时,判断所述目标节点是否为所述目标网络的首节点;若否,将所述请求发送给所述目标网络的目标区块链中的各个节点,接收所述各个节点对所述请求的响应,其中,所述目标区块链中的各个节点组成目标平衡二叉树;依据所述响应,确定所述目标平衡二叉树的目标子树节点,将所述目标节点加入到所述目标子树节点中。上述的分片方法将所述目标区块链中的各个节点组成所述目标平衡二叉树,各个分片可以并行的处理交易,分片技术能提高交易处理和确认的并发度,进而可以提高所述目标区块链的吞吐量。当然,实施本专利技术的任一产品并不一定需要同时达到以上所述的所有优点。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例公开的一种基于有序平衡二叉树的分片方法流程图;图2为本申请实施例公开的一种基于有序平衡二叉树的分片方法又一流程图;图3为本申请实施例公开的一种基于有序平衡二叉树的分片方法又一流程图;图4为本申请实施例公开的一种平衡二叉树的调整方法示意图;图5为本申请实施例公开的一种基于有序平衡二叉树的分片装置结构框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本专利技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本专利技术的精神或范围的情况下,在其它实施例中实现。因此,本专利技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。本专利技术公开了一种基于有序平衡二叉树的分片方法,应用在区块链领域,随着区块链中节点数量的增加,达成共识所需要的时间也不断增加,导致区块链系统的吞吐量受影响,为了解决上述问题,需要对区块链进行扩容,分片技术是一种常见的扩容方法,其中,分片的基本思想是将整个网络中的节点分成不同的碎片,各个分片能够并行处理不同的交易。验证者只需要验证网络交易的一部分,工作量被分摊在各个分片上,分片技术能够提高交易处理和确认的并发度,进而提高整个系统的吞吐量。所述分片方法的执行流程如图1所示,包括步骤:S101、当接收到目标节点加入目标网络的请求时,判断所述目标节点是否为所述目标网络的首节点;本专利技术实施例中,所述目标节点为当前请求加入目标网络的节点,判断所述目标节点是否为所本文档来自技高网...

【技术保护点】
1.一种基于有序平衡二叉树的分片方法,其特征在于,包括:/n当接收到目标节点加入目标网络的请求时,判断所述目标节点是否为所述目标网络的首节点;/n若否,将所述请求发送给所述目标网络的目标区块链中的各个节点,接收所述各个节点对所述请求的响应,其中,所述目标区块链中的各个节点组成目标平衡二叉树;/n依据所述响应,确定所述目标平衡二叉树的目标子树节点,将所述目标节点加入到所述目标子树节点中。/n

【技术特征摘要】
1.一种基于有序平衡二叉树的分片方法,其特征在于,包括:
当接收到目标节点加入目标网络的请求时,判断所述目标节点是否为所述目标网络的首节点;
若否,将所述请求发送给所述目标网络的目标区块链中的各个节点,接收所述各个节点对所述请求的响应,其中,所述目标区块链中的各个节点组成目标平衡二叉树;
依据所述响应,确定所述目标平衡二叉树的目标子树节点,将所述目标节点加入到所述目标子树节点中。


2.根据权利要求1所述的方法,其特征在于,还包括:
若所述目标节点为所述目标网络的首节点,依据所述目标节点,构建所述目标区块链;
初始化所述目标区块链。


3.根据权利要求1所述的方法,其特征在于,还包括:
判断与所述目标平衡二叉树是否失衡;
若是,确定所述目标平衡二叉树中的最小不平衡子树,依据所述最小不平衡子树对所述目标平衡二叉树进行调整。


4.根据权利要求1所述的方法,其特征在于,依据所述响应,确定所述目标平衡二叉树的目标子树节点,将所述目标节点加入到所述目标子树节点中包括:
依据所述响应,确定所述目标节点与所述目标平衡二叉树中各个子树的网络距离;
在各个网络距离中选取最短网络距离,与所述最短网络距离对应的子树节点为所述目标子树节点。


5.根据权利要求1所述的方法,其特征在于,还包括:
当检测到任意节点离开所述目标区块链时,判断所述任意节点是否为叶子节点;
若是,则直接离开,或;
若否,依次在所述任意节点对应的左右子树选取高度最高的节点代替所述任意节点,或;
若所述任意节点对应的左右子树高度相等,则默认选取与所述任意节点对应的左子树。
...

【专利技术属性】
技术研发人员:李丰金思惠子张伟
申请(专利权)人:上海优扬新媒信息技术有限公司
类型:发明
国别省市:上海;31

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

1