快照原理

最近更新时间:2019-07-02 15:54:29

快照与源云硬盘关系

快照是云硬盘某个时刻的数据备份,云硬盘的数据写入和修改不会对已创建的快照造成影响。基于此特性,用户可以使用快照记录云硬盘不同时刻的数据,用于满足系统恢复、容灾以及云硬盘复制等需要。
如下图所示,快照1保留的是10:00(制作快照时间点)云硬盘上数据块的信息,与后续时间发生的变化无关。

快照大小与源云硬盘关系

快照仅保存云硬盘里被写入或修改过的数据块,所以一般情况下云硬盘对应快照的大小会小于云硬盘的大小。
快照的大小与云硬盘的关系如下图:

增量快照创建流程说明

腾讯云快照采用增量快照机制,当您对同一个云硬盘连续创建多个快照时,除了首个快照是全量快照以外,后续快照都只包含相对于前一个快照的数据变化部分(增量快照),这样可以最大限度的减少连续制作快照时的占据存储空间总容量,减少用户开销。
示例:假设云硬盘内有3个数据块 A、B 和 C,您分别在10点、11点和12点为该云硬盘制作了快照。每个时间间隔中云硬盘上的数据块变化如下图所示,那么每个快照中应该存有以下数据:

  • 快照1(首个快照):包含当时云硬盘上所有数据块的数据备份(一般称为全量快照) 。
  • 快照2:期间云硬盘上数据块 A 发生变化,快照2仅包含数据块 A 的最新数据备份(一般称为增量快照) 。
  • 快照3:期间云硬盘上数据块 B 发生变化,快照2仅包含数据块 B 的最新数据备份(一般称为增量快照) 。

增量快照回滚流程说明

基于前面的例子,当您使用快照3进行数据回滚时,系统会将快照1、快照2和快照3的数据进行合并,如果存在相同位置的数据块则取最新的快照中的数据。最终回滚时,将合并后的数据集合写入到待回滚云硬盘中。
增量快照回滚流程如下图:

增量快照删除合并流程说明

  • 删除全量快照(即第1个快照)时,系统自动合并该全量快照与下一个增量快照。
  • 删除增量快照时,系统自动合并该增量快照与下一个增量快照,如无下一个增量快照则直接删除。

基于前面的例子,如果您删除快照1,系统会将快照1和快照2进行合并,使用快照2中的数据覆盖快照1相同位置的数据,合并后的快照2成为新的全量快照。
增量快照删除合并流程如下图: