[发明专利]一种基于场景的区块数据分布存储方法及系统有效
| 申请号: | 202010557728.X | 申请日: | 2020-06-18 |
| 公开(公告)号: | CN111723094B | 公开(公告)日: | 2022-08-05 |
| 发明(设计)人: | 柴跃廷;于潇;刘义 | 申请(专利权)人: | 清华大学 |
| 主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/27;G06F21/62;G06F21/64;G06Q40/04 |
| 代理公司: | 北京高沃律师事务所 11569 | 代理人: | 崔玥 |
| 地址: | 100080*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 场景 区块 数据 分布 存储 方法 系统 | ||
本发明涉及一种基于场景的区块数据分布存储方法及系统。该方法包括:获取节点参与的交易场景;获取节点的场景交易数据;场景交易数据包括场景ID和交易数据;场景交易数据为节点参与的交易场景产生的交易数据;根据场景ID,构建场景ID对应的第一merkle树;第一merkle树为场景ID的所有交易数据构成的merkle树;将场景ID对应的场景数据和所有交易数据存储至节点的区块的区块体;场景数据包括场景ID和场景ID对应的第一merkle树的树根;将区块体中所有场景数据作为叶子节点构建第二merkle树;将第二merkle树的树根存储至区块的区块头。本发明可以降低节点的存储冗余,同时提高数据验证的性能。
技术领域
本发明涉及区块链数据存储领域,特别是涉及一种基于场景的区块数据分布存储方法及系统。
背景技术
现有的区块链存储方案,一般是所有节点保存全量区块链数据。例如,如果一个区块链包含了2个以上业务场景,则所有节点都要同时保存所有场景的数据。同时,所有场景的业务数据是混合保存在区块中的,在检索验证某一个场景的数据时不得不遍历所有区块中的每笔交易,导致数据验证性能低,而且对于与场景无关的节点也带来了存储冗余的问题。
发明内容
本发明的目的是提供一种基于场景的区块数据分布存储方法及系统,以降低节点的存储冗余,同时提高数据验证的性能。
为实现上述目的,本发明提供了如下方案:
一种基于场景的区块数据分布存储方法,包括:
获取节点参与的交易场景;不同交易场景的场景ID不同;
获取所述节点的场景交易数据;所述场景交易数据包括场景ID和交易数据;所述场景交易数据为所述节点参与的交易场景产生的交易数据;
根据所述场景ID,构建所述场景ID对应的第一merkle树;所述第一merkle树为所述场景ID的所有交易数据构成的merkle树;
将所述场景ID对应的场景数据和所有交易数据存储至所述节点的区块的区块体;所述场景数据包括所述场景ID和所述场景ID对应的所述第一merkle树的树根;
将所述区块体中所有场景数据作为叶子节点构建第二merkle树;
将所述第二merkle树的树根存储至所述区块的区块头。
可选的,所述区块用于存储所述节点参与的多个交易场景的场景交易数据。
可选的,所述将所述第二merkle树的树根存储至所述区块的区块头,之后还包括:
将所述区块打包广播至对应的节点;所述对应的节点参与的交易场景包括所述区块中存储的一个或多个交易场景;
将所述区块存储的数据在所述对应的节点中进行一致性存储。
可选的,所述将所述第二merkle树的树根存储至所述区块的区块头,之后还包括:
以场景ID为索引,查询所述节点中每个交易场景的交易数据。
本发明还提供一种基于场景的区块数据分布存储系统,包括:
交易场景获取模块,用于获取节点参与的交易场景;不同交易场景的场景ID不同;
场景交易数据获取模块,用于获取所述节点的场景交易数据;所述场景交易数据包括场景ID和交易数据;所述场景交易数据为所述节点参与的交易场景产生的交易数据;
第一merkle树构建模块,用于根据所述场景ID,构建所述场景ID对应的第一merkle树;所述第一merkle树为所述场景ID的所有交易数据构成的merkle树;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010557728.X/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





