CN110958324B - 一种区块链网络的数据处理方法及装置 - Google Patents

一种区块链网络的数据处理方法及装置 Download PDF

Info

Publication number
CN110958324B
CN110958324B CN201911273539.3A CN201911273539A CN110958324B CN 110958324 B CN110958324 B CN 110958324B CN 201911273539 A CN201911273539 A CN 201911273539A CN 110958324 B CN110958324 B CN 110958324B
Authority
CN
China
Prior art keywords
node
fragments
data processing
fragment
target
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
Application number
CN201911273539.3A
Other languages
English (en)
Other versions
CN110958324A (zh
Inventor
李丰
张伟
金思惠子
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Du Xiaoman Technology Beijing Co Ltd
Original Assignee
Du Xiaoman Technology Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Du Xiaoman Technology Beijing Co Ltd filed Critical Du Xiaoman Technology Beijing Co Ltd
Priority to CN201911273539.3A priority Critical patent/CN110958324B/zh
Publication of CN110958324A publication Critical patent/CN110958324A/zh
Application granted granted Critical
Publication of CN110958324B publication Critical patent/CN110958324B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1031Controlling of the operation of servers by a load balancer, e.g. adding or removing servers that serve requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种区块链网络的数据处理方法,待处理区块链预先被划分为多个分片,其中,每一个分片中包含至少一个节点,包括:接收对待处理区块链的数据处理指令;在多个分片中选取与数据处理指令对应的目标分片;发送数据处理指令到目标分片,以使目标分片中节点响应数据处理指令。上述方法,接收对待处理区块链的数据处理指令,在多个分片中选取与数据处理指令对应的目标分片,以使目标分片中节点响应所述数据处理指令,以分片为单位对数据处理指令进行处理,不再采用待处理区块链作为整体进行处理,以分片为单位的处理方式,不但可以提高处理速度,而且可以实现数据的分片存储,提升了存储能力,解决了处理速度和存储能力受限的问题。

Description

一种区块链网络的数据处理方法及装置
技术领域
本发明涉及区块链技术领域,尤其涉及一种区块链网络的数据处理方法及装置。
背景技术
自比特币诞生以来,区块链的去中心化、不可篡改、公开透明等特性可可以令多个参与方可以通过非常低的成本建立信任链路,并在建立的信任链路上进行交易。
但是,由于受到存储资源、计算资源的和通信水平的限制,导致区块链网络在数据处理过程中存在各种各样的问题,例如,处理速度和存储能力受限问题,以以太坊为例,以太坊每秒钟支持处理约20个事务,对比VISA支持处理的45000个事务,差距甚大,针对处理速度,在不影响区块链网络稳定性的前提下,虽然可以通过调节挖矿难度等参数进行小幅度的提升,但处理速度提升效果不明显,其次,针对存储能力,随着区块的不断生成,以及块内交易数量的不断增多,账本越来越大,对以太坊节点的存储能力提出了越来越高的要求。
发明内容
有鉴于此,本发明提供了一种区块链网络的数据处理方法及装置,用于解决现有技术中区块链交易速度低、数据存储压力大的问题,具体方案如下:
一种区块链网络的数据处理方法,待处理区块链预先被划分为多个分片,其中,每一个分片中包含至少一个节点,包括:
接收对所述待处理区块链的数据处理指令;
在所述多个分片中选取与所述数据处理指令对应的目标分片;
发送所述数据处理指令到所述目标分片,以使所述目标分片中节点响应所述数据处理指令。
上述的方法,可选的,待处理区块链预先被划分为多个分片,所述多个分片以树状形式存在。
上述的方法,可选的,待处理区块链预先被划分为多个分片,包括:
获取待处理区块链中的各个节点的节点ID;
依据所述节点ID确定所述待处理区块链的各个层级;
获取所述各个层级中的ID前缀,依据所述ID前缀对所述各个节点进行划分,得到目标前缀树,其中,所述目标前缀树的每一个叶子结点代表一个分片。
上述的方法,可选的,还包括:
当检测到新增节点加入所述目标前缀树时,分别计算所述新增节点与所述各个节点距离;
将各个距离中与所述新增节点距离最近的节点所属分片作为待添加分片,将所述新增节点加入所述待添加分片。
上述的方法,可选的,还包括:
当检测到所述目标前缀树中存在满足扩容要求的待扩容分片时,对所述待扩容分片进行扩容;
扩容完成时,对所述目标前缀树进行更新。
上述的方法,可选的,还包括:
当检测到所述目标前缀树中任一节点需要跨片转移时,获取当前节点的分片信息的第一长度和待转入分片的分片信息的第二长度;
依据所述第一长度和第二长度的对比结果,采用对应的转移方法进行转移。
上述的方法,可选的,在所述多个分片中选取与所述数据处理指令对应的目标分片,包括:
获取所述数据处理指令中包含的标识;
依据所述标识,在所述多个分片中查找与所述标识相同的目标分片。
上述的方法,可选的,还包括:
将所述待处理区块链中的常用信息、分片信息、变更信息存储到查询节点中。
一种区块链网络的数据处理装置,待处理区块链预先被划分为多个分片,其中,每一个分片中包含至少一个节点,包括:
接收模块,用于接收对所述待处理区块链的数据处理指令;
选取模块,用于在所述多个分片中选取与所述数据处理指令对应的目标分片;
发送和响应模块,用于发送所述数据处理指令到所述目标分片,以使所述目标分片中节点响应所述数据处理指令。
上述的装置,可选的,待处理区块链预先被划分为多个分片,包括:
获取单元,用于获取待处理区块链中的各个节点的节点ID;
确定单元,用于依据所述节点ID确定所述待处理区块链的各个层级;
获取和划分单元,用于获取所述各个层级中的ID前缀,依据所述ID前缀对所述各个节点进行划分,得到目标前缀树,其中,所述目标前缀树的每一个叶子结点代表一个分片。
与现有技术相比,本发明包括以下优点:
本发明公开了一种区块链网络的数据处理方法,待处理区块链预先被划分为多个分片,其中,每一个分片中包含至少一个节点,包括:接收对待处理区块链的数据处理指令;在多个分片中选取与数据处理指令对应的目标分片;发送数据处理指令到目标分片,以使目标分片中节点响应数据处理指令。上述方法,待处理区块链预先被划分为多个分片,接收对待处理区块链的数据处理指令,在多个分片中选取与数据处理指令对应的目标分片,以使目标分片中节点响应所述数据处理指令,以分片为单位对数据处理指令进行处理,不再采用待处理区块链作为整体进行处理,以分片为单位的处理方式,不但可以提高处理速度,而且可以实现数据的分片存储,提升了存储能力,解决了处理速度和存储能力受限的问题。
当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种节点ID的示意图;
图2为本申请实施例公开的一种前缀树的示意图;
图3为本申请实施例公开的一种区块链网络的数据处理方法流程图;
图4为本申请实施例公开的一种分片扩容示意图;
图5为本申请实施例公开的一种节点迁移示意图;
图6为本申请实施例公开的一种区块链网络的数据处理装置结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前在利用区块链进行数据处理的过程中,终端接收到数据处理指令后,将数据处理指令以广播或者通知等形式通知给区块链中的各个节点,其中,所述终端与所述各个节点存在连接关系,所述各个节点均对所述数据处理指令进行响应,相当于区块链整体对所述数据处理指令进行响应。在上述过程中,发明人发现由于区块链作为一个整体对进行响应,对计算资源和存储能力要求较高,可能会导致处理失败或者响应时间过长,本发明为了解决上述问题,将区块链预先划分成多个分片,其中,每一个分片中包含至少一个节点,所述多个分片以树状形式存在,数据处理过程在对应的分片中进行处理,通过对区块链进行分片处理,不但可以提高处理速度,而且可以实现数据的分片存储,提升存储能力,解决了处理速度和存储能力受限的问题,所述处理方法的执行主体为终端或者处理器,所述终端或者处理器与待处理区块中的各个节点相连接,所述处理方法中,预先被划分为多个分片的划分过程如下:获取待处理区块链中的各个节点的节点ID识,所述节点ID用于区分所述待处理区块链中不同的节点,其中,所述节点ID由分片信息和节点特征信息组成,其中,节点ID的示意图如图1所示。整个分片的目标是实现同一个分片内的节点彼此距离相近。其中,所述距离定义:定义d(i,j)表示2个区块链节点i和节点j的距离。这里的距离可以代表物理距离、网络延迟、节点属性相似度等,以下示例以节点的物理距离为例。定义前L位(长度不定)代表分片信息,分片是有层级信息的,层级信息在实际场景中可以对应具体的含义,例如在L位中,第1位ID前缀代表1级分片,代表在国内/国外,2-4位ID前缀位代表2级分片,代表是具体的地域,例如东北/华南/西北,剩余几位可以按照实际的场景进一步细分或者随机进行展示,分片的含义不仅仅局限于地域,也可以用来表示网路距离,也可以从业务上定义,例如,在交易上比较密切的人群等等。分片长度L不是固定的,但根据具体的场景,定义上限,实践中,上限需要比较合理的规定,若所述上限太小,达不到提高系统交易速度的效果,若所述上限太大,则分片里的地址空间比较小,分片容易受到攻击。
依据所述节点信息中的各个层级信息对所述待处理区块链的各个节点采用前缀树进行分片,得到所述目标前缀树,其中,所述目标前缀树的示意图如图2所示,首先依据第一层级ID前缀进行划分为ID前缀为0和1的两部分,然后再细分为00、01、10和11,逐渐类推进行分片,是否继续进行分片的原则是各个叶子节点中节点的数量相同、在一个范围内或者同一个业务分类内,最终得到所述目标前缀树,其中,所述目标前缀树的每一个叶子结点代表一个分片。
本发明实施例中,所述目标前缀树可以以二叉树或者多叉树形式呈现,分支代表下一跳的路径,以分片信息后续的bit位为分叉条件,每个节点会对应一个ID前缀,叶子结点则代表一个具体的分片,原则上并不要求这是一棵满二叉树,但在一般情况下,这是一棵完全二叉树。每个节点都会对应到这棵二叉树的分片上,而在每个叶子结点上,对应当前分片下所有节点列表,对于节点列表,存储三部分信息:分片结构、所处分片的所有交易历史的节点列表以及所处分片的区块数据。
除去表征分片信息外,剩余的节点标识信息表示该节点在分片中节点特征信息,通过分片信息和节点特征信息的组合,既可以实现节点的大体内聚,也同时保留原区块链的特性,防止一定程度的作恶。
基于上述的过程,所述处理方法基于所述目标前缀树进行处理,执行流程如图3所示,包括步骤:
S101、接收对所述待处理区块链的数据处理指令;
本发明实施例中,所述数据处理指令可以为数据存储、查询、交易或者其它指令,所述数据处理指令可以由用户发送、定时发送或者其它的产生形式,接收所述数据处理处理指令。
S102、在所述多个分片中选取与所述数据处理指令对应的目标分片;
本发明实施例中,预先为所述数据处理指令和分片建立关联,当接收到所述数据处理指令时,获取所述数据处理指令中包含的标识,其中,所述标识可以为数字、字母或者其它优选标识,本发明实施例中对标识的具体存在形式不进行限定,依据所述标识,在所述目标前缀树的多个分片中查找与所述标识相同的目标分片。
S103、发送所述数据处理指令到所述目标分片,以使所述目标分片中节点响应所述数据处理指令。
本发明实施例中,将所述数据处理指令发送给所述目标,在所述目标分片中选取对应的节点对所述数据处理指令进行响应,并对响应结果进行反馈。例如,所述数据处理指令为存储数据时,将对应的数据存储在目标分片的账本中,不再采用统一的账本进行数据存储,降低了统一账本的存储压力。
本发明公开了一种区块链网络的数据处理方法,待处理区块链预先被划分为多个分片,其中,每一个分片中包含至少一个节点,包括:接收对待处理区块链的数据处理指令;在多个分片中选取与数据处理指令对应的目标分片;发送数据处理指令到目标分片,以使目标分片中节点响应数据处理指令。上述方法,待处理区块链预先被划分为多个分片,接收对待处理区块链的数据处理指令,在多个分片中选取与数据处理指令对应的目标分片,以使目标分片中节点响应所述数据处理指令,以分片为单位对数据处理指令进行处理,不再采用待处理区块链作为整体进行处理,以分片为单位的处理方式,不但可以提高处理速度,而且可以实现数据的分片存储,提升了存储能力,解决了处理速度和存储能力受限的问题。
本发明实施例中,当检测到新增节点加入所述目标前缀树时,遍历所述目标前缀树的各个分片,依据定义的距离,计算所述新增节点与所述各个分片的距离,在各个距离中选择距离最短的分片作为待添加分片,将所述新增节点加入所述待添加分片。假设节点ID的长度为N,所述目标分片的分片信息为01…10101,长度为M,需要根据一定量的Pow工作量证明生成所述新增节点的节点特征信息,节点特征信息的长度为N-M,其中,解决Pow问题没有特别的捷径,目前只能通过计算资源的消耗来完成,假设作恶节点一般无法提供足够的计算资源,可以避免区块链中产生过多作恶节点ID,可以防止女巫攻击,最后将分片信息与节点特征信息组合成这个节点的节点ID,依据所述节点ID将所述新增节点接入到所述待添加分片中。
进一步的,所述新增节点在所述待添加分片上第一次交易时,需要判断所述新增节点的节点特征信息是否有效,判断的过程如下:所述新增节点在发起交易的时候,会附上自己的节点ID,需要检查两部分的信息:节点是否符合分片信息的前缀,节点特征信息是否符合预先设计好的Pow规则,所述Pow规则可选,本发明实施例中对Pow规则不进行具体限定。
本发明实施例中,对于所述目标前缀树中节点的数据处理主要有两种情况:若为片内节点的交易,按照原先约定好的共识策略执行,若判断为跨片交易,执行过程如下:通过leader来传递信息,由交易发起方的分片leader将跨片交易信息传递给接收方的分片leader,leader获得跨片奖励,leader的筛选机制可以通过选举,也可以通过从节点列表中由对应的信息(例如上一个区块的hash)经过一些计算筛选得到,或者通过hash锁定的方式来完成,其中,hash锁定可以在不通过第三方,由两个参与方互相约定,即可完成跨链/跨片的资产交易。
本发明实施例中,当所述目标前缀树中任一分片需要扩容时,采用划分子分片的方式对当前分片进行扩容,其中,扩容的触发条件可以为某个分片下的节点到达了一定数量,和/或,管理员下达了分片指令,和/或,事先预设好的其他一些场景,例如区块容量达到一定数量,或者达到了某个预先设置的时间点等
假设策略为P,由L个分片组成,每个分片Pi,每个分片占据的比重为Si(Si需要为2的幂次),其中,业务上可以指定分片的比重,例如以世界为例,亚洲比重为4,北美比重为2,欧洲比重为2,大洋洲比重为1等等,若业务上没指定,则默认以树的最大叉数信息来定,例如二叉树,则分裂成两个,两个分片比重相同。
需要满足为2^R,则需要新增R个bit来作为前缀,将原分片信息和节点特征信息的前R位组成新的分片信息,节点特征信息为剩余部分,将Si从小到大排列,构成一棵高度为R的子树,分别分配上述分片,根据已经分配好的节点ID,将对应的节点根据图1所示节点组成分配到对应的分片中去。
例如图4所示前缀树的最右分片由于节点数量太多,需要拆分成3个子分片,子分片的比重为1:1:2,则需要分配2个bit即总共两层的子树,因此生成110,1110,1111分别赋予比重2、1、1,原有以110为前缀(例如1101***和1100****)的节点进入了110子树,以1110为前缀的节点进入了1110前缀,以1111为前缀的节点进入了1111前缀。
在扩容完成后,所有的节点将更新前缀树,新分片中的节点将更新自己所在新分片的节点列表。同时,每个片的节点将创建一个新的账本,从此开始将维护分片内的新的账本,新的账本初始区块需要ref到老账本最后的块hash,用来表示从该块开始分片,这样可以知道什么时候开始分片,由此可以恢复出全部的区块链区块信息
本发明实施例中,由于业务需要,所述目标前缀树中的节点有可能进行分片间的迁移,因为在不同的分片中,分片的节点ID也是不同的,因此需要生成新的节点ID,见下图分为三种情况:
前缀长度相同:直接利用新前缀替换老前缀,如图5-1所示。
新分片前缀长度较短:利用新分片作为节点前缀,不足部分利用老分片信息剩余部分补全,如图5-2所示。
新分片前缀长度较长:利用新分片作为节点前缀,原节点特征信息的部分前缀会被截断,如图5-3所示。
当发生节点跨片转移后,节点对应的token将转移到新的节点ID中,在新的分片中统一管理,该节点不再属于原有分片,会从原有分片的节点列表中去除。
本发明实施例中,为保证所述待处理区块链快速运行,会设立Lookup查询节点,该类节点的作用包括:
提供所述待处理区块链网络的分片信息,协助新节点加入网络
将交易分派到正确的分片
记录网络分片的变更历史,快速验证某个区块存在哪个分片中,协助节点获取状态和交易记录,Lookup节点会与账本进行同步,上面有区块链分片、区块、交易、节点等各类索引信息,维护着区块链当前的全局信息,因此能够快速响应或者进行路由,若区块链产生了新的分片,Lookup节点会更新分片信息,同时Lookup节点会监听区块的产生,维护区块/交易的索引。
基于上述的一种基于前缀树的区块链网络的分片方法,本发明实施例中还提供了一种区块链网络的数据处理装置,待处理区块链预先被划分为多个分片,其中,每一个分片中包含至少一个节点,所述处理装置的结构框图如图6所示,包括:
接收模块201、选取模块202和发送和响应模块203。
其中,
所述接收模块201,用于接收对所述待处理区块链的数据处理指令;
所述选取模块202,用于在所述多个分片中选取与所述数据处理指令对应的目标分片;
所述发送和响应模块203,用于发送所述数据处理指令到所述目标分片,以使所述目标分片中节点响应所述数据处理指令。
本发明公开了一种区块链网络的数据处理装置,待处理区块链预先被划分为多个分片,其中,每一个分片中包含至少一个节点,包括:接收对待处理区块链的数据处理指令;在多个分片中选取与数据处理指令对应的目标分片;发送数据处理指令到目标分片,以使目标分片中节点响应数据处理指令。上述装置,待处理区块链预先被划分为多个分片,接收对待处理区块链的数据处理指令,在多个分片中选取与数据处理指令对应的目标分片,以使目标分片中节点响应所述数据处理指令,以分片为单位对数据处理指令进行处理,不再采用待处理区块链作为整体进行处理,以分片为单位的处理方式,不但可以提高处理速度,而且可以实现数据的分片存储,提升了存储能力,解决了处理速度和存储能力受限的问题。
本发明实施例中,所述处理装置中待处理区块链预先被划分为多个分片,包括:
获取单元204、确定单元205和获取和划分单元206。
其中,
所述获取单元204,用于获取待处理区块链中的各个节点的节点ID;
所述确定单元205,用于依据所述节点ID确定所述待处理区块链的各个层级;
所述获取和划分单元206,用于获取所述各个层级中的ID前缀,依据所述ID前缀对所述各个节点进行划分,得到目标前缀树,其中,所述目标前缀树的每一个叶子结点代表一个分片。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明所提供的一种区块链网络的数据处理方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (6)

1.一种区块链网络的数据处理方法,其特征在于,待处理区块链预先被划分为多个分片,所述多个分片以树状形式存在,整个分片的目标是实现同一个分片内的节点彼此距离相近;其中,每一个分片中包含至少一个节点,包括:
接收对所述待处理区块链的数据处理指令;
在所述多个分片中选取与所述数据处理指令对应的目标分片;
发送所述数据处理指令到所述目标分片,以使所述目标分片中节点响应所述数据处理指令;
所述待处理区块链预先被划分为多个分片,包括:
获取待处理区块链中的各个节点的节点ID;其中,所述节点ID由分片信息和节点特征信息组成;所述节点特征信息根据一定量的Pow工作量证明生成;
依据所述节点ID确定所述待处理区块链的各个层级;
获取所述各个层级中的ID前缀,依据所述ID前缀对所述各个节点进行划分,得到目标前缀树,其中,所述目标前缀树的每一个叶子结点代表一个分片;
当检测到所述目标前缀树中存在满足扩容要求的待扩容分片时,采用划分子分片的方式对所述待扩容分片进行扩容;
根据所述待扩容分片拆分成的子分片数量和每个子分片占据的比重,计算前缀需要新增的位数;
扩容完成时,对所述目标前缀树进行更新。
2.根据权利要求1所述的方法,其特征在于,还包括:
当检测到新增节点加入所述目标前缀树时,分别计算所述新增节点与所述各个节点距离;
将各个距离中与所述新增节点距离最近的节点所属分片作为待添加分片,将所述新增节点加入所述待添加分片;
所述新增节点在所述待添加分片上第一次交易时,判断所述新增节点的节点特征信息是否有效。
3.根据权利要求1所述的方法,其特征在于,还包括:
当检测到所述目标前缀树中任一节点需要跨片转移时,获取当前节点的分片信息的第一长度和待转入分片的分片信息的第二长度;
依据所述第一长度和第二长度的对比结果,采用对应的转移方法进行转移。
4.根据权利要求1所述的方法,其特征在于,在所述多个分片中选取与所述数据处理指令对应的目标分片,包括:
获取所述数据处理指令中包含的标识;
依据所述标识,在所述多个分片中查找与所述标识相同的目标分片。
5.根据权利要求1所述的方法,其特征在于,还包括:
将所述待处理区块链中的常用信息、分片信息、变更信息存储到查询节点中。
6.一种区块链网络的数据处理装置,其特征在于,待处理区块链预先被划分为多个分片,所述多个分片以树状形式存在,整个分片的目标是实现同一个分片内的节点彼此距离相近;其中,每一个分片中包含至少一个节点,包括:
接收模块,用于接收对所述待处理区块链的数据处理指令;
选取模块,用于在所述多个分片中选取与所述数据处理指令对应的目标分片;
发送和响应模块,用于发送所述数据处理指令到所述目标分片,以使所述目标分片中节点响应所述数据处理指令;
待处理区块链预先被划分为多个分片,包括:
获取单元,用于获取待处理区块链中的各个节点的节点ID;其中,所述节点ID由分片信息和节点特征信息组成;所述节点特征信息根据一定量的Pow工作量证明生成;
确定单元,用于依据所述节点ID确定所述待处理区块链的各个层级;
获取和划分单元,用于获取所述各个层级中的ID前缀,依据所述ID前缀对所述各个节点进行划分,得到目标前缀树,其中,所述目标前缀树的每一个叶子结点代表一个分片;
还包括,用于执行当检测到新增节点加入所述目标前缀树时,分别计算所述新增节点与所述各个节点距离;将各个距离中与所述新增节点距离最近的节点所属分片作为待添加分片,将所述新增节点加入所述待添加分片的单元;其中,所述新增节点在所述待添加分片上第一次交易时,判断所述新增节点的节点特征信息是否有效。
CN201911273539.3A 2019-12-12 2019-12-12 一种区块链网络的数据处理方法及装置 Active CN110958324B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911273539.3A CN110958324B (zh) 2019-12-12 2019-12-12 一种区块链网络的数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911273539.3A CN110958324B (zh) 2019-12-12 2019-12-12 一种区块链网络的数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN110958324A CN110958324A (zh) 2020-04-03
CN110958324B true CN110958324B (zh) 2023-12-19

Family

ID=69981131

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911273539.3A Active CN110958324B (zh) 2019-12-12 2019-12-12 一种区块链网络的数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN110958324B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111737362B (zh) * 2020-07-22 2020-12-22 百度在线网络技术(北京)有限公司 区块链处理方法、装置、设备和存储介质
CN112396422B (zh) * 2020-12-21 2021-04-06 支付宝(杭州)信息技术有限公司 提交跨片事务的方法及系统、主链节点和目标分片节点
CN112866025B (zh) * 2021-01-14 2022-10-11 公安部第三研究所 一种智能合约的分片处理方法
CN112817538B (zh) * 2021-02-22 2022-08-30 腾讯科技(深圳)有限公司 数据处理的方法、装置、设备和存储介质
CN113157451B (zh) * 2021-04-19 2023-12-05 支付宝(杭州)信息技术有限公司 在区块链系统中执行区块的方法及装置
CN113452769B (zh) * 2021-06-23 2022-10-18 上海简苏网络科技有限公司 一种基于区块链的网络分层方法及系统
CN113395357B (zh) * 2021-08-16 2021-11-12 支付宝(杭州)信息技术有限公司 区块链系统的分片方法及装置
CN113655965A (zh) * 2021-08-20 2021-11-16 湖北央中巨石信息技术有限公司 一种区块链网络的扩容方法、区块链网络系统及区块链网络运行方法
CN114416866A (zh) * 2021-12-17 2022-04-29 深圳先进技术研究院 一种分布式系统的分片方法、装置、电子设备及存储介质

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016197994A1 (zh) * 2015-12-03 2016-12-15 中兴通讯股份有限公司 容量扩展方法及装置
CN106899680A (zh) * 2017-03-09 2017-06-27 上海亿账通区块链科技有限公司 多区块链的分片处理方法和装置
CN107766540A (zh) * 2017-10-31 2018-03-06 上海分布信息科技有限公司 一种分区的区块链网络及其实现分区存储的方法
CN108881488A (zh) * 2018-08-01 2018-11-23 夸克链科技(深圳)有限公司 一种基于分域的区块链交易处理方法及网络
CN109033422A (zh) * 2018-08-08 2018-12-18 云南天之游科技股份有限公司 一种生成区块链的方法、装置及区块链
CN109034809A (zh) * 2018-08-16 2018-12-18 北京京东尚科信息技术有限公司 区块链的生成方法、装置、区块链节点及存储介质
CN109146447A (zh) * 2018-07-09 2019-01-04 矩阵元技术(深圳)有限公司 区块链透明分片方法、装置及系统
CN109639550A (zh) * 2018-12-06 2019-04-16 北京磁云数字科技有限公司 一种多区块链网络组网方法、装置及系统
CN109688199A (zh) * 2018-11-28 2019-04-26 西安电子科技大学 一种多域分层物联网联盟链平台及其分片方法、计算机
CN109949160A (zh) * 2019-03-27 2019-06-28 上海优扬新媒信息技术有限公司 一种区块链的分片方法及装置
KR20190095067A (ko) * 2018-06-22 2019-08-14 주식회사 코인플러그 블록체인 기반의 머클트리를 이용한 정보 관리 방법, 이를 이용한 서버 및 단말
WO2019207504A1 (en) * 2018-04-27 2019-10-31 nChain Holdings Limited Maintaining blocks of a blockchain in a partitioned blockchain network
CN110505305A (zh) * 2019-08-27 2019-11-26 深圳市网心科技有限公司 一种区块链分片方法、装置及区块链系统
CN110557440A (zh) * 2019-08-08 2019-12-10 北京芯际科技有限公司 一种基于区块链的多层分片结构

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10193696B2 (en) * 2015-06-02 2019-01-29 ALTR Solutions, Inc. Using a tree structure to segment and distribute records across one or more decentralized, acylic graphs of cryptographic hash pointers

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016197994A1 (zh) * 2015-12-03 2016-12-15 中兴通讯股份有限公司 容量扩展方法及装置
CN106899680A (zh) * 2017-03-09 2017-06-27 上海亿账通区块链科技有限公司 多区块链的分片处理方法和装置
CN107766540A (zh) * 2017-10-31 2018-03-06 上海分布信息科技有限公司 一种分区的区块链网络及其实现分区存储的方法
WO2019207504A1 (en) * 2018-04-27 2019-10-31 nChain Holdings Limited Maintaining blocks of a blockchain in a partitioned blockchain network
KR20190095067A (ko) * 2018-06-22 2019-08-14 주식회사 코인플러그 블록체인 기반의 머클트리를 이용한 정보 관리 방법, 이를 이용한 서버 및 단말
CN109146447A (zh) * 2018-07-09 2019-01-04 矩阵元技术(深圳)有限公司 区块链透明分片方法、装置及系统
CN108881488A (zh) * 2018-08-01 2018-11-23 夸克链科技(深圳)有限公司 一种基于分域的区块链交易处理方法及网络
CN109033422A (zh) * 2018-08-08 2018-12-18 云南天之游科技股份有限公司 一种生成区块链的方法、装置及区块链
CN109034809A (zh) * 2018-08-16 2018-12-18 北京京东尚科信息技术有限公司 区块链的生成方法、装置、区块链节点及存储介质
CN109688199A (zh) * 2018-11-28 2019-04-26 西安电子科技大学 一种多域分层物联网联盟链平台及其分片方法、计算机
CN109639550A (zh) * 2018-12-06 2019-04-16 北京磁云数字科技有限公司 一种多区块链网络组网方法、装置及系统
CN109949160A (zh) * 2019-03-27 2019-06-28 上海优扬新媒信息技术有限公司 一种区块链的分片方法及装置
CN110557440A (zh) * 2019-08-08 2019-12-10 北京芯际科技有限公司 一种基于区块链的多层分片结构
CN110505305A (zh) * 2019-08-27 2019-11-26 深圳市网心科技有限公司 一种区块链分片方法、装置及区块链系统

Also Published As

Publication number Publication date
CN110958324A (zh) 2020-04-03

Similar Documents

Publication Publication Date Title
CN110958324B (zh) 一种区块链网络的数据处理方法及装置
CN107819829B (zh) 访问区块链的方法、系统、区块链节点设备及用户终端
CN102708165B (zh) 分布式文件系统中的文件处理方法及装置
CN103338243B (zh) Web节点的缓存数据更新方法和系统
CN110489059B (zh) 数据集群存储的方法、装置及计算机设备
JP5741150B2 (ja) 中継装置、中継プログラム、及び中継方法
CN108259346B (zh) 一种等价路由表项建立方法和装置
CN111338806B (zh) 一种业务控制方法及装置
CN112311596A (zh) 数据管理方法、装置、设备及计算机存储介质
CN110602108B (zh) 基于区块链网络的数据通信方法、装置、设备及存储介质
US9973427B2 (en) Method for determining management domain, network device, and virtual cluster
CN103731516B (zh) 基于嵌套视图的dns解析方法及其系统
CN109918021B (zh) 数据处理方法和装置
CN103095727A (zh) P2p资源定位方法
CN103139081A (zh) 分布式哈希表路由表更新方法及节点
Vu et al. An efficient peer-to-peer bitcoin protocol with probabilistic flooding
CN101645831A (zh) 一种p2p系统中的节点组织方法
CN109617989B (zh) 用于负载分配的方法、装置、系统和计算机可读介质
US10165086B2 (en) Information processing system, server apparatus, information processing method, and computer program product
CN111352938A (zh) 数据处理方法、计算机设备及存储介质
CN111340623A (zh) 一种数据存储方法及装置
CN111124316A (zh) 存储空间的共享方法和装置及计算机可读存储介质
CN114338714B (zh) 一种区块同步方法、装置、电子设备和存储介质
CN103001987B (zh) 一种数据处理方法和数据处理节点
KR20130068051A (ko) 식별자 관리 장치 및 그것의 식별자 관리 방법

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 401121 b7-7-2, Yuxing Plaza, No.5 Huangyang Road, Yubei District, Chongqing

Applicant after: Chongqing duxiaoman Youyang Technology Co.,Ltd.

Address before: 201800 room j1328, 3 / F, building 8, 55 Huiyuan Road, Jiading District, Shanghai

Applicant before: SHANGHAI YOUYANG NEW MEDIA INFORMATION TECHNOLOGY Co.,Ltd.

CB02 Change of applicant information
CB02 Change of applicant information

Address after: 401121 b7-7-2, Yuxing Plaza, No.5 Huangyang Road, Yubei District, Chongqing

Applicant after: Chongqing duxiaoman Youyang Technology Co.,Ltd.

Address before: 201800 room j1328, 3 / F, building 8, 55 Huiyuan Road, Jiading District, Shanghai

Applicant before: SHANGHAI YOUYANG NEW MEDIA INFORMATION TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20211229

Address after: 100193 Room 606, 6 / F, building 4, West District, courtyard 10, northwest Wangdong Road, Haidian District, Beijing

Applicant after: Du Xiaoman Technology (Beijing) Co.,Ltd.

Address before: 401121 b7-7-2, Yuxing Plaza, No.5 Huangyang Road, Yubei District, Chongqing

Applicant before: Chongqing duxiaoman Youyang Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant