数据保护:快照技术的应用

日期: 2014-10-07 作者:Marc Staimer翻译:李志明 来源:TechTarget中国 英文

很多数据保护管理员、分析师和厂商一直迷恋于快照技术。它有很多受人喜爱的优势。也存在致使灾难恢复和业务连续性计划出现功能故障的误解。与所有的数据保护技术一样,这些技术并非灵丹妙药,尽管很多管理员认为它们是。

所有数据保护技术都有折衷。快照技术也不例外。 免责声明:此处描述的快照技术是一般性的,并非引用任何特定厂商的实现。厂商都非常聪明。

技术变化很多,没有两个厂商或者两款产品是完全雷同的。描述都是基于作者的经验,一般都是正确的。 有两种离散的数据快照方法论。第一种是创建一份完全一致的特定时间点(point-in-time,PIT)的数据拷贝。

第二种是创建一份一个时间点的数据的状态或者元数据的拷贝。两……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

很多数据保护管理员、分析师和厂商一直迷恋于快照技术。它有很多受人喜爱的优势。也存在致使灾难恢复业务连续性计划出现功能故障的误解。与所有的数据保护技术一样,这些技术并非灵丹妙药,尽管很多管理员认为它们是。所有数据保护技术都有折衷。快照技术也不例外。

免责声明:此处描述的快照技术是一般性的,并非引用任何特定厂商的实现。厂商都非常聪明。技术变化很多,没有两个厂商或者两款产品是完全雷同的。描述都是基于作者的经验,一般都是正确的。

有两种离散的数据快照方法论。第一种是创建一份完全一致的特定时间点(point-in-time,PIT)的数据拷贝。第二种是创建一份一个时间点的数据的状态或者元数据的拷贝。两种快照都具有逻辑单元数、卷、虚拟LUN、虚拟卷、文件系统、文件存储、VMware虚拟机磁盘(VMware Virtual Machine Disk,VMDK)或者微软Hyper-V虚拟硬盘(Virtual Hard Disk,VHD)。那么区别在哪里?

完全的数据复制需要时间。它耗时颇多,时长取决于被拷贝的数据量。克隆通常是每次写入都执行的同步镜像。很多人利用三重镜像,第三个的镜像被中止来创建一个时间点克隆。这个克隆被创建之后,第三个镜像被重新建立并且被同步,直到达致最新。由于第三个镜像的数据已经被建立,因此将其转为时间点克隆就即时发生了。它即刻可用于安装、数据保护、数据仓库、归档、测试开发等。时间点克隆对用于数据保护的第二个镜像的使用没有任何影响。有一些只包含了从最近一次快照之后就一直变化的拷贝区块或者文件的时间点快照克隆的变体。但是所有的变体都占用相当大的容量。

这就是基于状态或者元数据的快照比时间点快照更普及的原因,因为它们占用很少的容量。基于状态的快照也被称为即写即拷(copy-on-write,COW)或者重定向写(redirect-on-write ,ROW)快照。COW和ROW快照制作一份元数据或者数据在某个特定的时间点具有的指针(pointer)的拷贝。

COW要求预留容量是正在进行快照的数据的大小。目前,很多厂商利用自动精简配置,因此它并不像听上去那么麻烦。只有数据正在被拷贝的时候,该容量才真正分派。只有数据集即将要被改变的时候,数据才被拷贝。COW快照首先把即将被改变的数据拷贝到保存改变实施之前那个时间点存在的数据拷贝的预留空间。 这被称为双写入性能限制(double write performance penalty),因为正在被改变的数据必须先被拷贝,然后再实施其它改变。在数据改变的时候,并且只有在数据改变的时候,COW理论上才为每一个快照制作一份完整的数据拷贝。

ROW不需要任何的容量预留。ROW快照通常都在相同的卷、LUN、虚拟卷、文件系统或者虚拟文件系统里面,但不总是如此。ROW比COW复杂一点儿,它需要更多的智能(智能算法)。由于ROW快照量的提高,增加的复杂性通常也增加了读延迟。

ROW实际上没有制作数据的拷贝,也没有像COW一样占用那么多容量,因此它能够进行更频繁的、可以被保留更长时间的快照。但是由于没有实际的数据拷贝,所以ROW快照将会成为一个突出的数据保护的问题。如果原始数据有任何损坏,那么其后所有的快照也受损。如果改变的数据有损坏,那么其后的任何快照也将受损。请注意:这也适用于快照真正被拷贝前的COW快照。

这并非唯一的COW和ROW数据保护问题。两者都提供数据崩溃状态一致的数据影像,意味着这些快照彷如某个时间点的实际的数据复制,如同系统刚好关机一样。这些快照并非应用感知,这是结构化数据(需要数据库的数据)的一个问题。可以对处于非一致性状态的数据库应用程序进行快照。如果数据库应用程序处于非一致性状态,那么需要数据库管理员(DBA)的手动尝试和时间来将其带回到一致性状态,通常是通过日志转发(journaling forward)的方式。

DBA偶尔也无法修正这种状态。

数据库应用程序应该被禁止操作(临时被禁止执行任何更多的事务),其缓存应该被清除而写入应该以包含索引和元数据的恰当的顺序完成;然后它应该被拍照以获得与应用程序保持一致的影像。这样处理存储、设备、服务器或者基于虚拟机管理程序的快照需要插件(客户端或者代理软件)。

这对微软来说相当简单。Windows上的大多数数据库应用程序与VSS(volume shadow services,卷影服务)兼容。VSS将根据需求禁止操作这些数据库应用程序。快照技术只需要与VSS API对话。并非所有(数据库应用程序)都如此。VMware具有与微软Windows的VSS兼容性,很多存储厂商也如此。

Oracle、Teradata、DB2、MySQL、PostgreSQL和MongoDB等其它应用程序需要特定的软件插件。那些插件可以从一些备份软件、复制软件和存储厂商得到。插件允许数据保护服务器(或者设备)使数据库应用程序处于一致性状态并禁止操作它、清理缓存、按照正确的顺序完成所有的写入、告知快照应用程序进行拍照,然后把数据库释放回到活动状态。数据保护服务器可以控制目录或者将其放到快照设备。它也可以把数据拷贝到另外一个存储目标,包括SAN、网络连接存储(network-attached storage,NAS)、对象或者云存储。

与所有的数据保护技术一样,快照也有瑕疵。这些瑕疵使快照技术被用作全面数据保护战略的一部分,而非整体的数据保护套件。

读者们经常想得到一份关于最佳的快照技术的陈述性报告。不幸的是,它取决于公司的优先级别。没有一款适合所有环境的“最佳的”快照。总之,ROW占用最少的容量但是具有较低可靠性和较高的潜在延时。克隆具有最高的可靠性但是占用最多的容量(容量占用可以通过不使用三方镜像来抵消,但缺点在于创建快照的时间较长)。而COW相对克隆更靠近ROW快照。请选择最适合贵公司的技术而非供应商。

相关推荐