[发明专利]多版本数据存储方法、装置、计算机设备及存储介质有效
申请号: | 202011532673.3 | 申请日: | 2020-12-22 |
公开(公告)号: | CN112579602B | 公开(公告)日: | 2023-06-09 |
发明(设计)人: | 邱炜伟;李伟;黄方蕾;张珂杰;郑柏川 | 申请(专利权)人: | 杭州趣链科技有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/23 |
代理公司: | 深圳众鼎汇成知识产权代理有限公司 44566 | 代理人: | 张宏杰 |
地址: | 310051 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 版本 数据 存储 方法 装置 计算机 设备 介质 | ||
1.一种多版本数据存储方法,其特征在于,包括:
接收对MVB树的指定节点数据的修改指令;
复制所述指定节点数据索引路径上的第一树节点数据,获得复制后的第二树节点数据;
根据所述修改指令对所述第二树节点数据进行修改,根据不处于所述索引路径的节点数据和修改后的所述第二树节点数据生成所述MVB树的修改版本;
当所述修改指令所属的事务结束时,判断所述事务是否达到稳定点;
若所述事务未达到稳定点,所述MVB树进行内存提交,生成所述修改版本的根节点哈希值;内存提交指的是MVB树计算存储于内存中的修改版本的根节点哈希值的过程;
若所述事务达到稳定点,所述MVB树进行磁盘提交,生成所述修改版本的根节点哈希值;
所述若所述事务达到稳定点,所述MVB树进行磁盘提交,生成所述修改版本的根节点哈希值,包括:
计算所述修改版本的根节点哈希值;
根据预设写入规则将所述修改版本的脏节点写入磁盘中,并将所述修改版本的根节点设置为所述MVB树的根节点。
2.如权利要求1所述的多版本数据存储方法,其特征在于,所述若所述事务未达到稳定点,所述MVB树进行内存提交,生成所述修改版本的根节点哈希值,包括:
计算修改后的第二树节点数据的第一次级节点的哈希值,所述第一次级节点为所述修改版本的根节点的子节点;
若存在不处于所述索引路径的次级节点,根据所述次级节点的哈希值和所述第一次级节点的哈希值计算所述修改版本的根节点哈希值,所述次级节点为所述修改版本的根节点的子节点。
3.如权利要求2所述的多版本数据存储方法,其特征在于,所述计算修改后的第二树节点数据的第一次级节点的哈希值,包括:
根据所述第一次级节点的子节点计算所述第一次级节点的哈希值,若所述第一次级节点的子节点为叶子节点,根据所述叶子节点内存储的键值对计算所述叶子节点的哈希值;
根据所述第一次级节点的子节点计算所述第一次级节点的哈希值,若所述第一次级节点的子节点为非叶子节点,根据所述非叶子节点的子节点的哈希值计算所述非叶子节点的哈希值。
4.如权利要求1所述的多版本数据存储方法,其特征在于,所述计算所述修改版本的根节点哈希值,包括:
获取修改后的第二树节点数据;
根据预设节点分裂方法对所述修改后的第二树节点数据进行分裂处理,生成分裂后的第二树节点数据;
计算所述分裂后的第二树节点数据的第二次级节点的哈希值,所述第二次级节点为所述修改版本的根节点的子节点;
若存在不处于所述索引路径的次级节点,根据所述次级节点的哈希值和所述第二次级节点的哈希值计算所述修改版本的根节点哈希值,所述次级节点为所述修改版本的根节点的子节点。
5.如权利要求4所述的多版本数据存储方法,其特征在于,所述根据预设节点分裂方法对所述修改后的第二树节点数据进行分裂处理,生成分裂后的第二树节点数据,包括:
判断指定叶子节点的键值对列表长度是否超出预设阈值;
若指定叶子节点的键值对列表长度超出预设阈值,则将所述指定叶子节点分裂为若干个键值对列表长度不超出所述预设阈值的分裂节点;
计算各个所述分裂节点的哈希值,并将所述各个所述分裂节点对应的键值对列表第一个键值插入到所述分裂节点的父节点中。
6.如权利要求4所述的多版本数据存储方法,其特征在于,所述计算所述分裂后的第二树节点数据的第二次级节点的哈希值,包括:
根据所述第二次级节点的子节点计算所述第二次级节点的哈希值,若所述第二次级节点的子节点为叶子节点,根据所述叶子节点内存储的键值对计算所述叶子节点的哈希值;
根据所述第二次级节点的子节点计算所述第二次级节点的哈希值,若所述第二次级节点的子节点为非叶子节点,根据所述非叶子节点的子节点的哈希值计算所述非叶子节点的哈希值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州趣链科技有限公司,未经杭州趣链科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011532673.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:医用双层气管插管
- 下一篇:一种用电加热低压蒸汽用于粗苯蒸馏的系统及方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置