【核心议题】作为备份系统中的一大核心,重复数据删除是每个备份负责人必须重视的技术,你的选择是什么?

重复数据删除技术是备份系统中的一大核心技术,市场上主流的重复数据删除技术,按消重方向可以分为:源端消重和目标端消重;按消重手段可以分为:基于CPU和内存、基于类HASH链表两种主流手段。

近些年重复数据删除技术不断演进,现在最前沿的重复数据删除技术已经能基于SAN进行源端重复数据删除。针对目前技术的发展,你最青睐于哪种技术的消重功能?为什么选择了这种方式呢?

8回答

CHXCHX  系统架构师 , 某金融公司
willow时东南airstuky等赞同了此回答
经过近些年的发展,重复数据删除技术已经很成熟了,借今天的机会和各位交流下重复数据删除技术。 我们从下面几点理解重复数据删除的一些特点展开:1,在线?离线?在线消重,顾名思义是在备份时就进行消重,落盘到备份存储介质的数据都是经过消重处理的数据。离线消重,是指数据备份到备份...显示全部

经过近些年的发展,重复数据删除技术已经很成熟了,借今天的机会和各位交流下重复数据删除技术。

我们从下面几点理解重复数据删除的一些特点展开:
1,在线?离线?
在线消重,顾名思义是在备份时就进行消重,落盘到备份存储介质的数据都是经过消重处理的数据。离线消重,是指数据备份到备份存储后再进行消重。
如果在线消重要保持一个高效性能,这就消耗备份系统以及宿主机一部分资源。在线消重技术发展初期,硬件与软件的契合度并不高,导致在线消重备份时需要消耗相当一部分宿主机资源、拉低备份性能。同时重复数据删除技术雏形期,主要以类HASH链表式的消重手段为主,链表式消重技术对主机计算资源与后端存储、备份介质都有一定要求,且HASH链表越长消重越慢。因此,重复数据删除技术在初期并不被人看好。

2,源端消重?目标端消重?
源端消重,是指备份软件在客户端上获取到备份数据时就开始消重过程,在备份系统内传输的数据均是消重后的数据。源端消重技术由于需要在备份时进行消重,因而需要占用宿主机一部分资源来执行消重。目标端消重,是指备份软件已经备份到备份存储,在数据缓存到备份存储里或已存储到备份存储上再进行消重过程。目标端消重技术已在重复数据删除的发展历程上辉煌过一段时间,因为此技术不会消耗源端资源同时也不会降低备份性能,目标端消重性能完全依赖备份存储自身资源和效率。

3,基于类HASH链表式消重?基于CPU-内存式消重?
类HASH链表式消重是重复数据删除技术发展史上的一大核心技术,即使在今天也占有一定市场。HASH链表式消重,实现方式是将数据切片,然后计算出每块数据片的HASH值之类能唯一标记该数据片的索引值,若在消重的唯一索引链表上命中,则消重。若没有命中则更新索引链表,将数据片经过处理后存储在备份介质上。熟悉了链表式消重的过程,可以很清楚的知道这种技术的弊端就是当索引表非常长后,消重效率会越来越低。
基于CPU-内存式消重技术,核心代表就是DataDomain。在发展初期,CPU的性能和内存的大小处处受限,此这种技术的发展左右碰壁。但经过摩尔定律的驱使,现在的CPU和内存已经取得卓越的性能,基于CPU-内存式消重技术取得了相当不错的成绩。与类HASH链表式消重不同的是,该技术在消重前会将唯一索引链表直接加载进内存,消重时会直接将备份数据加载到内存,切片,计算每个数据片索引值,然后完成索引值对比、更新,最后处理数据、存储。几乎整个重复数据删除过程都在CPU和内存中完成,现在CPU和内存的处理效率远比数据在磁盘上流动的效率高。经过长时间的发展,基于CPU-内存的消重算法已经臻于完善,对CPU和内存的利用效率完全满足商业标准。现在此种技术已经升级,不仅仅可以基于LAN进行消重备份,而且能支持基于SAN的消重备份了。不得不说,基于CPU-内存式消重技术早已不是当年“吴下阿蒙”。

4,定长消重?可变长消重?
影响重复数据删除效率的核心因素之一便是消重切片过程中的切片精度。显而易见,若是切片精度越高,那么数据片重复命中率越高,消重效率越好。若对于不同长度的数据片能够动态调整切片精度,适应每份备份数据的情况,那么消重效率更加高效。现在定长消重的精度范围主流水平约在6K或8K(min)、16K(max)左右,可变长消重的精度范围现已突破到4K(min)、16K(max)。

