Q先生
作者Q先生2020-03-10 21:32
灾备产品负责人, Q单位

备份族谱来了!细数各种备份类型(二)

字数 2559阅读 1815评论 2赞 13

灾备行业里经常能够听到各种备份类型:完全备份、增量备份、冷备份、映像级备份... ... 都是备份,怎么区别???Q先生来给大家捋一捋。注意:有的人习惯将备份下来的数据副本简称为“备份”(名词),为避免混淆,下文中的“备份”都是动词,不是名词。

根据备份频率划分


根据备份频率一般可以分为定时备份实时备份。定时备份就是指在某个确定的时间点进行备份,跟你设置闹钟一样的,到点了就开始备份。一般灾备厂商会提供多种定时策略以满足用户多样的需求。实时备份就是指不间断的备份,能够实时的监控到用户数据的变化,并将变化的数据备份到灾备介质中。

定时备份


定时备份可以区分多种备份类型,比如全量备份,增量备份等等。然而随着数据量越来越大,备份场景越来越复杂,简单的全量备份和增量备份已经不能满足用户的需求,由此衍生出很多其他的备份类型,如:反向增量备份、合成备份等等。

全量备份

全量备份也称作完全备份,顾名思义,就是对数据进行完整的复制。全量备份也是最可靠的备份,因此很多客户即使需要备份数据量很大,依然会选择进行周期性的全量备份。

全量备份可靠是可靠,但是消耗的介质空间是相当大的。解决这个问题的办法最简单的就是限制副本数。副本数也是所有定时备份任务都应该考虑的问题,它一方面用来控制介质空间的占用,一方面也用来进行数据生命周期管理。

增量备份

全量备份除了占用空间外,还存在备份窗口大的问题,往往做一次全量备份需要比较长的时间,对业务的影响时间也久。于是有了个替代方案,就是增量备份。增量备份就是指除第一次全量备份外,后面都只备份自上一次备份以来变更的数据。

增量备份对于减少数据量,提升备份效率很有效,但是它仍然有它的缺点:

  1. 每次增量备份都依赖于前一个备份副本,中间一个副本出了问题可能影响整个备份链,因此不如全量备份可靠。
  2. 备份对应的就是恢复,恢复的过程是先恢复全量副本,再依次恢复增量副本。如果增量副本过多,那么会影响恢复效率。

要解决上面的问题,一般客户都会采用周期性全量备份的策略。比如:每周末做一次全量备份,每个工作日做一次增量备份。这样的策略应用十分广泛。

差量备份

差量备份是指除第一次全量备份外,后面的备份都只备份第一次全量到当前时间点的变化数据。有的时候也叫差异备份。它与增量备份很类似,一般也是采用一样的技术,差异点就在于:增量备份是基于上一次备份时间点(不管全量还是增量)获取变化数据,而差量备份是基于上一次全量备份时间点获取变化数据。差量备份的出现就是为了解决客户对增量备份链不信任的问题,他们更期望工作日的备份能够依赖于更可靠的全量备份。

多级增量备份

多级增量备份是增量和差量备份的结合体,它主要用于更加精细的备份策略。在多级增量备份中,一般把全量备份定义为Level 0,把增量备份定义为Level 1, Level 2,Level 3等。Level n 仅备份自Level n-1以来的增量数据。我们来举个例子,假设客户周日做了一次全量备份,周一、周二、周三的时候分别做增量备份,周四又基于周日做了一次差量备份,周五继续基于周四做增量备份。用户的备份介质中的结构如下图所示。

多级增量备份实际应用的话不太多见,很多灾备厂商目前甚至都不提供这样的功能。

反向增量备份

很多客户由于业务需要,每天会有很多的增量数据产生。对于这些客户来讲,他们很困扰,如果周六的时候业务出现问题,需要恢复到周五的状态,那么他必须先恢复上周末的全量数据,接着再恢复周一到周五的增量数据。这中间还可能存在很多数据被反复覆盖,属于无效恢复。为了解决这个问题,一些备份厂商提供了反向增量备份。

反向增量备份就是指将本次要备份的增量数据替换到全量副本中,然后将全量副本中对应的数据替换出来,作为历史增量数据(如上图中的“增量副本-1-1”)。

采用反向增量备份方式的客户,最终备份介质中数据副本的形态如下图。在这种方式下,客户可以以最快的速度恢复最新的时间点。

永久增量备份

随着数据量的爆发式增长,目前很多客户已经没有办法在周末完成一次全量备份了,客户不得不接受持续做增量备份的策略。所谓永久增量备份,就是指除第一次备份外,后续所有备份都采用增量备份的方式。一些备份厂商干脆去掉了全量和增量的区分,在他们的操作界面上,客户只需发起备份,不用关心是全量还是增量了。其内部的逻辑其实还是第一次全量,后续增量的方式。常规的永久增量备份效果如下图。反向增量也可以做永久增量备份,原理是一样的,作图辛苦,此处就略过不表了。

合成备份

永久增量备份其实牺牲了客户对全量备份的信任和依赖,是客户数据量增长过快场景下的妥协。但虽然有了永久增量,但也不可能真的“永久”下去,数据是不断增长的,总归要做数据的生命周期管理。一些厂商就提供了合成备份的功能,合成备份是指将备份介质中的全量和增量数据进行整合,合并成一个新的全量副本。如下图所示,当客户需要恢复到全量副本1-3的数据状态时,只需恢复合成副本即可,无需依次恢复整个备份链。

合成备份一般与永久增量搭配使用。合成备份属于备份介质内部的处理,它本身不会对生产业务造成影响。一般灾备厂商也会提供合成备份的策略供客户自行配置,比如:多长时间进行一次合成、产生了多少个副本后进行一次合成等等。常规的合成备份由于会生成一份全新的全量副本,经过合成备份后,合成之前的数据副本可以删除。这样的方式也称作前向永久增量。大家可能会发现,这样的方式无法解决反向增量备份原本要解决的问题,也就是恢复效率的问题。那有没有更好的永久增量方案呢?有,Q先生后面的文章中会给大家讲解,大家可以持续关注“灾备有道”公众号。本文暂略过不表。

实时备份


实时备份顾名思义,表示实时的,不间断的备份。一般来讲,实时备份需要利用CDP(Continual Data Protection)技术,CDP一方面用于实时复制,另一方面用于实时备份。注意:实时复制一般是指与生产端与灾备端保持数据同步,当生产端出现故障时,灾备端可以直接拉起业务,保证业务的连续性;实时备份是指将数据保存到备份介质中,以便于数据可以恢复到任意历史时间点。


作者简介 :
---- Q先生 , “ 灾备有道 ” 公众号作者,一个灾备行业混迹多年的技术人。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

13

添加新评论2 条评论

#Jerry系统架构师, 某金融公司
2020-10-12 15:05
难得看到灾备的同行,看得出来积累深厚,点个赞。
#hfboss技术总监, ahzyhl
2020-04-15 21:46
谢谢

Ctrl+Enter 发表