其他分享
首页 > 其他分享> > [TcaplusDB知识库]TcaplusDB的数据恢复功能

[TcaplusDB知识库]TcaplusDB的数据恢复功能

作者:互联网

作者:TcaplusDB
链接:https://zhuanlan.zhihu.com/p/370381543
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

TcaplusDB是腾讯自研的noSQL数据库,针对游戏的开发特点而定制,具备高性能、低成本、高可用、强弹性伸缩等特点,本文重点介绍Tcaplus高可用中必备的数据恢复功能。


TcaplusDB采用主备做数据的冗余备份,其中Master和Slave角色是对等的,具体表现在Master的数据会异步的同步到Slave,当Master挂掉后,Slave会切换为Master提供服务。

数据恢复包括两个部分:备份与恢复,因此从以下两点来介绍。

备份

数据库需要定时备份。从TcaplusDB架构图中得知,每对主备都是通过备机定时向冷备中心做备份。在每台机器上架的时候,冷备脚本都会部署到机器上,之后通过冷备脚本与冷备中心的交互完成备份工作。

 

 

冷备脚本的作用

备份策略

冷备中心

恢复

故障恢复

故障恢复中最主要的又是机器故障,一般分为Slave故障和Master故障:

​ 对于Slave机器故障,由DBA发起Slave重建事务,此时新替换的机器,会将原挂起的slave的冷备下载到本地,经解压后注册到Master。

​ 对于Master机器故障,系统会自动将Slave切换为Master,之前的Master切换为Slave,Slave再发起重建事务,拉取新Master的冷备做数据恢复。

业务恢复

业务需要恢复一些key到指定时间点

这类问题分两步:

①把数据构造到指定时间点,包括从冷备中心拉取到本地以及解压到指定的目录。

②从构造好的数据里找到对应的key,将数据导入线上。导入前,项目组有时知道具体的key,有时只知道具体的范围,此时分两种情况讨论:

​ key已知:从构造好的数据中遍历查找到执行的key,发起导入即可。

​ key未知,只知道范围:TcaplusDB将范围内数据遍历出来并提供给项目组,由项目组辨识需要回档的key导入线上。

两种情况均已事务化。

业务测试需要将现网数据复制到测试环境

现网和测试环境属于两个集群,该过程也分为两步:首先将现网的数据构造一份,然后复制到测试环境并全量导入。


TcaplusDB是腾讯出品的分布式NoSQL数据库,存储和调度的代码完全自研。具备缓存+落地融合架构、PB级存储、毫秒级时延、无损水平扩展和复杂数据结构等特性。同时具备丰富的生态、便捷的迁移、极低的运维成本和五个九高可用等特点。客户覆盖游戏、互联网、政务、金融、制造和物联网等领域。

标签:冷备,数据恢复,知识库,Slave,备份,TcaplusDB,Master,机器
来源: https://www.cnblogs.com/shujurener/p/15062979.html