关于OceanBase主备集群与备租户的同步机制,以下说法正确的是?
A. 主集群在执行事务时,必须先同步所有Clog到All Region备集群节点,待备集群全部写入成功后,本地节点事务才算提交完毕。
B. 备租户的数据同步是通过持续从主租户拉取Clog并回放实现的,因此备租户升级为主租户时,已经同步的数据可保证不丢失。
C. 主租户执行DDL操作期间,如果主集群出现全部节点宕机的极端情况,重新拉起主集群时会直接从备租户回切数据,相当于同步机制自动完成角色切换。
D. 备集群中的租户只能为只读状态,不能接收用户任何读写请求,同时在主备关系断开后也能够自动完成增量数据的最终一致性保障。
3 个赞
OceanBase备租户通过拉取主租户的Clog并回放来同步数据,同步机制确保了数据的相对实时性,因此在备租户升级为主租户时,已同步回放的数据可保证不丢失。
选项A错误,主集群的事务提交无需等待所有备集群节点确认,采用的是异步同步模式;
选项C错误,主集群全部节点宕机后,需管理员介入执行角色反转,并非同步机制自动完成切换;
选项D错误,备租户默认为只读,但可接收强一致性读请求,且断开主备关系后,其最终一致性无法由同步机制自动保障。
4 个赞
选择B
备租户通过网络持续从主租户拉取 Clog(Redo Log)并按顺序回放。在进行“计划内切换”(Switchover)时,系统会确保所有日志同步完毕后再切主,实现 RPO = 0。而在“计划外切换”(Failover)时,由于日志是持续拉取的,只要日志已经到达备端,数据就不会丢失。
1 个赞
没落的星辰
#18
正确答案B
备租户(物理备库)的底层同步逻辑,就是持续主动拉取主租户的 Clog(重做日志),然后回放日志来复刻主租户全部数据变更。当备租户执行升主操作时,已经回放、同步完成的数据,是可以保证数据不丢失、状态一致的。
1 个赞