区块数据归档方法及相关设备技术

技术编号:24799347 阅读:47 留言:0更新日期:2020-07-07 21:01
本申请提供了一种区块数据归档方法及相关设备。该方法包括:第一区块链节点在监测到自身存储的区块资源满足区块数据归档条件时,确定待归档的区块数据。第一区块链节点向同组区块链节点发送归档请求。第一区块链节点基于接收的同组区块链节点反馈的共识响应信息与同组区块链节点协商共识。若确定共识,且获取到第一区块链节点为共识区块链节点的共识结果,第一区块链节点将待归档的区块数据发送至第三方存储服务器进行归档,共识结果用于确定第一区块链节点或同组区块链节点中的任一区块链节点为共识区块链节点。通过上述过程,实现了在多个区块链节点间共享同一份归档数据,避免了冗余备份并有效提升了数据归档的实施效率、可操作性和灵活性。

【技术实现步骤摘要】
区块数据归档方法及相关设备
本申请涉及区块链
,尤其是,涉及一种区块数据归档方法及相关设备。
技术介绍
区块链是一种分布式账本,其通过维护数据块的链式结构,可以维护持续增长的、可共享的、不可篡改的数据记录。数据归档是指通过将过时或冗余的数据进行清空、重组或打包转存储至其他区块链节点,以达到回收磁盘空间,减少存储开销的目的。随着区块链技术的普及和推广,基于区块链的区块链数据归档技术也逐渐发展起来。现有的区块链数据归档方式为:首先,周期性地检测区块链区块链节点数据的区块高度值和访问频率,当本地存储区块数据个数超过预设值,则视为符合归档条件。然后,从本地区块链节点压缩并拷贝满足归档条件的区块数据。最后,将压缩包的文件哈希及附属信息插入到归档文件哈希表中,供数据查询时使用。但是,采用上述方式进行数据归档,区块链系统中的每个区块链节点都需要对本地区块链节点的归档数据进行备份,所造成的备份冗余,不仅会消耗网络和存储资源,增加运营成本,还降低了数据归档效率。并且,由于归档条件局限于区块高度和访问频率,还导致数据归档的灵活性降低。
技术实现思路
有鉴于此,本申请实施例提供一种区块数据归档方法及相关设备,用于解决区块链数据归档的效率和灵活性低的问题。本申请实施例提供如下技术方案:本申请实施例第一方面公开了一种区块数据归档方法,所述方法包括:第一区块链节点在监测到自身存储的区块资源满足区块数据归档条件时,确定待归档的区块数据;所述第一区块链节点向其他区块链节点发送归档请求;所述第一区块链节点基于接收的所述其他区块链节点反馈的共识响应信息与所述其他区块链节点协商共识;若确定共识,且获取到所述第一区块链节点为共识区块链节点的共识结果,所述第一区块链节点将所述待归档的区块数据发送至第三方存储服务器进行归档,所述共识结果用于确定所述第一区块链节点或其他区块链节点中的任一区块链节点为共识区块链节点。上述方案,通过任意区块链节点在监测到自身存储的区块资源满足区块数据归档条件时,确定待归档的区块数据,并向其他区块链节点发送归档请求,以及接收其他区块链节点反馈的共识响应信息,并基于该共识响应信息与其他区块链节点协商共识,在确定共识,且获取到当前区块链节点为共识区块链节点的共识结果的情况下,当前区块链节点将待归档的区块数据发送至第三方存储服务器进行归档,共识结果用于确定当前区块链节点或其他区块链节点中的任一区块链节点为共识区块链节点。通过上述过程,实现了在多个区块链节点间共享同一份归档数据,避免冗余备份,并有效提升了数据归档的实施效率、可操作性和灵活性的目的。在一种可能的设计中,所述第一区块链节点在监测到自身存储的区块资源满足区块数据归档条件时,确定待归档的区块数据,包括:所述第一区块链节点监测自身存储的区块数量是否大于预设区块数量;若大于,确定满足区块数据归档条件,获取待归档的区块数据;或者,所述第一区块链节点监测自身存储的区块资源占用量是否大于预设占用量,所述区块资源占用量为所存储的区块占用磁盘空间的绝对值;若大于,确定满足区块数据归档条件,获取待归档的区块数据;或者,所述第一区块链节点监测自身存储的区块资源占用率是否大于预设占用率,所述区块资源占用率为所存储的区块占用磁盘空间的相对值;若大于,确定满足区块数据归档条件,获取待归档的区块数据;或者,所述第一区块链节点监测自身存储的区块创建时间,确定是否存在区块创建时间大于预设时间的区块;若存在,确定满足区块数据归档条件,获取区块创建时间大于预设时间的区块数据。在一种可能的设计中,所述第一区块链节点向其他区块链节点发送归档请求,包括:所述第一区块链节点向同组区块链节点发送归档请求,或者,所述第一区块链节点向同组区块链节点和所述区块链上的其他组区块链节点发送归档请求。在一种可能的设计中,所述第一区块链节点基于接收的所述区块链节点反馈的共识响应信息与所述同组区块链节点协商共识,包括:所述第一区块链节点获取所述共识响应信息中的协商共识信息,并与自身的协商共识信息进行比较,所述协商共识信息包括待归档的区块数据,待归档的区块数据是否一致的信息和指定的共识区块链节点;若比较结果一致,确定共识,并确定基于所述协商共识信息指定的共识区块链节点。在一种可能的设计中,还包括:所述第一区块链节点接收所述第三方存储服务器反馈的归档结果;所述第一区块链节点将所述归档结果发送给所述其他区块链节点。在一种可能的设计中,所述方法包括:第二区块链节点接收第一区块链节点发送的归档请求,所述第二区块链节点与所述第一区块链节点属于同一区块链上的区块链节点;所述第二区块链节点在基于所述归档请求查询到自身存储的区块资源满足区块数据归档条件时,确定待归档的区块数据;所述第二区块链节点向所述第一区块链节点反馈共识响应信息,并基于所述共识响应信息与其他区块链节点协商共识;若确定共识,且获取所述第二区块链节点为共识区块链节点的共识结果,所述第二区块链节点将所述待归档的区块数据发送至第三方存储服务器进行归档,所述共识结果用于确定所述第一区块链节点或其他区块链节点中的任一区块链节点为共识区块链节点。在一种可能的设计中,所述当基于所述归档请求查询自身满足区块数据归档条件时,确定待归档的区块数据,包括:所述第二区块链节点在接收到所述归档请求后,查询自身存储的区块数量是否大于预设区块数量;若大于,确定满足区块数据归档条件,获取待归档的区块数据;或者,所述第二区块链节点在接收到所述归档请求后,查询自身存储的区块资源占用量是否大于预设占用量,所述区块资源占用量为所存储的区块占用磁盘空间的绝对值;若大于,确定满足区块数据归档条件,获取待归档的区块数据;或者,所述第二区块链节点在接收到所述归档请求后,查询自身存储的区块资源占用率是否大于预设占用率,所述区块资源占用率为所存储的区块占用磁盘空间的相对值;若大于,确定满足区块数据归档条件,获取待归档的区块数据;或者,所述第二区块链节点在接收到所述归档请求后,查询自身存储的区块创建时间,确定是否存在区块创建时间大于预设时间的区块;若存在,确定满足区块数据归档条件,获取区块创建时间大于预设时间的区块数据。在一种可能的设计中,所述第二区块链节点向所述第一区块链节点反馈共识响应信息,基于所述共识响应信息与其他区块链节点协商共识,包括:所述第二区块链节点向所述第一区块链节点反馈共识响应信息,所述共识响应信息包括协商共识信息,所述协商共识信息包括待归档的区块数据,待归档的区块数据是否一致的信息和指定的共识区块链节点;所述第二区块链节点将所述协商共识信息与所述其他区块链节点的协商共识信息进行比较;若比较结果一致,确定共识,并确定基于所述协商共识信息指定的共识区块链节点。在一种可能的设计中,还包本文档来自技高网...

