OSS 网关对象聚合技术

该技术是一种创新技术,通过 AnyShare OSS 网关,截获对象存储所有的操作,实时将小文件聚合成大对象,记录对象元数据信息。 AnyShare 访问小对象时, OSS 网关通过对象信息,读取指定大对象的指定位置、指定长度的数据,保证业务系统无感知的访问所需的文件。 该技术通过在生产端把小文件聚合成大对象 进行存储,打破了传统备份方案无法解决的海量小文件导致存储读写性能低下的问题,实现任意场景下海量小文件高性能备份恢复的效果。
应用一致性的实现原理
AnyBackup 通过应用系统资源管理和应用级任务编排调度技术实现 AnyShare 备份数据的应用一致性。首先将 AnyShare的所有数据组件( MySQL、 MongoDB、 ECeph 对象存储数据)当成一个应用系统资源 配置到 AnyBackup 中进行统一管理。然后 AnyBackup 会 识别 AnyShare 数据组件 间 的依赖关系,根据数据组件间的依赖关系确定各个数据组件的备份和恢复顺序, 从而确保各个数据组件间的应用 一致性。
备份原理
备份流程概述
第一步:AnyBackup 管理控制台先通知 AnyShare OSS 网关发起对象存储数据备份。
第二步:AnyShare OSS 网关对象存储数据备份启动成功后, AnyBackup 管理控制台启动MySQL 备份。
第三步:MySQL 备份成功后, AnyBackup 管理控制台启动 MongoDB 备份。
第四步:MongoDB 备份成功后, AnyBackup 管理控制台通知 AnyShare OSS 网关结束对象存储数据的备份。
第五步:AnyShare OSS 网关会根据 MongoDB 备份结束的时间,来判断哪些对象存储数据要进行备份, 等这些对象存储数据备份结束 后此次 AnyShare 应用级备份任务备份完成 。上述所有步骤都执行成功,整个任务才算成功,否则任务执行失败。
时间点生成原理
- 任务界面显示的时间点: 任务界面显示的时间点是任务发起的时间点。
- AnyShare 数据保护时间点 :该时间点下对应 AnyShare 保护的数据时刻是 MySQL 备份结束的时刻的数据。也就是将来恢复数据的时候,只能恢复到 MySQL 备份结束那刻的数据。 例如 AnyShare 备份任务发起的时刻是 2020/11/25 17:10 MySQL 备份结束的时间是 2020/11/25 17:45 。那么该任务界面上显示的时间点就是 2020/11/25 17:10 。 AnyShare 的数据保护点是 2020/11/25 17:45 ,也就是将来恢复出来的 AnyShare数据是 2020/11/25 17:45 的数据 。
- OSS 网关备份结束时间点 :在 MongoDB 备份结束后会通知 OSS 网关,OSS 网关会基于当前时刻作为数据备份结束的界限,早于该时刻产生的对象存储数据会全部备份掉等这部分数据全部备份完以后整个任务才结束。
- 完备时间点 当用户发起完全备份的时候,如果是第一次,那么 MySQL 、MongoDB 、对象存储数据都执行完全备份。如果不是第一次,那么 MySQL 、MongoDB 执行完全备份,对象存储数据执行永久增量备份。
- 增备时间点:当用户触发增量备份的时候,M ySQL 执行增量备份,MongoDB 执行完全备份,对象存储数据执行永久增量备份。