业务连续性是我们今天所广泛探讨的话题,一般而言,业务连续性的实现对大型企业来说相对较为容易。因为这些企业有自己的IT员工和丰厚的资金保证,可以花费数以百万计的美金来建立备用的数据中心,把所有信息在远程的灾备中心进行异地保存,同时还应用了许多其他灾难恢复技术。
以911事件为例,有多家金融服务机构就位于世贸大厦中或者周边地区,著名的双子大厦倒塌后,这些金融服务机构却没有丢失任何一笔交易数据,并在灾难之后数小时内就完全恢复运营。这是为什么呢?因为这些机构在远程的数据中心有运行着OpenVMS操作系统的昂贵服务器,随时可以进行业务切换。只要系统瘫痪了,强大的网络就可以转换到备份的站点上。
然而并不是所有的企业都有如此庞大的财力和人力来构建标准的容灾中心,同样是处于911事件中的另外一家律师事务所,采用常规的磁带备份方式来备份业务数据和客户资料。911事件发生后,他们的资料随着大厦一同化为灰烬,以至于该事务所的业务在相当长一段时间内不能恢复正常。
由于容灾中心的运转过程太过复杂,维护它有效运营的成本也太过沉重,对于大多数企业来说,业务连续性似乎成为了一个奢侈的目标。那么如果我们无法建立容灾中心,传统的备份就不能实现业务连续性目标了吗?
徒劳无功的备份与恢复
如果数据无法恢复,那么备份就是浪费时间和金钱。然而根据业务分析公司 Enterprise Strategy Group调研数据分析,全球大约有40%的数据恢复失败了,失败的原因并不在于备份软件或者磁带上,而是由于备份任务本身的复杂性决定的。
如果我们研究备份的过程和原理,我们会发现,整个备份操作将贯穿应用程序、服务器、存储设备和网络层,且备份本身是一个很容易受到影响的过程,除非在整个备份的过程中,一切都正常运转,否则很有可能这次备份将成为一次失败的操作。一旦备份失败,我们也很难找到失败的根源,因为有些备份解决方案供应商估计他们花了90%以上的时间在与软件无关的问题之上。
备份的目的就在于:要完全精确地保证正确的数据在正确的时点得到恢复。为了达到备份的目的,备份的时候:
1. 所有访问业务数据库的应用程序和服务都必须停止。
2. 要找到最后一次完全备份的数据,装载恢复。
3. 然后所有的相关的增量备份拷贝也要找到,按照正确的顺序装载恢复。
4. 最后,必须正确使用数据库日志(假设日志可用)。
要实现上述的这些步骤,Windows文件系统和文件必须在一个合适的时间得到保存,这一般是部署一个开放式文件管理器的必要条件。备份软件要做的就是读取很多的文件系统元数据,来判断哪些文件有所变化,然后就把整个文件系统以及/或者数据库进行拷贝,或者仅仅对有变化的一部分文件进行拷贝。
这个过程取决于系统的大小,可能会花上数个小时,且整个备份过程占用了大量的运算资源和带宽,对应用程序的运营影响极大,为尽量避免对业务程序的影响,大部分公司选择做备份不超过一天一次,一般会选择在业务运营量最小的午夜至第二天凌晨的时段内进行。
RPO和RTO是我们在衡量备份和业务连续性的时候,经常会用到的两个概念。恢复点目标(RPO)是在发生灾祸的情况下公司可接受的数据丢失量的衡量标准。受到目前备份和恢复技术上的限制,很多企业设定的RPO是24小时??在预定的增量备份过程发生之间。换言之,即使企业通过备份系统完全恢复数据,也损失了24小时的业务数据量。
恢复时间目标(RTO)是指灾难发生后,业务恢复运营所用的时间,一般的企业从数小时到数天都是比较 实际的RTO。然而这也是由于目前备份技术和操作上的限制造成的,而不是业务需求。
真正的业务连续运营要求完全为零的RPO和RTO,虽然我们不可能完全达到,但至少可以无限接近。
改善传统备份的性能
面对这种痛苦的,混乱的备份过程和缓慢的不可靠的恢复,有些客户在寻找替代的技术,比如快照(snapshot)或者克隆(clone)。这些技术,虽然一定程度上减少了混乱,也提高了恢复效率,但只能解决部分问题,而且增加了操作成本和复杂度。
克隆(clone)可以在某一时间点提供一份额外的数据视图,依赖于执行的同步性,这将是一个最近的或最接近的视图。举例来说,一个应用程序错误导致了主数据集的损失,也会导致从数据集的损失,结果就是损失了两次。
快照(snapshot)可以帮助保护用户丢失的数据,但不能从硬件或站点错误中恢复数据。快照可以返回一个数天前特定时间的文件系统。然而,快照不提供政策管理和备份软件解决方案的可用性,因此它们在管理大规模的数据和较早的数据上效率极低。很多快照技术和私有硬件系统密不可分,因此限制了它们的应用。
备份保护间隔一般是24小时;快照保护间隔一般是1至3小时;克隆无法保护由病毒或黑客造成的损失,且克隆的数据也是有问题的,只有最后一个版本可用,不能恢复过去的数据。
最重要的是,决定实施快照以及/或者克隆的公司仍然需要他们的备份系统来保护他们的数据。这就留给这些公司,特别那些中层的公司,两个同样不痛不痒的选择:忍受备份的痛苦和不可靠性,或者接受成本、复杂度和技能需求的增加,来支持备份和新技术的日常操作。
连续性数据保护(CDP)是近来兴起的可实施的,占用系统资源较小的,且价钱合理能够负担的一种解决方案,可在尽可能最短的时间内来恢复最大量的数据丢失和损坏。
业务连续性不再遥不可及
连续数据保护系统能够有效地帮助你及时回溯数据。倒转到执行删除操作或者破坏性事件发生的前一刻。由于持续数据保护的过程有效地消除了备份窗口,因此数据恢复的RPO和RTO都产生了质的提高,对于更多有业务连续运营的企业来说,不必建造一个昂贵的远程容灾中心,也能实现业务连续运营的需求了。
连续性数据保护就是取得现在进行的读写操作,并实时地拷贝这些变化,到一个运行着动态文件系统的从数据存储器中。
连续数据保护的过程,对应用程序是完全透明的。没有运行的备份窗口,数据拷贝到动态的存储器中,每一次写操作都要作索引,所以可以立即定位到数据在文件生命中任意一个之前的时刻。这个过程在概念上和连续性系列快照比较相似。然而,和快照不同的是,连续性数据保护系统可以在任何一个粒度立即定位和恢复数据,从单一的文件到整个数据库。
因为数据是在文件级别上收集和察看的,管理员可以根据策略有选择地收集和保存重要的业务数据。数据保存,即使是以文件级别的粒度进行,也是有策略可循的。这就不再需要自动删除了。不像备份和快照,在预先定义时间增量的基础上获取一系列离散的数据,CDP则能记录任何在数据上发生的改变。
和传统的备份不同,基于文件的CDP在文件系统上截取数据改变的过程并不显眼,而且不需要关闭应用程序或文件,数据库也不需要进入备份模式,因为数据本质上不是被“拷贝”了。这个过程是悄无声息的,连续的,对数据服务器的影响不到5%,也是可忽略的。使用基于文件的CDP,观念和备份窗口的限制已经成为过去。因为没有时间表也没有媒介要管理,基于文件的CDP很简单,而且不容易出错,备份的复杂度也降低了。基于文件的CDP构建在文件系统层之上,使得应用程序更加稳定。嵌入式的写顺序保存和数据整合校验更加保证了可靠性和数据的完整性。
和复制相似,基于文件的CDP使用一个存储空间来放置主数据集的副本,从而提升了数据的可用性。和复制只提供重要的现在的视图,或者由镜像提供的副本视图,备份或快照而来的历史的视图不同的是,基于文件的CDP提供了连续的副本视图,拷贝任意时刻的视图到程序或者第二服务器是简单快速的。提供了可靠的视图,比如数据库检测点视图,从而减少费时费力的磁带恢复和日志回滚。因此,基于文件的CDP可以把恢复时间目标(RTO)从数小时降低到数分钟。
不仅仅是持续数据保护
企业对业务连续性的需求越来越迫切:无论出现任何问题,客户、供应商、合作伙伴,远程工作人员和出差人员都要在信息系统架构上继续业务。持续数据保护技术的诞生与发展从根本上颠覆了传统备份模式,也使得业务连续运营成为大多数公司力所能及的目标。
通过连续捕捉文件系统中数据的改变,持续数据保护给Windows数据提供了物理和逻辑错误的完整的,透明的保护。从数小时或数天到实时完成,应用程序的RPO产生了质的飞跃;RTO也可以从数小时减少到数分钟甚至数十秒。
然而我们需要注意的是,真正意义上实现业务连续运营,还取决于企业对业务连续运营的要求和等级。一般来说,完全为零的RPO和RTO,除了需要通过诸多的技术手段,很多业务流程上的保证也是必不可少的一部分,连续业务运营,必然不是IT一个部门的问题。
持续数据保护让备份更简单易与管理,让恢复更加快速,所带给我们的,只能是无限接近于零的RPO和RTO,而这两个数值,实际上永远不可能真正为零。当然相比过去,我们无疑已经有了很大的进步,并且大多数企业对于RPO和RTO的要求,并非我们所想象的那样苛刻。
持续数据保护并不能完全替代容灾中心。持续数据保护所解决的是在服务器当机或者其他数据中心故障的情况下,可以即时无缝的恢复系统,因而企业可以在一定条件下,依然维护业务连续运营。然而一旦发生无法预计的灾难事故,企业机房本身遭受毁灭性打击的情况下,异地容灾中心的作用依然不可替代。