【IT168 资讯】“持续数据保护(CDP)是一种连续采集或者追踪数据改动,并存储这些变化独立于主存储,使恢复点能够来自过去的任意(时间/IO记录)点。CDP系统可以是基于数据块、文件或者应用,并能够为可恢复目标提供优秀的粒度,达到无限变化的恢复点。因此,根据这个定义,所有CDP方案需要体现出这3条必要的属性:
1. 数据变化被连续采集或者追踪
2. 所有数据变化存储在一个独立于主存储的位置
3. 恢复点目标是随意的,并无需在实际恢复之前进行定义”
在上面的描述中,“来自过去的任意点”和“无限变化的恢复点”,这是指在对每次写I/O操作打上时间戳的同时,支持不限历史长度的回滚。
那么,回滚到每一个I/O有多大意义呢?这就好像数据库的undo日志能回滚每次事务操作那样。经过测试浪擎DX备份一体机,在SQL Server中循环插入一条简单的记录,真的能够做的回滚到每一次事务。而如果是秒级或者分钟级的“准CDP”,显然做不到这一点。
浪擎DX备份一体机可以通过时间定位到需要回滚使用的历史快照/记录点
然而,并不是每种I/O级CDP,都能回滚无限的时间长度。比如有的产品能做到保留15天内数据变化,有的不建议超过30天,等等。
为什么会这样呢?有两点因素:
1. 性能影响——随着CDP保护时间的延长,对生产存储性能影响会增加?
2. 索引信息庞大——每一次数据变化,都要在索引表里有一条记录,这个记录有没有限制?
从实现原理上看:I/O记录和快照最大的不同在于,如果是ROW(写重定向)快照,在回滚时不需要真正移动数据,只是根据快照表来将索引“还原”到历史状态;或者像WAFL、ZFS这些Copy-on-write文件系统则可以做到更先进,天生就是“从不原地修改数据”的写策略,其元数据管理机制支持几乎无限数量的快照,并且性能影响更小,回滚时只是对一个表的操作。
由于I/O记录级CDP的粒度更细,有人将它称为“录像”技术,那么在回滚时就类似于“倒放”。如果保护时间一长,数据累积的变化量较大时,回滚时间通常也是成正比的。CDP的恢复时间长正是这个原因导致的,使得在实际使用过程中大多数的CDP产品采用先进先出队列,保留一段较短时间的数据,而不是宣传的任意长时间的数据。
此外,大多数的CDP产品面临的另一个致命问题,就是回滚到某一时刻可能导致数据库不能启动,尤其是Oracle数据库,这些CDP就采用继续往前回滚时间点,直到成功启动。从这个角度来说,容灾数据库的恢复时间不可预料,从而导致业务系统不能运行。
浪擎DX备份一体机内嵌的实时备份如何做到容灾数据库能正常启动和快速回滚呢?
1.浪擎实时备份采用创新的数据库一致性点分析和捕捉技术来确保数据库的可靠性。实时备份找到数据库确认的一致性点,在恢复时则恢复数据到离选择时间点最近的一致性点,因此恢复出来的数据库总能正常启动。这完全不同于现有的CDP技术,恢复时依靠回退(Rewinder)来穷举应用数据的一致性状态。
当然,也有其他CDP技术依靠生产端应用感知技术暂时冻结应用系统活动,在此冻结期间采用存储快照技术来帮助恢复到一致性点。但这种方式对生产系统影响太大,因此这类CDP技术不能做到实时,只能做到准实时备份。
2.浪擎实时备份采用差分合成技术来减少恢复路径,加快恢复路径。浪擎实时备份采用应用差分合成技术根据数据库一致性点来预先自动的、智能化的合成全量、增量版本,使得在恢复时可以减少恢复I/O和路径,实现了无限版本存储和最快的恢复速度。
这就是浪擎DX备份一体机的独特价值,创新性的数据库一致性捕捉和分析技术创造出与众不同的可靠性和性能。