【技术保护点】
1.一种区块数据归档方法,其特征在于,所述方法包括:/n第一区块链节点在监测到自身存储的区块资源满足区块数据归档条件时,确定待归档的区块数据;/n所述第一区块链节点向其他区块链节点发送归档请求;/n所述第一区块链节点基于接收的所述其他区块链节点反馈的共识响应信息与所述其他区块链节点协商共识;/n若确定共识,且获取到所述第一区块链节点为共识区块链节点的共识结果,所述第一区块链节点将所述待归档的区块数据发送至第三方存储服务器进行归档,所述共识结果用于确定所述第一区块链节点或其他区块链节点中的任一区块链节点为共识区块链节点。/n

【技术特征摘要】
1.一种区块数据归档方法,其特征在于,所述方法包括:
第一区块链节点在监测到自身存储的区块资源满足区块数据归档条件时,确定待归档的区块数据;
所述第一区块链节点向其他区块链节点发送归档请求;
所述第一区块链节点基于接收的所述其他区块链节点反馈的共识响应信息与所述其他区块链节点协商共识;
若确定共识,且获取到所述第一区块链节点为共识区块链节点的共识结果,所述第一区块链节点将所述待归档的区块数据发送至第三方存储服务器进行归档,所述共识结果用于确定所述第一区块链节点或其他区块链节点中的任一区块链节点为共识区块链节点。


