[发明专利]一种基于重删的精简复制方法有效
| 申请号: | 202010094567.5 | 申请日: | 2020-02-16 |
| 公开(公告)号: | CN111290883B | 公开(公告)日: | 2021-03-26 |
| 发明(设计)人: | 周耀辉;刘洋 | 申请(专利权)人: | 西安奥卡云数据科技有限公司 |
| 主分类号: | G06F11/14 | 分类号: | G06F11/14;G06F16/174;G06F16/13;G06F16/178 |
| 代理公司: | 西安维赛恩专利代理事务所(普通合伙) 61257 | 代理人: | 李明全 |
| 地址: | 712000 陕西省西*** | 国省代码: | 陕西;61 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 精简 复制 方法 | ||
1.一种基于重删的精简复制方法,其特征在于,包括逻辑卷的写操作与逻辑卷的读操作;
所述逻辑卷的写操作包括以下步骤:
S1:根据逻辑卷的地址除以4KB,算出VBN,即逻辑块号;
S2:按照4KB的数据内容通过hash函数算出哈希值;
S3:更新到Merkle Tree 中VBN对应的叶子节点上;
S4:再以4KB数据的哈希值通过DHT,即一致性哈希表,算出来4KB数据应该发往分布式集群中的目标节点;
S5:再通过objectrecord记录4KB数据落到节点上的PBN,即物理块号,将数据刷写到物理盘上,Objectrecord会记录object的哈希值、引用计数、PBN;
所述逻辑卷的读操作包括以下步骤:
S1:根据逻辑卷的地址除以4KB,算出VBN,即逻辑块号;
S2:通过VBN在Merkle Tree的叶子节点上找到哈希值;
S3:再通过DHT,即一致性哈希表,算出来哈希值对应的数据块内容在集群中的目标节点;
S4:再通过Objectrecord的PBN到相应的物理盘上读出数据;
其中,在分布式存储系统中,逻辑卷按4KB为单位进行划分,每个4KB就是一个object,每个object按照其内容通过hash函数算出来一个20位的哈希值,如果逻辑卷中某些object的哈希值相同,那么这些object就有相同的内容,就能判断其是属于重复数据,经过DHT和objectrecord算的值也就相同;
逻辑卷对于其object按照Merkle Tree来管理,对于逻辑卷的复制,逻辑卷的快照和逻辑卷的克隆,就会以逻辑卷的Merkle Tree为基础,构造出相同大小的复制Merkle Tree,快照Merkle Tree,克隆Merkle Tree,再将逻辑卷的Merkel Tree中每个节点的内容同步到目标Merkel Tree相同的节点上,对应的object的哈希值也是相同的,存储在底层的数据也是相同的;
所述Merkle Tree是一种二叉树,有一组叶子节点,一组中间节点和一个根节点构成,每个节点都是用来存储其子节点的哈希值,节点的大小都是4KB,所以一个节点能存储的哈希值就是4096/20=204个;
叶子节点就是存储的逻辑卷的object的哈希值,204个叶子节点的哈希值内容通过hash函数算出的哈希值存储在其父节点上,204个父节点的哈希值内容通过hash函数算出的哈希值存储在其上一层的父节点上,以此内推,就能算出根节点的哈希值,根节点的哈希值就是逻辑卷的哈希值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安奥卡云数据科技有限公司,未经西安奥卡云数据科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010094567.5/1.html,转载请声明来源钻瓜专利网。





