CN109189327A - 区块链数据的压缩处理方法和装置 - Google Patents

区块链数据的压缩处理方法和装置 Download PDF

Info

Publication number
CN109189327A
CN109189327A CN201810847153.8A CN201810847153A CN109189327A CN 109189327 A CN109189327 A CN 109189327A CN 201810847153 A CN201810847153 A CN 201810847153A CN 109189327 A CN109189327 A CN 109189327A
Authority
CN
China
Prior art keywords
data copy
node device
block
block chain
compressed data
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
Application number
CN201810847153.8A
Other languages
English (en)
Other versions
CN109189327B (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.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201810847153.8A priority Critical patent/CN109189327B/zh
Publication of CN109189327A publication Critical patent/CN109189327A/zh
Priority to TW108101810A priority patent/TWI705368B/zh
Priority to PCT/CN2019/084079 priority patent/WO2020019779A1/zh
Application granted granted Critical
Publication of CN109189327B publication Critical patent/CN109189327B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0623Securing storage systems in relation to content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Retry When Errors Occur (AREA)
  • Hardware Redundancy (AREA)

Abstract

本说明书的一个或多个实施例提供了一种区块链数据的压缩处理方法,区块链的N个节点设备对应的区块数据副本被存储于与区块链对接的存储***,所述方法包括:从所述N个节点设备中选择一个节点设备作为目标节点设备,并将所述目标节点设备对应的区块数据副本加入一压缩数据副本集合;执行甄选迭代步骤,直到所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,所述甄选步骤包括:从所述N个节点设备中所述目标节点设备以外的节点设备中,依次选择一节点设备作为对比节点设备;确定所述目标节点设备与所述对比节点设备对应的区块数据副本是否匹配,如果是,将所述对比节点对应的区块数据副本加入所述压缩数据副本集合。

Description

区块链数据的压缩处理方法和装置
技术领域
本说明书涉及网络通信技术领域,尤其涉及一种区块链数据的压缩处理方法和装置。
背景技术
区块链技术,也被称之为分布式账本技术,是一种由若干台计算设备共同参与“记账”,共同维护一份完整的分布式数据库的新兴技术。在现有的区块链部署上云的服务中,区块链的数据通过数据库和文件的形式存储在云磁盘中。部署在云上的区块链***的节点越多,存储的数据副本越多,云上存储资源消耗也就越多。
发明内容
针对以上提出的问题,本说明书提供了一种区块链数据的压缩处理方法,所述区块链的N个节点设备对应的区块数据副本被存储于与所述区块链对接的存储***,所述方法包括:
从所述N个节点设备中选择一个节点设备作为目标节点设备,并将所述目标节点设备对应的区块数据副本加入一压缩数据副本集合;
执行甄选迭代步骤,直到所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,所述甄选步骤包括:从所述N个节点设备中所述目标节点设备以外的节点设备中,依次选择一节点设备作为对比节点设备;确定所述目标节点设备与所述对比节点设备对应的区块数据副本是否匹配,如果是,将所述对比节点对应的区块数据副本加入所述压缩数据副本集合。
更优的,上述方法还包括:如果执行所述甄选迭代步骤,所述压缩数据副本集合内的区块数据副本的数量仍未大于所述区块链的***容错数,则从所述N个节点设备中重新选择一节点设备作为目标节点设备,并重复执行所述甄选迭代步骤,直至所述压缩数据副本集合内的区块数据副本的数量大于所述区块链的***容错数。
更优的,所述存储***支持的容错算法为拜占庭容错算法;上述方法中所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,包括:
所述压缩数据副本集合内匹配的区块数据副本的数量既大于所述区块链的***容错数,又大于所述压缩数据副本集合在所述存储***中的拜占庭容错值的三倍。
更优的,上述方法还包括:
当所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,删除所述存储***中存储的除所述压缩数据副本集合中的数据副本以外的数据副本;
以及,将删除的区块数据副本的数据访问路径变更为所述压缩数据副本集合中的区块数据副本的数据访问路径。
更优的,上述方法中所述存储***为与所述区块链对接的云存储***。
相应地,本说明书还提供了一种区块链数据的压缩处理装置,所述区块链的N个节点设备对应的区块数据副本被存储于与所述区块链对接的存储***,所述装置包括:
目标数据选择单元,从所述N个节点设备中选择一个节点设备作为目标节点设备,并将所述目标节点设备对应的区块数据副本加入一压缩数据副本集合;
甄选迭代执行单元,执行甄选迭代步骤,直到所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,所述甄选步骤包括:从所述N个节点设备中所述目标节点设备以外的节点设备中,依次选择一节点设备作为对比节点设备;确定所述目标节点设备与所述对比节点设备对应的区块数据副本是否匹配,如果是,将所述对比节点对应的区块数据副本加入所述压缩数据副本集合。
更优的,上述装置的甄选迭代执行单元,如果执行所述甄选迭代步骤,所述压缩数据副本集合内的区块数据副本的数量仍未大于所述区块链的***容错数,则从所述N个节点设备中重新选择一节点设备作为目标节点设备,并重复执行所述甄选迭代步骤,直至所述压缩数据副本集合内的区块数据副本的数量大于所述区块链的***容错数。
更优的,所述存储***支持的容错算法为拜占庭容错算法;上述装置中所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,包括:
所述压缩数据副本集合内匹配的区块数据副本的数量既大于所述区块链的***容错数,又大于所述压缩数据副本集合在所述存储***中的拜占庭容错值的三倍。
更优的,上述装置还包括:
数据删除单元,当所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,删除所述存储***中存储的除所述压缩数据副本集合中的数据副本以外的数据副本;
以及,访问路径变更单元,将删除的区块数据副本的数据访问路径变更为所述压缩数据副本集合中的区块数据副本的数据访问路径。
更优的,上述装置中所述存储***为与所述区块链对接的云存储***。
相应地,本说明书还提供了一种计算机设备,包括:存储器和处理器;所述存储器上存储有可由处理器运行的计算机程序;所述处理器运行所述计算机程序时,执行如上述区块链数据的压缩处理方法所述的步骤。
相应地,本说明书还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行如上述区块链数据的压缩处理方法所述的步骤。
应用本说明书所提供的区块链数据的压缩处理方法、装置、计算机设备和计算机可读存储介质,可将区块链***存储于一存储***的区块数据副本进行整理和压缩,将上述区块链***存储于上述存储***的区块数据副本整理成满足区块链的***容错规则、且数据内容完全相同的区块数据副本,剔除由无效数据、及过多有效数据的存储造成的存储资源浪费。
附图说明
图1为本说明书一示例性实施例提供的区块链数据的压缩处理方法流程图;
图2为本说明书一示例性实施例提供的一种区块链数据的压缩处理装置的示意图;
图3为运行本说明书所提供的区块链数据的压缩处理方法或装置实施例的一种硬件结构图。
具体实施方式
“区块链”,具体可指一个各节点通过共识机制达成的、具有分布式数据存储结构的P2P网络***,该区块链内的数据分布在时间上相连的一个个“区块(block)”之内,后一区块包含前一区块的数据摘要,且根据具体的共识机制(如POW、POS、DPOS或PBFT等)的不同,达成全部或部分节点的数据全副本。由于云存储技术的发展,区块链***的节点可以将其应存储的全部或部分的区块数据副本存储上云,甚至还可以将整个节点设备部署上云。当部署上云空间的区块链***的节点越多,或区块链***的节点将其应存储的区块数据副本在云空间存储得越多,云上存储资源的消耗也就越多。
另外,本领域的技术人员应知,区块链各个节点存储的区块数据副本在区块链共识机制的保证下基本完全一致,仅有少部分节点由于恶意、故障或其他原因导致其存储的区块数据与其他节点不完全一致,各个区块链从自身应用场景的实际出发,均设置有各自的容错机制,上述少部分节点存储的区块数据由于不契合区块链的共识,可被视为无效数据。上述少部分节点存储的区块数据副本如果也被部署上云,则进一步增加了云空间的浪费。
为解决如上所述的问题,图1示意了本说明书一示意性实施例提供的一种区块链数据的压缩处理方法,所述区块链的N个节点设备对应的区块数据副本被存储于与所述区块链对接的存储***,所述方法包括:
从所述N个节点设备中选择一个节点设备作为目标节点设备,并将所述目标节点设备对应的区块数据副本加入一压缩数据副本集合;
执行甄选迭代步骤,直到所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,所述甄选步骤包括:从所述N个节点设备中所述目标节点设备以外的节点设备中,依次选择一节点设备作为对比节点设备;确定所述目标节点设备与所述对比节点设备对应的区块数据副本是否匹配,如果是,将所述对比节点对应的区块数据副本加入所述压缩数据副本集合。
上述实施例所述的存储***,是指可存储区块链的N个节点对应的区块数据副本的空间,包括但不限于云空间、存储服务器、存储服务器集群等,可通过集群应用、网络技术或分布式文件***等功能,将网络中大量的存储设备集合起来协同工作,从而对外提供数据存储和业务访问功能的***。
上述实施例所述的区块数据是指区块链上每个区块内的全部数据,上述实施例所述的N个节点对应的区块数据副本,可以是上述N个节点对应的全部区块数据副本,也可以是上述N个节点对应的部分区块数据副本,如N个节点对应的、区块高度从1000至2000的区块数据副本。
上述实施例所述的从所述N个节点设备中选择一个节点设备作为目标节点设备,该“选择”目标节点设备的方式不作限定,可以为随机选择,也可以为按照预设的规则进行选择。上述压缩数据副本集合可初始化为空,专用于收集与所述目标节点设备对应的区块数据副本相同的区块数据副本,是经过本说明书所提供的区块链数据的压缩处理后得到的区块压缩数据副本集合;可选的,上述压缩数据副本集合也可是上述N个节点对应的全部区块数据副本经压缩处理后所得集合的子集。
上述实施例所述的甄选迭代步骤,用于为上述压缩数据副本集合甄选出满足***设定阈值的区块数据副本数量。区块链各个节点存储的区块数据副本在区块链共识机制的保证下基本完全一致,仅有少部分节点由于恶意、故障或其他原因导致其存储的区块数据与其他节点不完全一致,各个区块链从自身应用场景的实际出发,均设置有各自的容错机制。因此经过上述甄选迭代步骤,上述压缩数据副本集合中的匹配的区块数据副本(包括目标节点设备对应的区块数据副本)的数量至少要大于上述区块链的***容错数,即n>f,其中n为上述压缩数据副本集合中匹配的区块数据副本的数量,f为上述区块链的***容错数,n与f都为自然数,因此n至少应为f+1。本领域的技术人员熟知,区块链***的容错数通常由区块链***的共识机制确定,例如在PBFS共识协议下,区块链***的容错数f应满足:f<(P-1)/3,P为所述区块链参与共识的节点个数。本说明书并不限定区块链***的共识协议类型,但上述压缩数据副本集合中匹配的区块数据副本的数量n至少应大于区块链***的容错数f,从而保证上述压缩数据副本集合中的区块数据副本属于上述区块链共识的有效数据副本。
上述实施例所述的甄选迭代步骤中,所述依次选择一节点设备作为对比节点设备中,所述“依次选择”的方式可以有多种,例如,存储***可以为在其内存储的各个节点设备编号,按照编号从小到大的顺序或从大到小的顺序或其他任何常用的顺序方式进行依次选择,在本说明书中不作限定。
上述实施例所述的确定所述目标节点设备与所述对比节点设备对应的区块数据副本是否匹配,是指确定确定所述目标节点设备与所述对比节点设备对应的区块数据副本是否完全相同,如果是,将所述对比节点对应的区块数据副本加入所述压缩数据副本集合;如上所述,当所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数时,上述压缩数据副本集合内的区块数据副本一定是经过区块链***共识确认后的正确的区块数据,至此,存储***将原本存储的、N个节点设备对应的区块数据副本,舍去(可以删除)不符合区块链的***共识结果的区块数据副本,进而压缩为上述压缩数据副本集合,上述压缩数据副本集合的数量至少大于上述区块链的***容错数,但一定小于N,因此起到了节约上述存储***的存储资源的作用。
在又一示出的实施例中,上述区块链数据的压缩处理方法还包括:
如果执行所述甄选迭代步骤,所述压缩数据副本集合内的区块数据副本的数量仍未大于所述区块链的***容错数,则从所述N个节点设备中重新选择一节点设备作为目标节点设备,并重复执行所述甄选迭代步骤,直至所述压缩数据副本集合内的区块数据副本的数量大于所述区块链的***容错数。
在上述的实施例中,当一轮甄选迭代步骤执行完毕后,所述压缩数据副本集合内匹配的区块数据副本的数量不大于(即小于或等于)所述区块链的***容错数时,上述目标节点设备对应的区块数据副本可能包含有恶意或故障数据,与区块链***经共识机制确认后的共识数据不同,因此,存储***需将原压缩数据副本集合清空,重新选取另一个节点设备作为目标节点设备,并将其对应的区块数据副本加入上述压缩数据副本集合,进行下一轮次的甄选迭代步骤,直至所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,所述压缩数据副本集合甄选完毕。
当上述轮次的甄选迭代步骤执行完毕,若存储***仍未甄选出符合目标数量(数量至少大于区块链***的容错数)的压缩数据副本集合,则存储***应迭代执行清空上轮次所得的压缩数据副本集合、重新选择目标节点设备、重新执行针对新选择的目标节电设备对应的区块数据副本的甄选迭代步骤的全部步骤,具体过程如上,在此不再赘述。
值得注意的是,上述实施例所述的清空所述压缩数据副本集合,可以表现为清空上次甄选迭代步骤所得的压缩数据副本集合,也可表现为再重新建立一个新的压缩数据副本集合空集(或空子集),在本说明书中不做限定。
在本说明书示出的又一实施例中,当所述存储***支持的容错算法为拜占庭容错算法时,上述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,包括:所述压缩数据副本集合内匹配的区块数据副本的数量既大于所述区块链的***容错数,又大于所述压缩数据副本集合在所述存储***中的拜占庭容错值的三倍。
本领域的技术人员应知,为保证上述压缩数据副本集合内收集的区块数据副本为经过区块链***的共识认定的数据,而非恶意节点或故障节点保存的错误数据,该压缩数据副本集合内匹配的区块数据副本的数量需大于所述区块链***的容错数;进一步地,由于存储***可设置多台服务设备以存储上述区块链中多个节点设备对应的区块数据副本,该存储***会基于自身的服务设备的运行情况进行拜占庭容错的设置,例如,在该存储***中,设置有M个存储服务器以存储上述区块链中压缩数据副本集合内匹配的区块数据副本,为容纳上述M个存储服务器可能发生的故障或其他错误,该存储***通常应设置一容错数s,且需满足M>3s,该容错数s被称为该存储***的拜占庭容错数。关于该拜占庭容错数s与存储***的存储服务器的数量M(可视为发起***响应的节点数量M)的关系,是由以下过程导出:
***在向M个存储服务器或节点发起指令时,由于存在s个错误节点,那么***接收到的M-s个应答收到的正常节点的回答应大于有问题的节点,所以存储***需满足M-s-s>s,由于M与s均为自然数,M至少应为3s+1。因此上述压缩数据副本集合内的区块数据副本需大于上述存储***的拜占庭容错数的3倍。
在本说明书示出的又一实施例中,当所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,删除所述存储***中存储的除了所述压缩数据副本集合中的数据副本以外的数据副本;以及,将删除的数据副本的数据访问路径变更为所述压缩数据副本集合中的数据副本的数据访问路径。
在上述实施例中,当所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数时,即上述压缩数据副本集合甄选完毕,存储***可删除所述存储***中存储的除所述压缩数据副本集合中的数据副本以外的数据副本,以节约存储***的存储资源;同时,由于上述区块链中一些节点设备对应的区块数据副本已经被删除,上述节点设备应业务需求在上述存储***中访问其对应的区块数据副本时,存储***应将已删除的区块数据副本的数据访问路径变更为指向上述压缩数据副本集合中的区块数据副本的数据访问路径,例如,存储***可将上述节点设备与被删除的区块数据副本的映射,更新为上述节点设备与压缩数据副本集合中的区块数据副本的映射,以帮助上述节点设备访问其对应的区块数据副本。
在本说明书示出的又一实施例中,上述存储***可以为与所述区块链对接的云存储***。
与上述流程实现对应,本说明书的实施例还提供了一种区块链数据的压缩处理装置。该装置可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为逻辑意义上的装置,是通过所在设备的CPU(Central Process Unit,中央处理器)将对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,除了图3所示的CPU、内存以及存储器之外,该数据处理装置所在的设备通常还包括用于进行无线信号收发的芯片等其他硬件,和/或用于实现网络通信功能的板卡等其他硬件。
图2所示为本说明书所提供的一种区块链数据的压缩处理装置20,所述区块链的N个节点设备对应的区块数据副本被存储于与所述区块链对接的存储***,所述装置20包括:
目标数据选择单元202,从所述N个节点设备中选择一个节点设备作为目标节点设备,并将所述目标节点设备对应的区块数据副本加入一压缩数据副本集合;
甄选迭代执行单元204,执行甄选迭代步骤,直到所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,所述甄选步骤包括:从所述N个节点设备中所述目标节点设备以外的节点设备中,依次选择一节点设备作为对比节点设备;确定所述目标节点设备与所述对比节点设备对应的区块数据副本是否匹配,如果是,将所述对比节点对应的区块数据副本加入所述压缩数据副本集合。
更优的,上述装置20的甄选迭代执行单元204,如果执行所述甄选迭代步骤,所述压缩数据副本集合内的区块数据副本的数量仍未大于所述区块链的***容错数,则从所述N个节点设备中重新选择一节点设备作为目标节点设备,并重复执行所述甄选迭代步骤,直至所述压缩数据副本集合内的区块数据副本的数量大于所述区块链的***容错数。
更优的,所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,包括:
所述压缩数据副本集合内匹配的区块数据副本的数量既大于所述区块链的***容错数,又大于所述压缩数据副本集合在所述存储***中的拜占庭容错值的三倍。
更优的,上述装置20还包括:
数据删除单元208,当所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,删除所述存储***中存储的除所述压缩数据副本集合中的数据副本以外的数据副本;
以及,访问路径变更单元210,将删除的区块数据副本的数据访问路径变更为所述压缩数据副本集合中的区块数据副本的数据访问路径。
更优的,所述存储***为与所述区块链对接的云存储***。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,相关之处参见方法实施例的部分说明即可,在此不再赘述。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部单元或模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
上述实施例阐明的装置、单元、模块,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
与上述方法实施例相对应,本说明书的实施例还提供了一种计算机设备,该计算机设备包括存储器和处理器。其中,存储器上存储有能够由处理器运行的计算机程序;处理器在运行存储的计算机程序时,执行本说明书实施例中区块链数据的压缩处理方法的各个步骤。对存储***对区块链数据的压缩处理方法的各个步骤的详细描述请参见之前的内容,不再重复。
与上述方法实施例相对应,本说明书的实施例还提供了一种计算机可读存储介质,该存储介质上存储有计算机程序,这些计算机程序在被处理器运行时,执行本说明书实施例中区块链数据的压缩处理方法的各个步骤。对存储***对区块链数据的压缩处理方法的各个步骤的详细描述请参见之前的内容,不再重复。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。
计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、***或计算机程序产品。因此,本说明书的实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书的实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

Claims (12)

1.一种区块链数据的压缩处理方法,所述区块链的N个节点设备对应的区块数据副本被存储于与所述区块链对接的存储***,所述方法包括:
从所述N个节点设备中选择一个节点设备作为目标节点设备,并将所述目标节点设备对应的区块数据副本加入压缩数据副本集合;
执行甄选迭代步骤,直到所述压缩数据副本集合内的区块数据副本的数量大于所述区块链的***容错数;
其中,所述甄选步骤包括:从所述N个节点设备中所述目标节点设备以外的节点设备中,依次选择一节点设备作为对比节点设备;确定所述目标节点设备与所述对比节点设备对应的区块数据副本是否匹配,如果是,将所述对比节点对应的区块数据副本加入所述压缩数据副本集合。
2.根据权利要求1所述的方法,所述方法还包括:
如果执行所述甄选迭代步骤,所述压缩数据副本集合内的区块数据副本的数量仍未大于所述区块链的***容错数,则从所述N个节点设备中重新选择一节点设备作为目标节点设备,并重复执行所述甄选迭代步骤,直至所述压缩数据副本集合内的区块数据副本的数量大于所述区块链的***容错数。
3.根据权利要求1或2所述的方法,所述存储***支持的容错算法为拜占庭容错算法;所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,包括:
所述压缩数据副本集合内匹配的区块数据副本的数量既大于所述区块链的***容错数,又大于所述压缩数据副本集合在所述存储***中的拜占庭容错值的三倍。
4.根据权利要求3所述的方法,还包括:
当所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,删除所述存储***中存储的除所述压缩数据副本集合中的数据副本以外的数据副本;
以及,将删除的区块数据副本的数据访问路径变更为所述压缩数据副本集合中的区块数据副本的数据访问路径。
5.根据权利要求1所述的方法,所述存储***为与所述区块链对接的云存储***。
6.一种区块链数据的压缩处理装置,所述区块链的N个节点设备对应的区块数据副本被存储于与所述区块链对接的存储***,所述装置包括:
目标数据选择单元,从所述N个节点设备中选择一个节点设备作为目标节点设备,并将所述目标节点设备对应的区块数据副本加入压缩数据副本集合;
甄选迭代执行单元,执行甄选迭代步骤,直到所述压缩数据副本集合内的区块数据副本的数量大于所述区块链的***容错数;
其中,所述甄选步骤包括:从所述N个节点设备中所述目标节点设备以外的节点设备中,依次选择一节点设备作为对比节点设备;确定所述目标节点设备与所述对比节点设备对应的区块数据副本是否匹配,如果是,将所述对比节点对应的区块数据副本加入所述压缩数据副本集合。
7.根据权利要求6所述的装置,所述甄选迭代执行单元:
如果执行所述甄选迭代步骤,所述压缩数据副本集合内的区块数据副本的数量仍未大于所述区块链的***容错数,则从所述N个节点设备中重新选择一节点设备作为目标节点设备,并重复执行所述甄选迭代步骤,直至所述压缩数据副本集合内的区块数据副本的数量大于所述区块链的***容错数。
8.根据权利要求6或7所述的装置,所述存储***支持的容错算法为拜占庭容错算法;所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,包括:
所述压缩数据副本集合内匹配的区块数据副本的数量既大于所述区块链的***容错数,又大于所述压缩数据副本集合在所述存储***中的拜占庭容错值的三倍。
9.根据权利要求8所述的装置,还包括:
数据删除单元,当所述压缩数据副本集合内匹配的区块数据副本的数量大于所述区块链的***容错数,删除所述存储***中存储的除所述压缩数据副本集合中的数据副本以外的数据副本;
以及,访问路径变更单元,将删除的区块数据副本的数据访问路径变更为所述压缩数据副本集合中的区块数据副本的数据访问路径。
10.根据权利要求6所述的装置,所述存储***为与所述区块链对接的云存储***。
11.一种计算机设备,包括:存储器和处理器;所述存储器上存储有可由处理器运行的计算机程序;所述处理器运行所述计算机程序时,执行如权利要求1到5任意一项所述的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行如权利要求1到5任意一项所述的步骤。
CN201810847153.8A 2018-07-27 2018-07-27 区块链数据的压缩处理方法和装置 Active CN109189327B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201810847153.8A CN109189327B (zh) 2018-07-27 2018-07-27 区块链数据的压缩处理方法和装置
TW108101810A TWI705368B (zh) 2018-07-27 2019-01-17 區塊鏈資料的壓縮處理方法和裝置、電腦設備以及電腦可讀儲存媒體
PCT/CN2019/084079 WO2020019779A1 (zh) 2018-07-27 2019-04-24 区块链数据的压缩处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810847153.8A CN109189327B (zh) 2018-07-27 2018-07-27 区块链数据的压缩处理方法和装置

Publications (2)

Publication Number Publication Date
CN109189327A true CN109189327A (zh) 2019-01-11
CN109189327B CN109189327B (zh) 2020-05-05

Family

ID=64937710

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810847153.8A Active CN109189327B (zh) 2018-07-27 2018-07-27 区块链数据的压缩处理方法和装置

Country Status (3)

Country Link
CN (1) CN109189327B (zh)
TW (1) TWI705368B (zh)
WO (1) WO2020019779A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020019779A1 (zh) * 2018-07-27 2020-01-30 阿里巴巴集团控股有限公司 区块链数据的压缩处理方法和装置
CN112905704A (zh) * 2021-03-18 2021-06-04 南威软件股份有限公司 一种提升区块链节点写入性能的方法及***
CN113556327A (zh) * 2021-06-29 2021-10-26 中国人民解放军战略支援部队信息工程大学 基于区块链的虚假流规则注入攻击检测与预防***和方法
CN114024850A (zh) * 2020-11-30 2022-02-08 北京八分量信息科技有限公司 一种通过优化节点通讯来加速边缘节点运行的方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120197917A1 (en) * 2006-05-31 2012-08-02 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
CN106534273A (zh) * 2016-10-31 2017-03-22 中金云金融(北京)大数据科技股份有限公司 区块链元数据存储***及其存储方法与检索方法
CN106919476A (zh) * 2017-02-24 2017-07-04 中国科学院软件研究所 基于联盟链的数据安全备份方法、客户端及云服务端
CN107332876A (zh) * 2017-05-31 2017-11-07 深圳前海微众银行股份有限公司 区块链状态的同步方法及装置
CN108234134A (zh) * 2017-12-28 2018-06-29 江苏通付盾科技有限公司 区块同步方法及***

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10263892B2 (en) * 2015-03-20 2019-04-16 Microchip Technology Incorporated Compression method and system for user friendly address in mesh networking
CN105741095A (zh) * 2016-01-29 2016-07-06 彭军红 一种区块链动态压缩存取方法
GB201613109D0 (en) * 2016-07-29 2016-09-14 Eitc Holdings Ltd Computer implemented method and system
CN106886555A (zh) * 2016-12-27 2017-06-23 苏州春禄电子科技有限公司 一种基于区块链技术的防数据丢失和损坏的数据存储***
US10445302B2 (en) * 2017-01-03 2019-10-15 International Business Machines Corporation Limiting blockchain size to optimize performance
CN107181797B (zh) * 2017-05-11 2020-03-06 中国农业银行股份有限公司 一种区块链的区块压缩方法和***
CN107423426B (zh) * 2017-08-02 2020-06-02 众安信息技术服务有限公司 一种区块链块数据的数据归档方法及电子设备
CN109189327B (zh) * 2018-07-27 2020-05-05 阿里巴巴集团控股有限公司 区块链数据的压缩处理方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120197917A1 (en) * 2006-05-31 2012-08-02 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
CN106534273A (zh) * 2016-10-31 2017-03-22 中金云金融(北京)大数据科技股份有限公司 区块链元数据存储***及其存储方法与检索方法
CN106919476A (zh) * 2017-02-24 2017-07-04 中国科学院软件研究所 基于联盟链的数据安全备份方法、客户端及云服务端
CN107332876A (zh) * 2017-05-31 2017-11-07 深圳前海微众银行股份有限公司 区块链状态的同步方法及装置
CN108234134A (zh) * 2017-12-28 2018-06-29 江苏通付盾科技有限公司 区块同步方法及***

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020019779A1 (zh) * 2018-07-27 2020-01-30 阿里巴巴集团控股有限公司 区块链数据的压缩处理方法和装置
CN114024850A (zh) * 2020-11-30 2022-02-08 北京八分量信息科技有限公司 一种通过优化节点通讯来加速边缘节点运行的方法
CN114024850B (zh) * 2020-11-30 2024-02-02 北京八分量信息科技有限公司 一种通过优化节点通讯来加速边缘节点运行的方法
CN112905704A (zh) * 2021-03-18 2021-06-04 南威软件股份有限公司 一种提升区块链节点写入性能的方法及***
CN113556327A (zh) * 2021-06-29 2021-10-26 中国人民解放军战略支援部队信息工程大学 基于区块链的虚假流规则注入攻击检测与预防***和方法
CN113556327B (zh) * 2021-06-29 2022-09-20 中国人民解放军战略支援部队信息工程大学 基于区块链的虚假流规则注入攻击检测与预防***和方法

Also Published As

Publication number Publication date
TWI705368B (zh) 2020-09-21
TW202008147A (zh) 2020-02-16
CN109189327B (zh) 2020-05-05
WO2020019779A1 (zh) 2020-01-30

Similar Documents

Publication Publication Date Title
US20210160318A1 (en) Scale out storage platform having active failover
US10379951B2 (en) Hierarchic storage policy for distributed object storage systems
US11652884B2 (en) Customized hash algorithms
CN106302702B (zh) 数据的分片存储方法、装置及***
EP2288975B1 (en) Method for optimizing cleaning of maps in flashcopy cascades containing incremental maps
CN109189327A (zh) 区块链数据的压缩处理方法和装置
US9628438B2 (en) Consistent ring namespaces facilitating data storage and organization in network infrastructures
US20220335009A1 (en) Converting Storage Resources to Distributed Persistent Storage for Containerized Applications
CN108351806A (zh) 分布式基于流的数据库触发器
CN107924328A (zh) 选择虚拟机进行迁移的技术
US8931051B2 (en) Scalable and highly available clustering for large scale real-time applications
US20230080046A1 (en) Online Resize of a Volume of a Distributed Storage System
US10169085B2 (en) Distributed computing of a task utilizing a copy of an original file stored on a recovery site and based on file modification times
US20230376383A1 (en) Orchestrating Coordinated Snapshots Across Distinct Storage Environments
US20160044096A1 (en) Scaling Up and Scaling Out of a Server Architecture for Large Scale Real-Time Applications
US20230195444A1 (en) Software Application Deployment Across Clusters
CN111767144A (zh) 交易数据的交易路由确定方法、装置、设备及***
CN115756955A (zh) 一种数据备份、数据恢复的方法、装置及计算机设备
US20170075774A1 (en) Restoring a clone point-in-time copy
CN107463638A (zh) 离线虚拟机间文件共享方法和设备
CN109324867A (zh) 一种虚拟机暂存方法、恢复方法及装置
CN109151016B (zh) 流量转发方法和装置、服务***、计算设备及存储介质
US11687416B2 (en) Data backup optimization
CN108694102A (zh) 一种基于Nexus服务的数据操作方法、设备、***和介质
US11216263B2 (en) Policy-based automated generation of software-defined storage deployments

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40002458

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200923

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20200923

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Ltd.