Contents

1、概述...

2、开创磁盘备份的新模式...

3、重复数据删除...

4、破解磁盘瓶颈点...

5、全局数据消重文件系统DDFS.

6、CPU-Centric存储系统...

7、数据无损体系结构...

8、备份与归档一体化...

9、高效的远程数据复制...

1、概述

长期以来备份存储领域被磁带所统治,其主要原因有两个方面。第一,磁带相对于磁盘介质而言,具有很好的价格优势;第二,备份存储主要是顺序写操作,只有在数据恢复的时候,才需要从磁带上读取数据。这两个特征就决定了磁带在数据备份领域的地位,特别是数据归档领域至今还存在着一席之地。

近10年磁盘容量发展迅速。还记得2000年初,我自己攒了人生中的第一台电脑,赛扬CPU,30GB 的迈拓IDE硬盘。在那个年代,30GB硬盘是大容量硬盘,花了将近1250元人民币。时至今日,4TB的硬盘即将成为主流,容量翻了近140多倍。得益于巨磁阻技术的发展,磁盘容量在近几年一直高歌猛进;在未来充氦技术成熟之后,磁盘容量还会持续增长。磁盘容量的增长,单位存储价格的下跌,导致磁盘技术对数据备份领域产生了巨大的冲击。在这次革命的引领中,DataDomain算是一个非常成功的革命者。

2009年DataDomain被EMC收购,至此DataDomain变成了EMC旗下的一员猛将。DataDomain是一种目的端数据去重的设备,和Avamar之类的源端去重设备结合起来,将可以打造令人满意的磁盘备份系统。

在此,本文对DataDomain的存储设备进行分析,一窥其中的奥秘。

2、开创磁盘备份的新模式

从上图中我们可以知道,在整个IT结构中,Primary Storage的数据通过备份服务器进行数据备份,或者通过Archive服务器进行数据归档操作。备份和归档的存储介质通常是磁带。DataDomain设备的出现正好是替代了传统磁带的位置,从而使得Primary Storage的数据直接或者通过备份服务软件备份到DataDomain设备。DataDomain设备无论在性能还是在数据去重效率方面都是首屈一指的,可以说DataDomain开创了磁盘备份的新模式。

总的来说,DataDomain的成功源自于将磁盘存储技术成功的应用于备份领域,并且成功的替换了体积庞大、性能低下的传统带库技术,从而使得磁盘备份成为数据备份领域的主力军。

大家知道,传统的带库体积庞大,需要采用机械手装置加载磁带。由于磁带本身不具备随机读写能力,因此,在顺序写的情况下表现尚可,但是,一旦需要随机读取时,就显得非常力不从心。另外,磁带存储管理非常麻烦,占用大量的空间。和磁带技术相比,磁盘存储体积小,随机读写能力强,因此,在不考虑成本的情况下,磁盘是磁带的完美替代者。

当磁盘替代磁带之后,备份、归档都可以在磁盘上完成。在数据的整个生命周期内,都可以做到数据的磁盘存储。这种好处是显而易见的,可以大大降低系统体积,简化系统管理。

因此,当引入DataDomain设备之后,所有应用的数据都可以通过备份服务器备份至DataDomain的设备,多台DataDomain设备之间并且可以进行远程数据复制,从而可以提高数据的容灾水平。当数据需要进行长期保存时,DataDomain设备提供了Archive的功能,可以将备份数据封存起来,进行长期存放。

DataDomain在引入磁盘备份的时候,引入了一个非常重要的核心技术:重复数据删除。其实,在那个年代,Datadomain不是唯一一家针对备份领域从事磁盘备份的厂商,也不是唯一一家从事重复数据删除的备份厂商。但是,DataDomain如今是单机性能最佳,市场占有率最高的基于重复数据删除的磁盘备份厂商。这其中的原因是为什么呢?在对比其他存储厂商的设计之后,我们可以发现DataDomain的设计避免了当时客观条件的限制,并且将其性能最大化,从而超越了其他厂商,从而独霸天下。

3、重复数据删除

提到DataDomain就不能不提重复数据删除技术。在2006年左右一直有很多人在争议是否可以在磁盘级别很好的实现在线重复数据删除?实际上,在Primary Storage中,现在还不能很好的做到在磁盘系统中实现在线重复数据删除。其原因很简单,就是在线重复数据删除需要很强的CPU能力,以及很强的随机IO读写能力,否则性能会很差。

在深入探索重复数据删除时,首先可以看一下块级重复数据删除的原理。总体还是比较简单的。首先将输入数据进行自动分段,自动分段的目的在于实现变长数据块,提高重复数据删除效率。得到分段块之后,对这个数据块计算一个HASH值,具体算法可以采用SHA1。这个HASH值可以被称之为这个数据块的Fingerprint(指纹)。当得到这个数据块的指纹信息之后,需要在当前系统内查找是否存在与其匹配的指纹信息,如果能够找到匹配的指纹,说明当前系统中已经存储了输入的数据块,那么可以直接丢弃该输入数据块,不进行存储;反之,需要需要将输入数据块写入存储系统中,进行持久化保存。从这个过程来看,重复数据删除主要分成两大步骤:第一步是计算指纹信息;第二步是查找指纹信息。

仔细分析,上述重复数据删除其实还存在一定的漏洞。如果不同的数据存在相同的指纹信息怎么办?虽然这是小概率事件,但是并不意味着不发生,从技术的角度出发,这是完全可能的。为了解决这个小概率事件问题,行业内通常有两种解决方案,一种是再为数据块计算一种HASH值或者校验码,当指纹信息匹配之后,还需要校验信息完全匹配。从概率的角度来看,不同的数据块具有相同的指纹信息和校验信息是不可能的,通过这种方式可以有效避免HASH碰撞。另外一种方法是直接将数据读出来进行比对,这种方法会产生很多的额外的IO请求,对系统的性能产生极大的影响。

