开发者社区> 问答> 正文

oceanbase任意时间点恢复时的事务一致性处理

看了很多文章介绍OB的全量、增量、日志备份,目前可以理解全量和增量备份的时候,是根据备份的时候得到的一个时间戳,到OB server的每个宏块里边,根据mvcc的原理获得一致性的备份,增量也可以这么理解。(这实际上是从TiDB的备份原理看到的,OB没有找到相应的文档)。 但是恢复到任意时间点的时候,目前只看到通过clog的的解析还原到OB server, 我的疑问从这里开始的: 1. 每一个OB Server都有一个clog,因此加载clog是每一个ob server自己单独做的吗? 2. 如果是单独做的,如果我指定了一个时间点,例如16:00:00,这该秒上有可能有多个分布式事务,同时这些分布式事务可能涉及到不同的ob server,因此当某一个分布式事务中的子事务在不同OB server上的提交时间不一致,例如错开了一秒(节点时间同步是不能100%一致,毫秒级差别),那么给定的这个恢复时间,有可能就会在某个observer上的子交易成功,而另外一个不会成功,从而导致整个分布式交易丢失了某些子交易。这种情况下,OB的日志恢复是否会从全局交易一致性的角度去确保这种情况下分布式交易的恢复一致性呢?

展开
收起
游客jwujz3ev36ms2 2022-09-23 13:56:34 395 0
来自:OceanBase
0 条回答
写回答
取消 提交回答
来源圈子
更多
收录在圈子:
+ 订阅
蚂蚁OceanBase数据库团队,用于OceanBase技术原理、运维经验和案例分享、对外交流。
问答排行榜
最热
最新

相关电子书

更多
开源HTAP OceanBase产品揭秘 立即下载
云数据库OceanBase 架构演进及在金融核心系统中的实践 立即下载
自研金融数据库OceanBase的创新之路 立即下载