首页 > > > “去重 + 压缩” 完美诠释 “1+1=0”
“1+1” 在什么情况下等于 0?
在算错的情况下等于 0!
Excuse me?
小编从不打诳语,
一脸认真地告诉说,
“数据压缩+重复数据删除” 等于 0
想知道为什么?
欲知详情,且看下文分解…

一谈到重复数据删除,很多人想到的就是虚拟带库;而一提到压缩,想到的就是文件和视频。在讨论重复数据删除和压缩怎么用之前,我们先来看一下什么是重复数据删除,什么是压缩。
存储空间、预算 双双告急!
你考虑过这个办法吗?
重复数据删除,简单来说就是遇到重复数据时,不是保存重复数据的副本,取而代之的是增加一个指向第一份(并且是唯一一份)数据的索引。从根本上讲,它能减少存储数据所占用的空间。这样做会带来诸多好处,如节约 IT 经费、无须为额外空间增加投资入;减少备份数据、数据快照等的大小;较少电源压力;节约网络带宽;节约时间。
数据压缩有各种各样的算法,但是究其本质,还是一种编码技术。假如,我们将这篇文章常用的字符串 “重复数据压缩” 六个字编码为 “去重”,那么本文中的字数就会相应地减少,即便这样也还是有多份 “去重” 存在。
重复数据删除与数据压缩的主要区别在于:假如你有两份完全相同的数据(File or Block Level),数据压缩会对每份数据进行编码,进而用简单编码代替复杂编码。而重复数据删除则能辨别出这是两份相同的数据,从而只保存第一个数据,并通过指针将第二份数据指向第一份源数据。
所以我们看到,重复数据删除和压缩在本质上是不矛盾的,如果能在数据存储中既使用重复数据删除技术,又使用数据压缩技术,那一定是事半功倍的。
既然重复数据删除和压缩技术这么好,那么你有想过在生产存储上用去重和压缩吗?
其实很多 IT 经理都想在生产存储上用去重和压缩,但是却有很多的担心,可以说是一言难尽。让我们先来看一份调研数据:
如上图所示,2016 年,ESG 针对 373 位 IT 人员就 “数据存储环境业务挑战” 的调研显示,排名第二位的就是数据的快速增长。小编私下里也和多位资深的 IT 运维人员交流过他们的数据增长情况。
A君:“当初规划的时候,明明是考虑到了未来三年内的数据增长,结果刚用了一年空间就不够了。”
B君:“每年的 IT 预算都在降低,存储空间越来越紧张。”
小编:“你有考虑过用去重和压缩吗?”
“考虑过,一是不知道具体能省多少空间,但最主要还是担心对现有应用系统造成影响,比如对性能的影响、对可靠性的影响、对运维的影响等等。如果导致数据丢失,那就得不偿失了。”
那么今天,小编就带着大家来看看这个问题,戴尔的存储是如何解决这些问题的。
数据去重与数据压缩联动出击
数据去重比竟达 50:1
我们还是先用数据说话,来看一份调研数据,同样是来自 ESG 的测试数据。
据图表数据显示,在不同应用环境下,经过数据压缩和重复数据删除之后,数据量都有大幅的缩减。而如果单使用压缩技术,数据的缩减量却并不是十分明显。这些主要是和应用的数据类型以及压缩算法有关,而大多数应用环境,在应用压缩和重复数据删除以后,数据的缩减量都非常的可观。从 ESG 基于实际应用环境的测试结果来看,实现了非常好的数据缩减。
“由于应用环境的不同以及特定数据的复杂类型,很难有一个特定的标准值来描述压缩和去重的效率。戴尔 SC 存储的目的是通过一个全面的方法提供最佳的用户价值(见上图)。戴尔 SC 系列存储通过分层架构(SSD 以及 HDD),精简克隆等技术实现了上述目标。同时,数据效率被大幅改善,经过 ESG 实验室基于实际应用数据的测试达到了 66.75%。整个 12TB 的数据,实现了 3:1 的数据去除。相比之前 ESG 实验室的测试结果,包括在线压缩去重,戴尔 SC 系列存储都表现出了非常好的性能。”(编者译,源自 ESG 测试报告)。
具体压缩率数据请参照下表:
从这个数据表中,我们能更清楚的看到压缩和重复数据删除的效果。其中很多 IT 经理比较关注 VMware 环境,我们看到,在使用数据压缩后,能够实现 2:1 的压缩率,而将重复数据删除和数据压缩结合在一起来使用,数据变为了不到原来的 30%。可以说这对使用 VMware 虚拟化环境的客户是一个非常好的消息。即便是在 VDI 环境,经过压缩和去重之后,也能实现 2:1 的去除率。在 Hyper-V 环境,更是达到了惊人的 50:1 的去除率。由此可见,在戴尔 SC 存储上使用重复数据删除和数据压缩,确实能有效的提高整个存储的利用率。
担心性能被拖垮?
SC 系列告诉你,不存在!
那么,打开压缩和重复数据删除功能以后,对存储性能会有什么影响呢?最主要的得益于 SC 系列存储独特的体系结构设计,整个压缩和去重过程几乎对性能没有影响。下面,我们就来分析一下这个问题。
首先我们先来看一下 SC 系列存储的体系结构设计。我们说 SC 存储设计的核心是闪存,是新一代的体系结构,原因正是基于此。如下图所示,在 SC 存储内部,最多可将存储分为三个层次,分别是 T1、T2、T3。这个分层过程是系统自动的,比如,如果添加 7.2K 的 NL SAS,那么系统会默认的把它分到 T3,如果添加 WI SSD,那么系统就会把它默认分到 T1。由于 RAID10 和 RAID5 在读写性能上的差异,我们知道同种类型的磁盘组 RAID10 写性能要优于 RAID5 而读性能基本相当,所以 SC 存储在每一层里面又会分为 RAID10 和 RAID5 两种条带类型。
其次最关键的一点,所有系统新写入的数据都放在 T1 的 RAID10 里面,而每过一段时间,系统就会做一个 Data Progression,保存数据 bitmap 之后将数据块属性变为只读。之后,将不活跃的数据逐渐迁移到下一层,比如 T1 RAID10 到 T1 RAID 5 或者 T1 RAID5 到 T2 RAID10。通过这种方式,整个存储的性能永远是 T1 的性能,而无需进行调优。如果使用中,觉得性能不够,就需要相应的添加 T1 的磁盘,如果觉得容量不够,就可以添加性价比最高的 T3 磁盘。SC 存储正是通过这种方式,实现了最优的性价比!
而重复数据删除和数据压缩的过程就发生在 Data Progression 的过程中。在去重过程中,Page 被移动到专用的存储空间。重复数据删除的页面为 4 KB 大小的切片,并基于切片制作 Hash 指纹。用 Hash 指纹对比重复数据删除的字典进行查询,以查看切片是否已被保存在字典中。如果已经保存,则读取两者的源数据进行比较,以确保数据一致,如果一致之后会将切片删除。如果不一致,则分别保存切片数据以及 Hash 指纹,并做相应的更新。压缩过程与去重过程近似。
由以上 SC 存储的架构和去重压缩过程可见,SC 的去重压缩过程其实是后去重压缩过程,得益于 SC 的分层流动存储架构,整个去重过程不会影响生产数据的性能。因为生产数据的 “写” 性能全部发生在 T1 的 RAID10 组里面, “读” 也绝大部分发生在 T1 的 SSD 里面,故可以达到理想的数据去重效率,即平均数据去除率 66%。所以,即便是在生产存储中使用也无需担忧。需要说明的是,客户也无需为去重和压缩花费额外的费用,只要客户的存储环境中有一定数量的 SSD 磁盘,就可以使用戴尔 SC 存储的去重和压缩功能啦!
说到这里,其实戴尔 SC 存储还有两个包含在基础软件包里的功能,可以让客户在 VMware 虚拟机环境使用压缩和重复数据删除的时候如虎添翼。一个是 VVols,另一个是 QoS。
VVols,可以让存储直接映射虚拟卷给 VM 虚拟机,而无需将整个卷硬设备 host 主机。有了 VVols,虚拟机管理员使用熟悉的 VSphere 工具为每台虚拟机选择 SC 系列策略,存储管理员只需定义可供虚拟机管理员使用的策略的菜单。另一项功能就是 QoS,说起来更厉害了,有了 QoS,存储管理员可以给每个卷设置属性文件 profile,可以限制这个卷的 IOPS 以及 MB/s。同时也可以给一组卷设置整个 Group 的 IOPS 以及 MB/s。
看到这儿,相信你已经揭开 1+1 等于 0 的谜底了。简单来说,戴尔 SC 存储利用先进的分层流动存储架构在进行数据压缩和重复数据删除的同时,对生产数据的性能影响为 “零”。另外,借助 VVols、QoS 以及压缩和重复数据删除功能一起在生产环境中使用,真的可以灵活、高效的进行管理,实现事半功倍,按需分配。
点击 “阅读原文” 了解更多戴尔数字化转型方案
原文作者:;如有侵权,请联系管理员删除。