华为云DDS新增PITR重大特性,高效恢复最新数据

举报
GaussDB 数据库 发表于 2022/09/08 15:50:43 2022/09/08
【摘要】 华为云DDS集群的PITR特性提供了完整且稳定的备份恢复功能,既能保证数据本身的安全,也便于客户集中精力在自身的业务实现上,助力业务发展更上一层楼。
传统场景下,当数据库需要进行数据恢复时,往往只能选择周期性自动备份的全量备份,数据恢复耗时较长,可恢复时间颗粒度较大,严重影响了客户的使用体验。

华为云DDS,一款兼容MongoDB 的文档数据库服务,最近新增的PITR(全称point-in-time recovery,中文名称:时间点恢复)特性能够让这一局面得到大幅改善,实现绝大多数场景下的任意时间点数据恢复,并让可恢复时间精确到秒级。本文主要介绍华为云DDS集群PITR特性的基本原理以及实测性能表现。

1. PITR特性原理

数字化经济时代下,数据成为企业的关键资产。如何保证数据资产的安全、稳定及可用,是企业必须考虑的事情。华为云DDS产品在原生MongoDB的基础上,做了一系列特性增强,使其相对于自建数据库拥有更高可用、高可靠、高安全、低成本等多项优势,更加贴切企业要求,是MongoDB业务上云的不二选择。下面将以华为云DDS4.0集群版本为例,阐述其PITR特性的内部实现原理。

基础介绍

集群模式下,PITR特性的实现前提是能够维护一个连续的增量备份,而增量备份的基础,则是一个基于全局一致性的全量备份。

华为云DDS集群在应用实践中,通过“Hidden节点备份”,“磁盘文件快照”,“Oplog备份”的方式,在既有的“逻辑时钟”基础上,做到了全局一致的全量备份,为增量备份的实现打好了坚实基础。原理概要图如下:
图片

增量备份

MongoDB官方,本身没有提供增量备份和PITR恢复的方案。为了实现集群模式的增量备份,华为云DDS专门对原生ChangeStream接口进行了增强,简称PCS接口。

之所以选用增强ChangeStream接口的方式,而不是原生ChangeStream或者oplog作为增量数据,主要是为了加快增量备份的速率,同时屏蔽集群实例内部的各种变化(如均衡/故障/主备延时等);此外还对ChangeStream场景进行进一步增强,以使得增量备份过程更具有可靠性(可以断点续传)和稳定性(基于备节点读数据,分担主节点压力),从而为PITR特性奠定基础。
图片
如上图所示,PITR提供的增量备份是基于全局一致性的全量备份进行的,增备频率作为可调整参数,根据不同客户的业务场景进行调整,尽可能地做到了实时备份。

增量备份内部实现是基于华为自研的PCS接口,即使在发生不可预测的异常时,只要实例最终状态能恢复成功,在大多数场景下,都可以实现增量备份的全时间覆盖。

增量备份内部过程:(1) 采用了多并发导出的机制,提升了增量备份的性能。(2) 相比社区特性,覆盖了更多用户侧的业务操作,增强了增量备份的场景覆盖范围。

PITR恢复

PITR恢复,是借助于全量备份和增量备份进行的。华为云DDS在大部分场景下,都可以基于历史上的任一时间点,以秒为单位进行数据恢复。
图片
如上图所示,PITR优先选择最近的一次全量备份,先进行全量恢复;然后依次恢复之后的各个增量备份,直到恢复至用户指定的时间点。增量数据恢复过程中,华为云DDS专门添加了一层优化器,可以加速增量数据的恢复,实现了文档级别的并发恢复。

2.PITR性能表现

经过测试,在特定同等数据模型及业务压力场景下,华为云DDS基于PITR特性进行秒级时间点恢复时,恢复性能大都优于同类产品,更加有利于达到快速恢复数据的目的。

实例规格:DDS 4.0 集群 2U4G 2mongos2shard

测试场景:4库X4表,hash分片,每表预置100chunk,每表使用ycsb插入200W条数据

恢复数据量:5X5X1000w(158G)
图片

3.总结

企业数字化转型如火如荼,面临的业务挑战也愈加复杂,一款具备优秀的备份恢复特性的数据库,在企业数据库选型过程中起到了很好的加分作用。华为云DDS集群的PITR特性提供了完整且稳定的备份恢复功能,既能保证数据本身的安全,也便于客户集中精力在自身的业务实现上,助力业务发展更上一层楼。



【 828大促火热进行中 】

新用户首购文档数据库DDS 1年3折

与RDS for MySQL组合购下单享折上9折

图片        
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。