个人对重复数据删除技术的看法
个人非常支持重复数据删除技术。虽然存储介质的价格已经非常廉价,但若能在有限的存储介质上实现更高的存储效率,何乐而不为呢?其次重复数据删除技术最大的一个收益点是能降低备份大数据量时对各资源的消耗和依赖。巨量数据的备份不论对生产系统还是备份系统都是一个不小的冲击,况且随着系统的发展,备份系统越来越大,备份的数据越来越多,备份的计划与安排越来越受制于备份数据量的规模。重复数据删除技术提供了一个物美价廉的解决方案,更提高了整个系统的效率。
也许在很多不太关注重复数据删除技术的工程师心中,重复数据还是那个效率低、成本高的空壳子,但实际上重复数据删除技术早已发展到了一个新的高度。借个人实施经历中一个真实的案例,看看现如今的重复数据删除技术的性能:一台Windows虚拟机存储着490 GB(有效数据)非结构化文件(文件主要为word/Excel/PPT/PDF等),日变化量大约15 GB/DAY,虚拟机的配置为2 * 2.8 GHz CPU,8 GB内存,千兆网卡。部署了一套源端、在线、基于CPU-内存的重复数据删除备份(重复数据删除设备并非物理机而是虚拟机),所有配置均采用默认配置、不作定制优化。首次备份耗时35 min,消重效率87%,消重时CPU消耗上涨5%,内存占用小于200MB,网络负载约3 MB/S左右。第二次备份耗时19min,消重效率98%,CPU、内存消耗与首次备份差不多,但网络负载明显下降,偶尔占用1~2MB/S。

之前也分享过一部分重复数据删除备份的经验,请参考http://www.aixchina.net/Question/225177

收起
 2017-06-28
浏览2149
王巧雷王巧雷  系统工程师 , sino-bridge
pinganbenyyc110011laq00098等赞同了此回答
用的比较少 但是个人比较喜欢源端去重,现在目标端去重要么硬件厂商已经做了(各种虚拟带库),要么只支持磁盘类型的,对磁带设备兼容不好。源端去重相比会消耗额外的资源,但现在基本都性能过剩,并且去重后的数据量减少适应的场景更多,比如远端复制...显示全部

用的比较少
但是个人比较喜欢源端去重,现在目标端去重要么硬件厂商已经做了(各种虚拟带库),要么只支持磁盘类型的,对磁带设备兼容不好。
源端去重相比会消耗额外的资源,但现在基本都性能过剩,并且去重后的数据量减少适应的场景更多,比如远端复制

收起
 2017-06-27
浏览2376
CHX 邀答
sam_8286sam_8286  系统工程师 , CLIC
liweijunaixkevin赞同了此回答
能用源端尽量用源端,搭配OST设备和万兆网,扁平化传统备份架构,实现去SAN化和驱动器化。显示全部

能用源端尽量用源端,搭配OST设备和万兆网,扁平化传统备份架构,实现去SAN化和驱动器化。

收起
 2017-06-27
浏览2192
yhsihyhsih  系统运维工程师 , 某烟草公司
姜沫maxh666_cn赞同了此回答
我来泼一盆冷水,这是一项看上去很美的技术,但是开启重复数据删除功能会占用大量CPU资源,影响整体存储的IO性能,现今磁盘容量快速增长,价格快速下降,重复数据删除带来的存储空间利用率的优势很快就被抵消掉了。所以只有极少量的场景需要重复数据删除功能,一般情况还是别折腾了~~...显示全部

我来泼一盆冷水,这是一项看上去很美的技术,但是开启重复数据删除功能会占用大量CPU资源,影响整体存储的IO性能,现今磁盘容量快速增长,价格快速下降,重复数据删除带来的存储空间利用率的优势很快就被抵消掉了。所以只有极少量的场景需要重复数据删除功能,一般情况还是别折腾了~~

收起
 2017-06-27
浏览2239
  • CPU占用很多么?驱动器架构的灵活性太差了,上线,下线迁移都比较麻烦。
    2017-06-28
LaozhaoLaozhao  其它 , cs
liweijunaixkevin赞同了此回答
不论是目标端重删还源端重删,主要根据你的应用来选择,比如说海量数据的备份,你就可以选择源端重删,可以节省带库,缩短备份窗口;如果你使用归档可以从用目标端重删;如果您还要关注性能可以从用目标端离线重删,如果对性能要求不高,可以采用目标端在线重删...显示全部

不论是目标端重删还源端重删,主要根据你的应用来选择,比如说海量数据的备份,你就可以选择源端重删,可以节省带库,缩短备份窗口;如果你使用归档可以从用目标端重删;如果您还要关注性能可以从用目标端离线重删,如果对性能要求不高,可以采用目标端在线重删

收起
 2017-06-27
