一种基于纠删码的区块链存储优化方法及系统技术方案

技术编号:39648804 阅读:11 留言:0更新日期:2023-12-09 11:17
本发明专利技术公开了一种基于纠删码的区块链存储优化方法及系统,所述方法包括以下步骤:获取区块链网络节点;采用基于模糊

【技术实现步骤摘要】
一种基于纠删码的区块链存储优化方法及系统


[0001]本专利技术属于区块链技术

纠删码
,具体涉及一种基于纠删码的区块链存储优化方法及系统


技术介绍

[0002]区块链是一种记录保存技术,它以块的形式存储交易和有价值的信息

区块链具有区别集中式系统的重要特征,如去中心性

不可变性

安全性和匿名性,这使得区块链已经成功应用在金融科技

公共治理

数字货币

供应链等领域

[0003]纠删码技术
(Erasure Coding)
的最先应用场景是分布式存储系统,旨在解决分布式存储系统出现故障时的数据恢复问题

纠删码存储冗余策略能保证分布式系统以相同可靠性最小化冗余存储开销

区块链系统本质上就是一种特殊的分布式系统,理论上纠删码是可以应用在区块链系统
。Pal Rudrashhish
等人使用数字喷泉码来解决区块链副本冗余问题,提高了系统的存储性能

赵国锋等人提出了一种基于纠删码的区块链系统区块文件存储模型,改进
Hyperledger
的存储性能,但是其缺陷是使用对象有严格限制,能且只能应用于联盟链
Hyperledger
下的各区块链平台
。Perard
提出了一种基于纠删码的低存储区块链节点,文章把存储空间小的节点作为主要研究对象

虽然该方案在减少区块链存储消耗方面具有一定优势,但降低了区块链系统的去中心化水平
。Qi
等人结合
BFT
共识和纠删码技术设计了
BFT

Store
存储引擎

该设计方案虽实现了区块链的可扩展性,但可用性较差


技术实现思路

[0004]针对现有技术的不足,本专利技术提出了一种基于纠删码的区块链存储优化方法及系统,采用基于模糊
c
均值聚类算法,使用编码块放置节点集合选择策略,减轻了单个节点的存储负担,改善了采用全副本机制实现分布式账本的一致性中由于节点存储压力大导致的区块链失去中心化

数据安全性和数据真实可信等特性的问题

[0005]为实现上述目的,本专利技术提供了如下方案:
[0006]一种基于纠删码的区块链存储优化方法,包括以下步骤:
[0007]获取区块链网络节点,所述网络节点均存储一份全局且完整的分布式账本;
[0008]采用基于模糊
c
均值聚类算法的动态近距离节点分组算法对所述区块链网络节点进行分组,获得共识单元;
[0009]基于所述共识单元,采用基于节点性能的随机编码块放置策略对编码块进行存储分配,对区块文件进行全局处理

[0010]优选的,采用基于模糊
c
均值聚类算法的动态近距离节点分组算法对所述区块链网络节点进行分组的方法包括:
[0011]选择中心节点;
[0012]基于模糊
c
均值聚类算法,所述中心节点给每个参与节点发送请求消息,所述参与节点会返回给所述中心节点响应消息;
[0013]根据请求和响应消息往返时延估计两点间的距离,由估测距离把所述参与节点加入到满足预设要求的分组

[0014]优选的,对区块文件进行全局处理的方法包括:区块编码

区块数据存储

区块重构和区块数据同步;
[0015]区块编码是对区块使用
RS
纠删码编码处理;区块数据存储是把编码块随机存放到指定节点集合;区块重构是区块编码的反过程,实现对区块文件的恢复;区块数据同步是有新节点加入时,同步区块最新数据给新节点

[0016]优选的,在区块编码中,对区块使用
RS
纠删码编码处理的具体过程包括:
[0017]将区块链中的第
i
个区块记作
B
(i)

[0018]在区块
B
(i)
切片前,如果区块
B
(i)
不支持
k
份均匀等大切分,则用0填充区块
B
(i)

