一种提升区块链节点写入性能的方法及系统技术方案

技术编号:28711049 阅读:55 留言:0更新日期:2021-06-06 00:09
本发明专利技术涉及一种提升区块链节点写入性能的方法及系统。该方法和系统应用于区块链系统的终端设备,具体为在根据既定的工作量证明方法产生新区块过程中,对新区块通过加注标记点的方式进行标记;然后根据预设的判断规则对标记点依次进行判断,当标记点符合判断规则时,将符合判断规则的标记点作为压缩标记;最后每产生一个新的压缩标记,将压缩标记之前的未经压缩的新区块进行压缩处理。从而使产生的区块的文件大小有效降低,这样一来,当新加入终端下载区块链中的数据区块时,能够有效降低所需下载的数据量,从而提高下载效率,进而提升区块链节点写入性能。块链节点写入性能。块链节点写入性能。

【技术实现步骤摘要】
一种提升区块链节点写入性能的方法及系统


[0001]本专利技术涉及区块链
,尤其涉及一种提升区块链节点写入性能的方法及系统。

技术介绍

[0002]传统的区块链存储模式,是一棵参天的 MPT 树。区块链上所有的数据,都汇聚到这棵树上来。对数据的每一次写或读,都是一次从树枝到树根(或者从树根到树枝)的漫长旅行。随着链上的数据越来越多,树也越来越高,树枝到树根的路程会变得越来越长。
[0003]更麻烦的是,虽然树枝有很多个,但是树根只有一个。区块链的速度困境是“贵”在信任,“慢”得其所,说到底,根因还是在其“用计算换信任”的设计思路上。业内普遍赞誉区块链是信任的机器,为了实现信任,区块链不得不做很多复杂而繁琐的操作,目前影响区块链性能的因素主要包括广播通信、信息加解密、共识机制、交易验证机制等几个环节。比如,共识机制的目标是为了使得参与节点的信息一致,但在高度分散的系统达成共识本身就是一件耗时的任务,如果考虑会有节点作恶,这会更加增加处理的复杂性。

技术实现思路