浏览2285
wangshuai_gowangshuai_go  存储架构师 , 平安科技
黄呆毛赞同了此回答
我感觉现在备份领域的主流重复删除技术是在vtl虚拟带或是emc data domain之类的产品实现比较多。大家的公司都使用什么技术呀?显示全部

我感觉现在备份领域的主流重复删除技术是在vtl虚拟带或是emc data domain之类的产品实现比较多。大家的公司都使用什么技术呀?

收起
 2017-06-29
浏览2006
baizhaoxianbaizhaoxian  数据库架构师 , 万国数据服务有限公司
智诩赞同了此回答
重复数据删除(De-duplication),简称“去重”,是目前主流且非常热门的存储技术,通过对比校验技术删除存储设备上重复的数据,只保留其中一份,从而消除冗余数据,优化存储设备的物理空间,从而满足日益增长的数据存储需求。固定分块重复数据删除的主要优势在于占用较少的CPU资源。固...显示全部

重复数据删除(De-duplication),简称“去重”,是目前主流且非常热门的存储技术,通过对比校验技术删除存储设备上重复的数据,只保留其中一份,从而消除冗余数据,优化存储设备的物理空间,从而满足日益增长的数据存储需求。
固定分块重复数据删除的主要优势在于占用较少的CPU资源。固定分块系统不需要CPU开销来检查数据并判断数据块的边界。它们只要将数据分解成数据块,就像其他文件系统那样。实际上,一些主存储重复数据删除,比如NetApp的产品,使用的正是底层文件系统的块。
 较低的开销同时还意味着较低的延迟性。数据块边界的计算过程需要一些时间。虽然厂商们已经在尽量减少这个时间并声称这种时间开销是可以忽略的,但是这个过程和时间确实存在,对于主存储重复数据删除系统来说可能是个问题。
 不过,对于备份应用程序来说,这问题要简单许多。备份应用程序只是将数据流发送给某处的一个磁带驱动器。由于它们只是向少数大型文件执行大型顺序写入请求,因此每个请求发生数毫秒的延迟对于它们来说还不会有什么大的影响。对于传统备份应用程序,比如NetBackup或Networker来说,吞吐量才是最重要的,延迟性的重要性低一些。
 主存储应用程序,即使是简单的应用程序,比如托管用户的主目录,对延迟性也非常敏感。此外,主存储应用环境不是像备份应用程序那样将数据写入到少数大型文件,而是有数百万个各种大小的文件。由于每个文件都从一个新的数据块开始,因此数据插入或其他有可能带来块重整的修改只影响一个文件的数据。每个新文件都会重新调整流程。
 基于软件的重复数据删除软件--尤其是那些在源服务器端进行重复数据删除操作的应用程序,比如Avamar、PureDisk或Asigra的Cloud Backup--也会使用文件开头和结尾来判断它们的块边界。这些应用程序首先判断哪些文件已经发生修改,比如传统的增量型备份,然后开始在每个文件上进行分块操作。
 如果备份目标端的重复数据删除引擎知道磁带的格式或将Tarball这样的文件(也就是你的备份应用程序写入数据的文件)整合在一起,那么使用文件边界可以优化备份目标端的固定块分块流程。重复数据删除引擎可以在Tarball内判断每个文件的开头和结尾,并根据这些边界对数据块进行重新调整。内容感知功能同时也可以让备份设备看到索引标志,并为备份应用程序插入到Tarball的数据编写目录以防止它们遭到分块。
 不过,固定块系统可能在某些数据上会水土不服。我知道一位Data Domain用户使用Exchange备份来测试赛门铁克的PureDisk重复数据删除。他们当时在Data Domain上根据给定容量的存储保存40个Exchange服务器备份,但是他们无法在同样的存储容量下保存4个被PureDisk执行重复数据删除的Exchange备份数据。Exchange数据是由小量大型数据库文件组成的,而这些文件会在备份之间发生内部改变。对于PureDisk的重复数据删除引擎来说,这是最糟糕的情况。现在,如果你使用固定块重复数据删除引擎,而数据块的大小比数据库页面还小,那么情况也很糟糕。

收起
 2017-06-28
浏览2067
JhonJhon  技术经理 , 智慧农信
其实设备选型需要根据自身需求来选择,其次是对产品的了解,需要结合自身实际的需求显示全部

其实设备选型需要根据自身需求来选择,其次是对产品的了解,需要结合自身实际的需求

收起
 2017-06-29
浏览1958

提问者

CHX系统架构师, 某金融公司

问题状态

  • 发布时间:2017-06-27
  • 关注会员:9 人
  • 问题浏览:6168
  • 最近回答:2017-06-29
  • 关于TWT  使用指南  社区专家合作  厂商入驻社区  企业招聘  投诉建议  版权与免责声明  联系我们
    © 2019  talkwithtrend — talk with trend,talk with technologist 京ICP备09031017号-30