[0019]如果区块
B
(i)
支持
k
份均匀等大切分,则利用节点将区块
B
(i)
切分成
k
个等大的文件块区块
B
(i)
再经
RS(n,k)
纠删码编码生成
n
个编码块所述
n
个编码块被随机分发存储到指定的
n
个节点存储

[0020]优选的,所述区块数据存储中,把编码块随机存放到指定节点集合的具体过程包括:
[0021]将共识单元内达到阈值
T

k
个节点加入备选节点集合
N

[0022]将集合
N
中的
k
个节点采用优劣解距离法进行性能指标决策,根据性能响应反馈按照自高到底的顺序排序;
[0023]选取排序结果中的前
n
个节点作为编码块放置节点集合
S。
[0024]优选的,所述区块重构中,区块编码的反过程,实现对区块文件的恢复的具体过程包括:故障检测阶段

恢复节点选择阶段

编码块读取阶段

原始数据解码阶段

新数据块编码阶段和元数据更新阶段

[0025]优选的,在区块数据同步中,有新节点加入时,同步区块最新数据给新节点的具体过程包括:
[0026]当新节点首次加入区块链系统,通过动态近距离分组算法将所述新节点加入到某一共识单元;
[0027]所述新节点向对应共识单元中其余节点发出广播请求,获得当前状态下区块链的最大块高;
[0028]所述新节点依次重构出从创世区块到最大块高区块区间段的区块数据,并本地暂存
T
个时间完整区块;
[0029]T
时间到后重复区块数据存储过程,依据
TOPSIS
计算节点的性能优劣程度,若所述新节点性能决策指标排序满足预设要求保留部分编码块

[0030]本专利技术还提供了一种基于纠删码的区块链存储优化系统,包括:获取模块

分组模块和处理模块;
[0031]所述获取模块用于获取区块链网络节点,所述网络节点均存储一份全局且完整的分布式账本;
[0032]所述分组模块用于采用基于模糊<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于纠删码的区块链存储优化方法,其特征在于,包括以下步骤:获取区块链网络节点,所述网络节点均存储一份全局且完整的分布式账本;采用基于模糊
c
均值聚类算法的动态近距离节点分组算法对所述区块链网络节点进行分组,获得共识单元;基于所述共识单元,采用基于节点性能的随机编码块放置策略对编码块进行存储分配,对区块文件进行全局处理
。2.
根据权利要求1所述的基于纠删码的区块链存储优化方法,其特征在于,采用基于模糊
c
均值聚类算法的动态近距离节点分组算法对所述区块链网络节点进行分组的方法包括:选择中心节点;基于模糊
c
均值聚类算法,所述中心节点给每个参与节点发送请求消息,所述参与节点会返回给所述中心节点响应消息;根据请求和响应消息往返时延估计两点间的距离,由估测距离把所述参与节点加入到满足预设要求的分组
。3.
根据权利要求1所述的基于纠删码的区块链存储优化方法,其特征在于,对区块文件进行全局处理的方法包括:区块编码

区块数据存储

区块重构和区块数据同步;区块编码是对区块使用
RS
纠删码编码处理;区块数据存储是把编码块随机存放到指定节点集合;区块重构是区块编码的反过程,实现对区块文件的恢复;区块数据同步是有新节点加入时,同步区块最新数据给新节点
。4.
根据权利要求3所述的基于纠删码的区块链存储优化方法,其特征在于,在区块编码中,对区块使用
RS
纠删码编码处理的具体过程包括:将区块链中的第
i
个区块记作
B
(i)
;在区块
B
(i)
切片前,如果区块
B
(i)
不支持
k
份均匀等大切分,则用0填充区块
B
(i)
;如果区块
B
(i)
支持
k
份均匀等大切分,则利用节点将区块
B
(i)
切分成
k
个等大的文件块区块
B
(i)
再经
RS(n,k)
纠删码编码生成
n
...

【专利技术属性】
技术研发人员:孟宇龙武秋燕徐东卢中玉赵佳媛刘芳玮杨梓韵蔡成涛王巍王小芳李承国毕晓燕陈征平潘海为徐悦竹于金峰张可佳玄世昌庄园
申请(专利权)人:哈尔滨工程大学三亚南海创新发展基地海南俊码数据研究院有限公司
类型:发明
国别省市:

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

1