[发明专利]一种基于纠删码的区块链数据存储方法有效
申请号: | 202010214114.1 | 申请日: | 2020-03-24 |
公开(公告)号: | CN111444042B | 公开(公告)日: | 2023-10-27 |
发明(设计)人: | 孟宇龙;任龙;徐东;张子迎;钟俊捷;华园园;曹雨倩;蒋馨宙 | 申请(专利权)人: | 哈尔滨工程大学 |
主分类号: | G06F11/14 | 分类号: | G06F11/14;G06F16/27 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 150001 黑龙江省哈尔滨市南岗区*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 纠删码 区块 数据 存储 方法 | ||
本发明属于区块链存储技术领域,具体涉及一种基于纠删码的区块链数据存储方法。本发明对于系统节点赋予全局独有节点编号,任意节点i基于纠删码思想对存储数据进行编码,获得第i块数据块以及全部校验码进行存储;失效节点在特定容错率条件下向全局其余节点请求数据,从而进行数据修复;新节点在加入区块链系统后,向全局请求数据,存储历史区块链。本发明能够降低区块链系统全局存储开销,同时实现在50%以下节点失效情况下恢复数据,保证数据可靠性。
技术领域
本发明属于区块链存储技术领域,具体涉及一种基于纠删码的区块链数据存储方法。
背景技术
区块链是一种按照时间戳顺序将数据区块用链组成的数据结构,并以密码学方式保证不可篡改和不可伪造的分布式去中心化账本,安全存储有先后关系的、能在系统内验证的数据,能够解决分布式数据存储、传输和分发等问题。这也意味着区块链系统中每个参与节点必须存储整个区块链,在维护数据的同时也带来了严重的存储负担。很显然,传统区块链存储模式难以应对大数据时代爆炸式增长的数据量。
纠删码作为重要的容错技术,与多副本容错技术相比,能够以较低的存储开销提供相同的数据可靠性。多副本技术将用户存储到系统中的数据进行备份并存储到相应的冗余磁盘中,当数据块丢失或磁盘故障时,可以直接从存储副本的冗余磁盘中读取副本数据进行修复。多副本技术因其简单的操作和高效的恢复速度而广泛应用于现有的存储系统中。然而多副本技术需要占用与备份等同数量的磁盘来存储副本,具有极高的存储开销,极大地增加了存储系统搭建与运行的成本。尤其在数据量剧增的当今时代,多副本技术因其带来的高存储开销而越来越不便于用在大型的容错存储系统中。纠删码技术相比于多副本技术显著地降低了数据的存储开销,与此同时还可以达到相同甚至更高的容错性能,因而受到了广泛关注,成为了存储领域的一个研究热点。
纠删码技术通过将原始数据分块并进行编码,当有数据失效时,通过读取未失效数据块能够恢复出原始数据。目前尚未有将纠删码应用于区块链的过多研究。本发明引入纠删码来改进区块链系统存储模式,可以减少整个系统存储开销,同时能够在特定容错率条件下恢复数据。
发明内容
本发明的目的在于提供能够降低区块链系统全局存储开销,同时实现在50%以下节点失效情况下恢复数据,保证数据可靠性的一种基于纠删码的区块链数据存储方法。
本发明的目的通过如下技术方案来实现:包括数据存储阶段、数据恢复阶段和数据更新阶段;
所述的数据存储阶段具体包括以下步骤:
步骤1.1:根据区块链应用系统中节点的数量,利用纠删码思想将原始区块链数据划分为与节点数量相同的数据块,即每块大小相同均为Nid,若大小不同则在末尾补0使之相同;
所述的区块链应用系统中有k个节点{N1,N2,…Nk},每个节点生成数据为Nid,则所有节点均存储的数据量,区块系统中全局数据存储量T为:
步骤1.2:通过编码策略对数据块进行编码,生成r个校验块{P1,P2,…,Pr};其中kr≥k/2,校验块大小为:
步骤1.3:每个节点除了储存区块链hash值外,存储1块数据块及全部r个校验块,代替原来存储所有数据的方案;即每个节点存储量为:
则全局数据存储量为:
其中,T1≤T,压缩比最高可达0.25;
所述的数据恢复阶段具体包括以下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工程大学,未经哈尔滨工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010214114.1/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置