[0004]本专利技术的目的在于提供一种提升区块链节点写入性能的方法及系统,该方法能够有效降低所需下载的数据量,从而提高下载效率,进而提升区块链节点写入性能。
[0005]为实现上述目的,本专利技术的技术方案是:一种提升区块链节点写入性能的方法,包括:从N个节点设备中选择一个节点设备作为目标节点设备,并将目标节点设备对应的区块数据副本加入一压缩数据副本集合;执行甄选迭代步骤,直到压缩数据副本集合内匹配的区块数据副本的数量大于区块链的系统容错数;所述甄选迭代步骤包括:从N个节点设备中目标节点设备以外的节点设备中,依次选择一节点设备作为对比节点设备;通过对比节点数据量大小判断目标节点设备与对比节点设备对应的区块数据副本是否匹配,如果是,将对比节点对应的区块数据副本加入压缩数据副本集合。
[0006]在本专利技术一实施例中,该方法还包括:如果执行所述甄选迭代步骤,所述压缩数据副本集合内的区块数据副本的数量仍未大于所述区块链的系统容错数,则从所述N个节点设备中重新选择一节点设备作为目标节点设备,并重复执行所述甄选迭代步骤,直至所述压缩数据副本集合内的区块数据副本的数量大于所述区块链的系统容错数。
[0007]在本专利技术一实施例中,该方法应用于区块链系统的终端设备中,即在根据既定的工作量证明方法产生新区块过程中,对新区块通过加注标记点的方式进行标记;然后根据预设的判断规则对标记点依次进行判断,当标记点符合判断规则时,将符合判断规则的标
记点作为压缩标记;最后每产生一个新的压缩标记,将压缩标记之前的未经压缩的新区块进行压缩处理。
[0008]在本专利技术一实施例中,所述对新区块通过加注标记点的方式进行标记,包括:在产生新区块过程中,如果根据工作量证明方法计算哈西值的前n位为产生新区块,则将哈西值的n+1位为预设值的新区块作为待添加标记区块,n为正整数;将标记点加入到待添加标记区块内,得到标记后的新区块。
[0009]在本专利技术一实施例中,所述将标记点加入到所述待添加标记区块内,包括:将标记点加入到所述待添加标记区块的区块头中。
[0010]在本专利技术一实施例中,所述根据预设的判断规则对标记点进行判断,包括:利用预设计算公式对标记点进行计算,得到一个计算结果;如果所述计算结果符合预设的结果规律,则判定标记点符合判断规则。
[0011]在本专利技术一实施例中,所述将压缩标记之前的未经压缩的新区块进行压缩处理,包括:仅在存在多个压缩标记的情况下,将当前压缩标记的前一个压缩标记以前的且未经压缩处理的新区块按预设压缩方式进行压缩处理。
[0012]在本专利技术一实施例中,所述多个压缩标记为至少大于或等于2个压缩标记。
[0013]本专利技术还提供了一种提升区块链节点写入性能的系统,包括存储器、处理器以及存储于存储器上并能够被处理器运行的计算机程序指令,当处理器运行该计算机程序指令时,能够实现如上述所述的方法步骤。
[0014]相较于现有技术,本专利技术具有以下有益效果:本专利技术方法能够有效降低所需下载的数据量,从而提高了下载效率,进而提升区块链节点写入性能。
附图说明
[0015]图1为本专利技术方法流程示意图。
具体实施方式
[0016]下面结合附图,对本专利技术的技术方案进行具体说明。
[0017]应该指出,以下详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属
的普通技术人员通常理解的相同含义。
[0018]需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
[0019]本专利技术提供了一种提升区块链节点写入性能的方法,包括:从N个节点设备中选择一个节点设备作为目标节点设备,并将目标节点设备对应的区块数据副本加入一压缩数据副本集合;执行甄选迭代步骤,直到压缩数据副本集合内匹配的区块数据副本的数量大于区块链的系统容错数;所述甄选迭代步骤包括:从N个节点设备中目标节点设备以外的节点设备中,依次
选择一节点设备作为对比节点设备;通过对比节点数据量大小判断目标节点设备与对比节点设备对应的区块数据副本是否匹配,如果是,将对比节点对应的区块数据副本加入压缩数据副本集合。
[0020]该方法还包括:如果执行所述甄选迭代步骤,所述压缩数据副本集合内的区块数据副本的数量仍未大于所述区块链的系统容错数,则从所述N个节点设备中重新选择一节点设备作为目标节点设备,并重复执行所述甄选迭代步骤,直至所述压缩数据副本集合内的区块数据副本的数量大于所述区块链的系统容错数。
[0021]本专利技术方法具体应用于区块链系统的终端设备中,即在根据既定的工作量证明方法产生新区块过程中,对新区块通过加注标记点的方式进行标记;然后根据预设的判断规则对标记点依次进行判断,当标记点符合判断规则时,将符合判断规则的标记点作为压缩标记;最后每产生一个新的压缩标记,将压缩标记之前的未经压缩的新区块进行压缩处理。
[0022]判断规则可以理解为一种计算公式,用于对标记点进行计算,例如,对于带有序号的标记点,可以利用简单的除法公式,将Mx中的X除以10,从而得到一个结果,该结果为整数或者普通的带有小树的有理数或无理数;如果上述结果符合预设的结果规律,例如整好为整数时,判定该标记点为压缩标记,如果除数选择10,这时M10、M20、M30、 M40......这些标记点则为判定的压缩标记。
[0023]所述根据预设的判断规则对标记点进行判断,包括:利用预设计算公式对标记点进行计算,得到一个计算结果;如果所述计算结果符合预设的结果规律,则判定标记点符合判断规则。
[0024]所述对新区块通过加注标记点的方式本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种提升区块链节点写入性能的方法,其特征在于,包括:从N个节点设备中选择一个节点设备作为目标节点设备,并将目标节点设备对应的区块数据副本加入一压缩数据副本集合;执行甄选迭代步骤,直到压缩数据副本集合内匹配的区块数据副本的数量大于区块链的系统容错数;所述甄选迭代步骤包括:从N个节点设备中目标节点设备以外的节点设备中,依次选择一节点设备作为对比节点设备;通过对比节点数据量大小判断目标节点设备与对比节点设备对应的区块数据副本是否匹配,如果是,将对比节点对应的区块数据副本加入压缩数据副本集合。2.根据权利要求1所述的一种提升区块链节点写入性能的方法,其特征在于,该方法还包括:如果执行所述甄选迭代步骤,所述压缩数据副本集合内的区块数据副本的数量仍未大于所述区块链的系统容错数,则从所述N个节点设备中重新选择一节点设备作为目标节点设备,并重复执行所述甄选迭代步骤,直至所述压缩数据副本集合内的区块数据副本的数量大于所述区块链的系统容错数。3.根据权利要求1所述的一种提升区块链节点写入性能的方法,其特征在于,该方法应用于区块链系统的终端设备中,即在根据既定的工作量证明方法产生新区块过程中,对新区块通过加注标记点的方式进行标记;然后根据预设的判断规则对标记点依次进行判断,当标记点符合判断规则时,将符合判断规则的标记点作为压缩标记;最后每产生一个新的压缩标记,将压缩标记之前的未经压缩的新区块进行压缩处理。4.根据权利要求3所述的一种提升区块链节点写...

【专利技术属性】
技术研发人员:吴志雄黄文峰汪翔苏志亮
申请(专利权)人:福建南威软件有限公司
类型:发明
国别省市:

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

1