OB有问必答 | 分布式数据库有哪些常用的高可用及容灾方案?

简介: 本期内容结合OceanBase数据库的实践经验,向大家介绍一下OceanBase及分布式数据常用的一些高可用及容灾方案。

OceanBase数据库从诞生之初,就利用Paxos协议在底层实现了多副本数据一致性,具有上述“RPO=0、低RTO(通常在30s以下)、故障时自动切换”的优势。而经过多年实际应用场景的历练后,尤其是像支付宝、淘宝、网商银行这种高并发、高访问量、24*7持续交易场景的磨练,OceanBase数据库已经摸索出一套完整的、经过实践检验的高可用及容灾方案。下面我们就结合OceanBase数据库的实践经验,向大家介绍一下OceanBase及分布式数据常用的一些高可用及容灾方案。

其中最核心的思想就是要充分利用分布式多副本数据一致性协议的原理,并结合各种意外情况的具体特点(个别硬件故障?机房级灾难?还是城市级灾难?),找到对应的解决之道。如果客户的基础设施条件有限,不能满足分布式多副本数据一致性协议的部署要求,那么可以考虑引入其它方式,比如集群间数据复制。

下面的表格中,我们总结了几种方案方便读者参考:
未标题-1.jpg
大体来讲,针对不同的具体情况,下面几种方案都满足了“RPO=0、低RTO、故障时自动切换”的要求,而且在技术上没有明显的缺陷,应该作为高可用及容灾方案的首选:

• 单机房3副本方案如果没有任何机房级容灾或者城市级容灾的要求,只有最简单的高可用要求,那么这种简单易行的部署方案是再好不过了。

• 同城3机房3副本方案如果有机房级容灾的要求,但没有城市级容灾的要求,那么这种方案是最佳选择。
如果用户只有同城2机房而没有建设第3机房,可以考虑在同城内租借一个机房(甚至只租借部分机柜)来满足3机房的条件,并可以利用OceanBase的“日志副本”技术降低部署难度。

• 3地3机房5副本方案如果既有机房级容灾的要求,也有城市级容灾的要求,那么这种方案能全部满足,提供最高级别的高可用性。

如果用户的基础设施条件有限,无法满足上面几种方案的要求,但同时又要求机房级容灾能力或者城市级容灾能力,应考虑“集群间数据复制”方案。

最后,也必须意识到技术在不断进步,OceanBase在不断进步,用户的IT建设也在不断进步。今天的最佳方案也许明天就能找到更好的替代者,因此我们必须以发展的眼光持续进化我们的技术方案,才能让OceanBase的用户在未来有更多更好的选择。在这个过程中,我们也非常希望和业界的朋友及广大用户有更多的技术交流和思想碰撞,共同推进分布式数据库技术下高可用及容灾方案的发展。

相关文章
|
1月前
|
SQL 关系型数据库 MySQL
乐观锁在分布式数据库中如何与事务隔离级别结合使用
乐观锁在分布式数据库中如何与事务隔离级别结合使用
|
2月前
|
消息中间件 canal 缓存
项目实战:一步步实现高效缓存与数据库的数据一致性方案
Hello,大家好!我是热爱分享技术的小米。今天探讨在个人项目中如何保证数据一致性,尤其是在缓存与数据库同步时面临的挑战。文中介绍了常见的CacheAside模式,以及结合消息队列和请求串行化的方法,确保数据一致性。通过不同方案的分析,希望能给大家带来启发。如果你对这些技术感兴趣,欢迎关注我的微信公众号“软件求生”,获取更多技术干货!
163 6
项目实战:一步步实现高效缓存与数据库的数据一致性方案
|
2月前
|
canal 缓存 NoSQL
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
根据对一致性的要求程度,提出多种解决方案:同步删除、同步删除+可靠消息、延时双删、异步监听+可靠消息、多重保障方案
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
|
1天前
|
NoSQL 安全 PHP
hyperf-wise-locksmith,一个高效的PHP分布式锁方案
`hyperf-wise-locksmith` 是 Hyperf 框架下的互斥锁库,支持文件锁、分布式锁、红锁及协程锁,有效防止分布式环境下的竞争条件。本文介绍了其安装、特性和应用场景,如在线支付系统的余额扣减,确保操作的原子性。
12 4
|
22天前
|
缓存 关系型数据库 MySQL
高并发架构系列:数据库主从同步的 3 种方案
本文详解高并发场景下数据库主从同步的三种解决方案:数据主从同步、数据库半同步复制、数据库中间件同步和缓存记录写key同步,旨在帮助解决数据一致性问题。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
高并发架构系列:数据库主从同步的 3 种方案
|
26天前
|
NoSQL 算法 关系型数据库
分布式 ID 详解 ( 5大分布式 ID 生成方案 )
本文详解分布式全局唯一ID及其5种实现方案,关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
分布式 ID 详解 ( 5大分布式 ID 生成方案 )
|
17天前
|
关系型数据库 分布式数据库 数据库
PostgreSQL+Citus分布式数据库
PostgreSQL+Citus分布式数据库
49 15
|
30天前
|
人工智能 Cloud Native 容灾
云数据库“再进化”,OB Cloud如何打造云时代的数据底座?
云数据库“再进化”,OB Cloud如何打造云时代的数据底座?
|
1月前
|
存储 缓存 NoSQL
分布式架构下 Session 共享的方案
【10月更文挑战第15天】在实际应用中,需要根据具体的业务需求、系统架构和性能要求等因素,选择合适的 Session 共享方案。同时,还需要不断地进行优化和调整,以确保系统的稳定性和可靠性。
|
2月前
|
存储 SQL 关系型数据库
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
MySQL如何进行分库分表、数据迁移?从相关概念、使用场景、拆分方式、分表字段选择、数据一致性校验等角度阐述MySQL数据库的分库分表方案。
425 15
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
下一篇
无影云桌面