[发明专利]数据存储方法、数据回滚方法、设备和存储介质有效

专利信息
申请号: 201910222959.2 申请日: 2019-03-22
公开(公告)号: CN109933592B 公开(公告)日: 2021-06-01
发明(设计)人: 王志文;吴思进 申请(专利权)人: 杭州复杂美科技有限公司
主分类号: G06F16/22 分类号: G06F16/22;G06F11/14
代理公司: 暂无信息 代理人: 暂无信息
地址: 310000 浙江省杭州市西湖*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 数据 存储 方法 设备 介质
【权利要求书】:

1.一种数据存储方法,其特征在于,状态数据库中存储状态数据,本地数据库中不存储状态数据,所述方法包括:

执行所接收到的第一区块中打包的交易,在所述第一区块中的所有交易执行完成时将状态数据信息存储到状态数据库中,并以键值对形式将所述第一区块的区块信息存储到本地数据库中;

在所述本地数据库中存储所存储的键值对的逆向操作信息;

在所述本地数据库中存储所述第一区块的区块高度与所述第一区块的状态哈希的对应关系;

其中,所述逆向操作信息用于回滚所述本地数据库中的数据,所述区块信息包括所述第一区块的区块头信息、所述第一区块的区块体信息、所述第一区块所打包的交易信息、所述第一区块的执行日志。

2.根据权利要求1所述的方法,其特征在于,包括:

配置所述本地数据库中键值对中键的区块回滚深度的第一阈值;

监测所述本地数据库中第一键的区块回滚深度是否超过所述第一阈值:是,则删除所述第一键的所述第一阈值数量个区块之前的逆向操作信息。

3.根据权利要求1所述的方法,其特征在于,所述在所述本地数据库中存储所存储的键值对的逆向操作信息包括:

判断所述所存储的键值对的操作类型:

若所述操作类型为创建,则在所述本地数据库中写入第一逆向操作;其中,所述第一逆向操作为删除所创建的键;

若所述操作类型为更新,则在所述本地数据库中写入第二逆向操作;其中,所述第二逆向操作为记录第一键值对,所述第一键值对的键为所更新的键,所述第一键值对的值为所更新的键的上一个版本的值;

若所述操作类型为删除,则在所述本地数据库中写入第三逆向操作;其中,所述第三逆向操作为对删除的键值对打标识,有标识的键值对用于标记所述删除的键值对。

4.根据权利要求1所述的方法,其特征在于,所述执行所接收到的第一区块中打包的交易,在所述第一区块中的所有交易执行完成时将状态数据信息存储到状态数据库中,并以键值对形式将所述第一区块的区块信息存储到本地数据库后,还包括:

以键值对形式将所述第一区块的附加信息存储到所述本地数据库中;其中,所述附加信息包括区块链中所有交易产生的手续费总额。

5.一种数据回滚方法,其特征在于,区块链节点根据如权利要求1-4任一项所述的数据存储方法存储数据,所述方法包括:

当状态数据库的数据回滚到第一状态哈希时,根据本地数据库中各区块的逆向操作信息将所述本地数据库的数据回滚至所述第一状态哈希对应的第一区块高度;其中,所述逆向操作信息用于回滚所述本地数据库中的数据,所述状态数据库及所述本地数据库中存储有各区块的区块高度与状态哈希的对应关系。

6.一种计算机设备,其特征在于,所述设备包括:

一个或多个处理器;

存储器,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1-5中任一项所述的方法。

7.一种存储有计算机程序的存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一项所述的方法。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州复杂美科技有限公司,未经杭州复杂美科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201910222959.2/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top