DataDomain作为一种备份系统,具有很好的IO Pattern。基本上都是顺序IO操作,并且在备份过程中基本上都是写操作,即使有读操作,其和写操作也具有很强的IO局部性。对于这样的IO Pattern,如果系统设计合理,那么是可以做到在线重复数据删除的。

转载于:https://blog.51cto.com/alanwu/1406931

EMC产品分析介绍(三):备份领域的引领者DataDomain (1)相关推荐

  1. 傅盛:猎豹移动在三个领域取得进步 手游业务受政策影响不大

    雷帝网 乐天 11月22日报道 猎豹移动(NYSE:CMCM)昨日发布截至2018年9月30日的第三季度财报,财报显示,猎豹移动Q3总收入13.52亿元,同比增长16%,环比增长23%,超过公司业绩指 ...

  2. NoSQL介绍(三)

    NoSQL介绍(三) Redis数据类型-string string为最简单的类型,与Memcached一样的类型,一个key对应一个value,其支持的操作与Memcached的操作类似,它的功能更 ...

  3. 领域驱动系列:三种领域逻辑组织模式的本质

    企业应用架构模式中明确提出了三种领域逻辑组织模式:事务脚本.领域模型和表模块.不少人看的云里雾里的,不少人说的似懂非懂的,主要原因是没有从项目的级别的分析和设计经验,只有单个项目模块的开发经验的人很难 ...

  4. 云桌面VOI计算存储在服务器端,介绍三种云桌面:VDI、IDV、VOI

    介绍三种云桌面:VDI.IDV.VOI 云桌面应场景而变,没有一种云桌面可以适用所有场景.市场上的云桌面一般分为VDI.IDV和VOI三种架构.下面我们就来看下,它们各有哪些优劣,又分别适用哪些场景. ...

  5. {Django基础九之中间件} 一 前戏 二 中间件介绍 三 自定义中间件 四 中间件的执行流程 五 中间件版登陆认证...

    Django基础九之中间件 本节目录 一 前戏 二 中间件介绍 三 自定义中间件 四 中间件的执行流程 五 中间件版登陆认证 六 xxx 七 xxx 八 xxx 一 前戏 我们在前面的课程中已经学会了 ...

  6. C语言实现OOP——轻量级的面向对象 C 语言编程框架 LW_OOPC 介绍(三)

    文章目录 C 语言编程框架 LW_OOPC 介绍(三) 方案的可扩展性如何? LW_OOPC最佳实践 LW_OOPC的优点: LW_OOPC的缺点: 总结: 幕后花絮: 参考资料: C 语言编程框架 ...

  7. Lucene.Net 2.3.1开发介绍 —— 三、索引(三)

    原文:Lucene.Net 2.3.1开发介绍 -- 三.索引(三) 3.Field配置所产生的效果 索引数据,简单的代码,只要两个方法就搞定了,而在索引过程中用到的一些类里最简单,作用也不小的就是F ...

  8. 介绍三个开发技术小知识点

    背景 本文将介绍三个开发过程中的小技术点: Vue 组件传递对象时,根据是否会修改原对象内容,决定是直接使用,还是用副本: Spring 容器托管的实体 Bean 名称的基本规则: MyBatis 默 ...

  9. 介绍三款串口监控工具:Device Monitoring Studio,portmon,Comspy

    介绍三款串口监控工具:Device Monitoring Studio,portmon,Comspy 在开发上位机下位机通讯程序时,有一个好的监控工具会事半功倍.特在网上找了几款串口监控软件,作了简单 ...

最新文章

  1. 语音信号短时域分析之预处理(三)
  2. docker化你的java应用(上)
  3. 【ABAP】文本表查找
  4. IT-标准化(中国)有限公司-网络拓朴图
  5. 什么情况下选择linux,在哪种情况下建议选择BSD系统而不是Linux?
  6. 敢问多任务学习优化算法路在何方?|附代码
  7. 贝莱德砸10亿美元买下指数定制公司,释放什么信号?
  8. Paper-9 精读VAIL (2019 ICLR)
  9. 百度 android 市场占有率,2019百度 排行榜_2019安卓应用市场排行榜Top10
  10. jira是干什么_如何用JIRA来做需求管理?
  11. APPLE G5 机箱改造“黑苹果”全攻略
  12. 最新数据!国内5G手机出货已超29万部
  13. 网易免费企业邮箱 使用感受
  14. JAVA--利用Filter和session防止页面重复提交
  15. UVA-10929-You can say 11(秦九昭算法+同余与模算术)
  16. 线程的 run() 和 start() 有什么区别?
  17. 微信小程序 帮你算月供
  18. 利用excel与notepad++采集京东热门图书榜的清单
  19. myeclipse数据库逆向hibernate教程 -
  20. “无任何网络提供程序接受指定的网络路径” 错误的几种解决方案

热门文章

  1. 02.Java动态代理实现与原理分析之静态代理
  2. 如何配置交换机的双工模式及速率
  3. 如何用php做每天日程安排,PHP开发制作一个简单的活动日程表Calendar,日程表calendar...
  4. 解决苹果CMS采集后没有显示图片的问题
  5. 视频教程-C#LINQ查询技术-C#
  6. 如何获取文件的MD5,来这里看看
  7. 盛大Bambook应用程序开发达人赛落幕,InfoQ获最受欢迎社区奖
  8. 导轨式直流电能表 充电桩直流计量-安科瑞 顾月
  9. Android平台标日单词查询背诵软件:日语学习机(包含标日初级48课和中级32课所有单词) 手机软件 移动软件
  10. Wifi WDS的两种模式