[发明专利]一种智能合约存储方法及存储系统有效
申请号: | 201811457208.0 | 申请日: | 2018-11-30 |
公开(公告)号: | CN109634932B | 公开(公告)日: | 2021-03-23 |
发明(设计)人: | 扬子一;李斌;张勇 | 申请(专利权)人: | 北京瑞卓喜投科技发展有限公司 |
主分类号: | G06F16/182 | 分类号: | G06F16/182;G06F16/13 |
代理公司: | 北京力量专利代理事务所(特殊普通合伙) 11504 | 代理人: | 王鸿远 |
地址: | 101201 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 智能 合约 存储 方法 存储系统 | ||
1.一种智能合约存储方法,其特征在于,包括以下步骤:
将智能合约文件切分成多个数据块;
获取各数据块编号;
建立数据块与数据块编号的映射索引表,存储在区块链中;
将所有数据块分配至多个给定分区中;
将各给定分区中的数据块存储在各给定分区对应的多个存储设备中;
在将各给定分区上的数据块存储在多个存储设备中之前,还包括:
根据给定分区序号得到存储设备列表;
所述多个存储设备包括多个副本,该多个副本分布在不同的故障域;
将各给定分区中的数据块存储在各给定分区对应的多个存储设备中之后,还包括:
将所述多个存储设备中存储的数据块备份到所述多个副本中;
还包括:根据各存储设备所在主机、主机所在机架以及机架所在机房绘制树形结构,并将容错规则填充至树形结构,生成存储设备树形逻辑结构;
将各给定分区中的数据块存储在各给定分区对应的多个存储设备中的步骤包括:
向数据库发送给定分区定位请求,根据数据库反馈的定位结果依次选择各给定分区对应的机房、机房中机架、机架上服务器以及服务器中存储设备;
将各给定分区中的数据块存储在选择的存储设备中;
获取各数据块编号的步骤包括:
获取智能合约文件的哈希值;
获取对智能合约文件切分时各数据块的生成序号;
将所述智能合约文件的哈希值与各数据块的生成序号组合成各数据块编号;
所述将智能合约文件切分成多个数据块的步骤包括:
根据多个存储设备中可存储数据的最大尺寸,将智能合约文件切分成多个数据块。
2.一种实现权利要求1所述方法的智能合约存储系统,其特征在于,包括:
智能合约文件切分模块,用于将智能合约文件切分成多个数据块;
数据块编号获取模块,用于获取各数据块编号;
映射索引表建立模块,用于建立数据块与数据块编号的映射索引表,存储在区块链中;
数据块分配模块,用于将所有数据块分配至多个给定分区中;
数据块存储模块,用于将各给定分区中的数据块存储在各给定分区对应的多个存储设备中。
3.根据权利要求2所述的智能合约存储系统,其特征在于,在数据块存储模块中,所述多个存储设备包括多个副本,该多个副本分布在不同的故障域;
数据块存储模块还用于将所述多个存储设备中存储的数据块备份到所述多个副本中。
4.根据权利要求3所述的智能合约存储系统,其特征在于,还包括:存储设备树形逻辑结构生成模块,用于根据各存储设备所在主机、主机所在机架以及机架所在机房绘制树形结构,并将容错规则填充至树形结构,生成存储设备树形逻辑结构;
在数据块存储模块中,包括:
选择单元,用于向数据库发送给定分区定位请求,根据数据库反馈的定位结果依次选择各给定分区对应的机房、机房中机架、机架上服务器以及服务器中存储设备;
存储单元,用于将各给定分区中的数据块存储在选择的存储设备中。
5.根据权利要求2所述的智能合约存储系统,其特征在于,数据块编号获取模块包括:
哈希值获取单元,用于获取智能合约文件的哈希值;
切分序号获取单元,用于获取对智能合约文件切分时各数据块的生成序号;
各数据块编号获取单元,用于将所述智能合约文件的哈希值与各数据块的生成序号组合成各数据块编号。
6.根据权利要求2所述的智能合约存储系统,其特征在于,在智能合约文件切分模块中,智能合约文件切分模块具体用于根据多个存储设备中可存储数据的最大尺寸,将智能合约文件切分成多个数据块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京瑞卓喜投科技发展有限公司,未经北京瑞卓喜投科技发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811457208.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种日志上传方法及装置
- 下一篇:数据处理的方法、装置及系统