[发明专利]数据存储方法、数据回滚方法、设备和存储介质有效
| 申请号: | 201910222959.2 | 申请日: | 2019-03-22 |
| 公开(公告)号: | CN109933592B | 公开(公告)日: | 2021-06-01 |
| 发明(设计)人: | 王志文;吴思进 | 申请(专利权)人: | 杭州复杂美科技有限公司 |
| 主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F11/14 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 310000 浙江省杭州市西湖*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 数据 存储 方法 设备 介质 | ||
本发明提供一种数据存储方法、数据回滚方法、设备和存储介质,该方法包括:执行所接收到的第一区块中打包的交易,在第一区块中的所有交易执行完成时将状态数据信息存储到状态数据库中,并以键值对形式将第一区块的区块信息存储到本地数据库中;在本地数据库中存储所存储的键值对的逆向操作信息;在本地数据库中存储第一区块的区块高度与第一区块的状态哈希的对应关系。本申请使得状态数据库中只存储最重要的状态数据信息,降低状态数据库的数据存储量,提高读取效率,提高用户体验。
技术领域
本申请涉及区块链技术领域,具体涉及一种数据存储方法、数据回滚方法、设备和存储介质。
背景技术
现有的区块链技术中,大多使用状态树结构存储区块上的数据,常见的状态树有MPT树、Merkle树等。单纯的状态树结构主要的问题在于数据的存储量和性能,状态树的存储数据要比普通kv数据库大5-10倍,读取数据时,从状态树中读取数据比从普通kv数据库中读取数据慢40倍。使用状态树存储数据会产生数据膨胀,读取效率低下的问题。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种降低数据存储量、提高读取效率的数据存储方法、数据回滚方法、设备和存储介质。
第一方面,本发明提供一种数据存储方法,包括:
执行所接收到的第一区块中打包的交易,在第一区块中的所有交易执行完成时将状态数据信息存储到状态数据库中,并以键值对形式将第一区块的区块信息存储到本地数据库中;
在本地数据库中存储所存储的键值对的逆向操作信息;
在本地数据库中存储第一区块的区块高度与第一区块的状态哈希的对应关系;
其中,逆向操作信息用于回滚本地数据库中的数据,区块信息包括第一区块的区块头信息、第一区块的区块体信息、第一区块所打包的交易信息、第一区块的执行日志。
第二方面,本发明提供一种数据回滚方法,包括:
当状态数据库回滚到第一状态哈希时,根据本地数据库中各区块的逆向操作信息将本地数据库回滚至第一状态哈希对应的第一区块高度;其中,逆向操作信息用于回滚本地数据库中的数据,状态数据库及本地数据库中存储有各区块的区块高度与状态哈希的对应关系。
第三方面,本发明还提供一种设备,包括一个或多个处理器和存储器,其中存储器包含可由该一个或多个处理器执行的指令以使得该一个或多个处理器执行根据本发明各实施例提供的数据存储方法及数据回滚方法。
第四方面,本发明还提供一种存储有计算机程序的存储介质,该计算机程序使计算机执行根据本发明各实施例提供的数据存储方法及数据回滚方法。
本发明诸多实施例提供的数据存储方法、数据回滚方法、设备和存储介质通过执行所接收到的第一区块中打包的交易,在第一区块中的所有交易执行完成时将状态数据信息存储到状态数据库中,并以键值对形式将第一区块的区块信息存储到本地数据库中;将第一区块的区块高度与第一区块的状态哈希的对应关系存储到状态数据库及本地数据库中;以及,在本地数据库中存储所存储的键值对的逆向操作信息的方法,使得状态数据库中只存储最重要的状态数据信息,降低状态数据库的数据存储量,提高读取效率,提高用户体验。
本发明一些实施例提供的数据存储方法、数据回滚方法、设备和存储介质进一步通过配置本地数据库中键值对中键的区块回滚深度的第一阈值;监测本地数据库中第一键的区块回滚深度是否超过第一阈值:是,则删除第一键的第一阈值数量个区块之前的逆向操作信息的方法,保证本地数据库中在第一阈值数量个区块之前的数据纯净。
本发明一些实施例提供的数据存储方法、数据回滚方法、设备和存储介质进一步通过以键值对形式将第一区块的附加信息存储到本地数据库中,使得状态数据库中只存储最重要的状态数据信息,但是用户可通过本地数据库查询额外的附加信息,进一步改善用户体验。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州复杂美科技有限公司,未经杭州复杂美科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910222959.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电子顺序组件机内测试方法
- 下一篇:三文鱼新鲜度检测系统及方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





