目录
一、名词介绍
二、重删概述
三、重删分类
四、源端重删
一、名词介绍
指纹:不同数据块数据通过哈希算法所生成的唯一标识。
重删率:(1 - 实际备份数据量 / 已完成数据量)* 100%。
重删卷:存放指纹库的物理卷。
指纹库:在重删卷中,用于存放指纹的区域。
指纹池:将拥有重删卷的节点组成逻辑池,用于存放指纹库。
重删卷是重删服务管理数据资源的基本单位。单个节点的重删卷统一由该节点的重删服务管理,多个节点的所有重删卷组成一个指纹池。
指纹池是规划指纹库存放节点的管理单元。指纹池是存放任务指纹的最大逻辑管理单元。
二、重删概述
重删技术(Deduplication)是一种数据优化技术,用于减少存储系统中的重复数据。它可以显著降低存储空间的使用,提高存储和传输效率
重删的基本步骤如下:
(1)对于需要进行重删的数据进行分割,计算每个数据库的指纹(一个或多个 hash 值);
(2)将计算的指纹与现有的指纹库进行对比;
(3)若存在相同指纹,则删除重复数据,并记录对应数据块的数据索引;若不存在相同指纹,则保留数据,并将指针入库;
三、重删分类
重删技术可分为如下几类:
- 文件级重删:
- 优点:实现简单,通常用于文件备份和归档。
- 缺点:只能识别整个文件的重复数据,无法对部分文件进行优化。
2. 块级重删:
- 优点:可以识别文件中的部分重复数据,更细粒度的优化存储。
- 缺点:实现复杂度较高,需要处理数据块的分割和合并。
3. 源端重删(在线重删):
- 定义:在数据写入存储系统时实时进行重删。数据在被存储之前会进行去重处理。
- 优点:节省存储空间,即刻减少重复数据。
- 缺点:可能会影响写入性能,因为需要实时计算和比较数据。
4. 目标端重删(离线重删):
- 定义:在数据写入后,系统定期扫描存储系统以识别和删除重复数据。
- 优点:写入性能不会受到影响。
- 缺点:需要额外的存储和处理时间来完成重删操作。
四、源端重删
下面着重介绍源端重删,以爱数产品为例:
(1)客户端中的相关服务计算指定大小数据切片的指纹,并将指纹信息发送至重删服务。
(2)重删服务根据查询信息,将去重的结果发送至客户端。
(3)客户端得到查询结果后,发送未能去重数据至备份存储,并将该数据切片的指纹信息记录至重删资源,即任务对应的指纹库内。
(4)若查询到已有指纹,则将对应的元数据信息发送至备份存储。保存的元数据将与同指纹信息数据共用数据 chunk。
------------------------------------------
------------------------------------------
数据重删是一种优化存储系统的技术,用于减少存储空间需求。其核心原理是通过识别和删除重复的数据块来实现存储效率的提升。首先,数据重删通过散列算法(如MD5或SHA-1)生成数据块的唯一指纹,识别出重复的数据块。接着,在文件级重删中,系统比较整个文件的内容来发现重复文件,只保留一个副本;而在块级重删中,系统将文件拆分为多个块,比较这些块的内容,即使文件的部分内容重复也能进行优化。重删可以分为内联和后处理两种类型。内联重删在数据写入时实时进行处理,从而节省存储空间,但可能会影响写入性能;后处理重删则在数据写入后定期进行,这不会影响写入性能,但需要额外的时间和存储资源。数据重删技术广泛应用于备份和恢复、存档、虚拟化环境以及现代文件系统中,以减少重复数据的存储需求,降低成本,并提高备份和恢复效率。然而,它的实现复杂度较高,尤其是块级和内联重删,可能会对系统性能产生影响,并可能带来数据一致性问题。