2.根据权利要求1所述的方法,其特征在于,所述第一区块链节点在监测到自身存储的区块资源满足区块数据归档条件时,确定待归档的区块数据,包括:
所述第一区块链节点监测自身存储的区块数量是否大于预设区块数量;
若大于,确定满足区块数据归档条件,获取待归档的区块数据;或者,
所述第一区块链节点监测自身存储的区块资源占用量是否大于预设占用量,所述区块资源占用量为所存储的区块占用磁盘空间的绝对值;
若大于,确定满足区块数据归档条件,获取待归档的区块数据;或者,
所述第一区块链节点监测自身存储的区块资源占用率是否大于预设占用率,所述区块资源占用率为所存储的区块占用磁盘空间的相对值;
若大于,确定满足区块数据归档条件,获取待归档的区块数据;或者,
所述第一区块链节点监测自身存储的区块创建时间,确定是否存在区块创建时间大于预设时间的区块;
若存在,确定满足区块数据归档条件,获取区块创建时间大于预设时间的区块数据。


3.根据权利要求1或2所述的方法,其特征在于,所述第一区块链节点向其他区块链节点发送归档请求,包括:
所述第一区块链节点向同组区块链节点发送归档请求,或者,所述第一区块链节点向同组区块链节点和所述区块链上的其他组区块链节点发送归档请求。


4.根据权利要求1或2所述的方法,其特征在于,所述第一区块链节点基于接收的所述区块链节点反馈的共识响应信息与所述同组区块链节点协商共识,包括:
所述第一区块链节点获取所述共识响应信息中的协商共识信息,并与自身的协商共识信息进行比较,所述协商共识信息包括待归档的区块数据,待归档的区块数据是否一致的信息和指定的共识区块链节点;
若比较结果一致,确定共识,并确定基于所述协商共识信息指定的共识区块链节点。


5.根据权利要求1-4中任一项所述的方法,其特征在于,还包括:
所述第一区块链节点接收所述第三方存储服务器反馈的归档结果;
所述第一区块链节点将所述归档结果发送给所述其他区块链节点。


6.一种区块数据归档方法,其特征在于,所述方法包括:
第二区块链节点接收第一区块链节点发送的归档请求,所述第二区块链节点与所述第一区块链节点属于同一区块链上的区块链节点;
所述第二区块链节点在基于所述归档请求查询到自身存储的区块资源满足区块数据归档条件时,确定待归档的区块数据;
所述第二区块链节点向所述第一区块链节点反馈共识响应信息,并基于所述共识响应信息与其他区块链节点协商共识;
若确定共识,且获取所述第二区块链节点为共识区块链节点的共识结果,所述第二区块链节点将所述待归档的区块数据发送至第三方存储服务器进行归档,所述共识结果用于确定所述第一区块链节点或其他区块链节点中的任一区块链节点为共识区块链节点。


