[发明专利]一种面向区块链分片存储策略的区块数据分配方法有效
申请号: | 202010951830.8 | 申请日: | 2020-09-11 |
公开(公告)号: | CN112231394B | 公开(公告)日: | 2022-10-14 |
发明(设计)人: | 李大鹏;戴金森 | 申请(专利权)人: | 南京邮电大学 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/22 |
代理公司: | 南京苏高专利商标事务所(普通合伙) 32204 | 代理人: | 曹坤 |
地址: | 210023 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 区块 分片 存储 策略 数据 分配 方法 | ||
1.一种面向区块链分片存储策略的区块数据分配方法,其特征在于,具体步骤包括如下:
步骤(1.1)、基于节点的存储容限和访问分布,建立共识单元;
步骤(1.2)、建立优化模型;
其操作步骤方法如下;将拥有n个区块的区块链不重复地分配到一个节点个数为m的共识单元中,模型的目标函数和约束条件表示如下:
其中,i表示区块的序号,j、k表示节点的序号,si表示第i个区块的数据大小,lj表示第j个节点存储容限,矩阵C为共识单元中各节点间相互访问的通信成本矩阵,ACPj表示节点j查询各区块的概率分布,表示k节点查询i区块的概率,xij表示分配结果,xij=1表示将i区块分配给j节点,xij=0则i区块未分配给j节点;
先求解该步优化问题的松弛解,使xij取值范围取到0-1之间,求解得到分数可行解x′ij;构建二分图,图的左侧顶点表示区块集合,图的右侧顶点表示节点槽集合,每个槽的大小为1,将得到的分数可行解作为权值映射到二分图的各个边上;最后求解二分图的完美匹配,得到的最终权值集合就是优化模型中的整数解xij;
步骤(1.3)、根据上一步的分配情况计算出共识单元的剩余存储空间,并计算经过分配后共识单元中节点查询i区块需要产生的最小通信花费Ci;再利用贪心算法,得到局部最佳分配;
步骤(1.4)、重新计算剩余空间,重复步骤(1.3),直到共识单元中所有节点的剩余存储空间不够存储任何一个区块。
2.根据权利要求1所述的一种面向区块链分片存储策略的区块数据分配方法,其特征在于,在步骤(1.1)中,所述的建立共识单元是:让共识单元中的每个节点存储所有的区块头信息,当一个节点查询获取一个新的区块时,节点通过区块头中的默克尔哈希值验证获取的区块是否有效;接着比较共识单元用来存储数据的空间与区块链的总数据量大小,当存储数据的空间小于区块链的总数据量时,重新划分组建共识单元。
3.根据权利要求1所述的一种面向区块链分片存储策略的区块数据分配方法,其特征在于,在所述步骤(1.3)中,定义权重函数如下:
其中,权重函数的值等于当将区块i分配给节点j后,查询i区块会产生的通信花费,表示的就是已分配和预分配的通信花费差值;取出权重值最小的对应的下标j*,接着取的值最大的i*,将区块i*分配给j*节点,令
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京邮电大学,未经南京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010951830.8/1.html,转载请声明来源钻瓜专利网。