7.根据权利要求6所述的方法,其特征在于,所述当基于所述归档请求查询自身满足区块数据归档条件时,确定待归档的区块数据,包括:
所述第二区块链节点在接收到所述归档请求后,查询自身存储的区块数量是否大于预设区块数量;
若大于,确定满足区块数据归档条件,获取待归档的区块数据;或者,
所述第二区块链节点在接收到所述归档请求后,查询自身存储的区块资源占用量是否大于预设占用量,所述区块资源占用量为所存储的区块占用磁盘空间的绝对值;
若大于,确定满足区块数据归档条件,获取待归档的区块数据;或者,
所述第二区块链节点在接收到所述归档请求后,查询自身存储的区块资源占用率是否大于预设占用率,所述区块资源占用率为所存储的区块占用磁盘空间的相对值;
若大于,确定满足区块数据归档条件,获取待归档的区块数据;或者,
所述第二区块链节点在接收到所述归档请求后,查询自身存储的区块创建时间,确定是否存在区块创建时间大于预设时间的区块;
若存在,确定满足区块数据归档条件,获取区块创建时间大于预设时间的区块数据。


8.根据权利要求6或7所述的方法,其特征在于,所述第二区块链节点向所述第一区块链节点反馈共识响应信息,基于所述共识响应信息与其他区块链节点协商共识,包括:
所述第二区块链节点向所述第一区块链节点反馈共识响应信息,所述共识响应信息包括协商共识信息,所述协商共识信息包括待归档的区块数据,待归档的区块数据是否一致的信息和指定的共识区块链节点;
所述第二区块链节点将所述协商共识信息与所述其他区块链节点的协商共识信息进行比较;
若比较结果一致,确定共识,并确定基于所述协商共识信息指定的共识区块链节点。


9.根据权利要求6-8中任一项所述的方法,其特征在于,还包括:
所述第二区块链节点接收所述第三方存储服务器反馈的归档结果;
所述第二区块链节点将所述归档结果发送给所述其他区块链节点。


10.一种区块数据归档方法,其特征在于,所述方法包括:
客户端向区块链中的区块链节点发送归档请求;
所述客户端接收共识区块链节点的反馈信息,所述共识区块链节点为接收到所述归档请求的第三区块链节点之间进行共识确定的区块链节点,所述第三区块链节点为自身存储的区块资源满足区块数据归档条件的区块链节点;
所述客户端基于所述反馈信息使所述共识区块链节点中的待归档的区块数据上传至第三方存储服务器进行归档。


11.根据权利要求10所述的方法,其特征在于,所述客户端向区块链中的区块链节点发送归档请求,包括:
所述客户端监测区块链中的区块链节点存储的区块资源是否满足区块数据归档条件;
所述客户端确定满足所述区块数据归档条件的第三区块链节点,向所述第三区块链节点发送归档请求;或者,
所述客户端向区块链中的任意区块链节点发送归档请求,使接收所述归档请求的区块链节点确认自身存储的区块资源是否满足区块数据归档条件,若满足,则作为第三区块链节点。


12.根据权利要求10所述的方法,其特征在于,所述客户端基于所述反馈信息使所述共识区块链节点中的待归档的区块数据上传至第三方存储服务器进行归档,包括:
所述客户端基于所述反馈信息获取所述共识区块链节点中的待归档的区块数据,将所述待归档的区块数据上传至第三方存储服务器进行归档;或者,
所述客户端基于所述反馈信息,向所述共识区块链节点发送上传区块请求,使所述共识区块链节点基于所述上传区块请求,将待归档的区块数据上传至第三方存储服务器进行归档。


13.根据权利要求10-12中任一项所述的方法,其特征在于,还包括:
所述客户端接收所述第三方存储服务器反馈的归档成功结果,生成归档交易;
所述客户端将所述归档交易发送至所述第三区块链节点,使所述第三区块链节点检查所述归档交易是否为同组区块链节点的归档交易,若是,则删除所述归档交易对应的区块数据;或者,检查所述归档交易是否为区块链中其他区块链节点的归档交易,若是,则删除所述归档交易对应的...

【专利技术属性】
技术研发人员:罗玉龙丁健李翰林
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1