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的用户在未来有更多更好的选择。在这个过程中,我们也非常希望和业界的朋友及广大用户有更多的技术交流和思想碰撞,共同推进分布式数据库技术下高可用及容灾方案的发展。

相关文章
|
4月前
|
消息中间件 canal 缓存
项目实战:一步步实现高效缓存与数据库的数据一致性方案
Hello,大家好!我是热爱分享技术的小米。今天探讨在个人项目中如何保证数据一致性,尤其是在缓存与数据库同步时面临的挑战。文中介绍了常见的CacheAside模式,以及结合消息队列和请求串行化的方法,确保数据一致性。通过不同方案的分析,希望能给大家带来启发。如果你对这些技术感兴趣,欢迎关注我的微信公众号“软件求生”,获取更多技术干货!
278 6
项目实战:一步步实现高效缓存与数据库的数据一致性方案
|
4月前
|
canal 缓存 NoSQL
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
根据对一致性的要求程度,提出多种解决方案:同步删除、同步删除+可靠消息、延时双删、异步监听+可靠消息、多重保障方案
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
|
5月前
|
NoSQL Redis
基于Redis的高可用分布式锁——RedLock
这篇文章介绍了基于Redis的高可用分布式锁RedLock的概念、工作流程、获取和释放锁的方法,以及RedLock相比单机锁在高可用性上的优势,同时指出了其在某些特殊场景下的不足,并提到了ZooKeeper作为另一种实现分布式锁的方案。
155 2
基于Redis的高可用分布式锁——RedLock
|
11天前
|
存储 缓存 NoSQL
云端问道21期方案教学-应对高并发,利用云数据库 Tair(兼容 Redis®*)缓存实现极速响应
云端问道21期方案教学-应对高并发,利用云数据库 Tair(兼容 Redis®*)缓存实现极速响应
|
1月前
|
人工智能 容灾 关系型数据库
【AI应用启航workshop】构建高可用数据库、拥抱AI智能问数
12月25日(周三)14:00-16:30参与线上闭门会,阿里云诚邀您一同开启AI应用实践之旅!
|
1月前
|
存储 Oracle 关系型数据库
数据库数据恢复—ORACLE常见故障的数据恢复方案
Oracle数据库常见故障表现: 1、ORACLE数据库无法启动或无法正常工作。 2、ORACLE ASM存储破坏。 3、ORACLE数据文件丢失。 4、ORACLE数据文件部分损坏。 5、ORACLE DUMP文件损坏。
124 11
|
1月前
|
SQL 关系型数据库 MySQL
数据库数据恢复—Mysql数据库表记录丢失的数据恢复方案
Mysql数据库故障: Mysql数据库表记录丢失。 Mysql数据库故障表现: 1、Mysql数据库表中无任何数据或只有部分数据。 2、客户端无法查询到完整的信息。
|
2月前
|
缓存 关系型数据库 MySQL
高并发架构系列:数据库主从同步的 3 种方案
本文详解高并发场景下数据库主从同步的三种解决方案:数据主从同步、数据库半同步复制、数据库中间件同步和缓存记录写key同步,旨在帮助解决数据一致性问题。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
高并发架构系列:数据库主从同步的 3 种方案
|
3月前
|
人工智能 Cloud Native 容灾
云数据库“再进化”,OB Cloud如何打造云时代的数据底座?
云数据库“再进化”,OB Cloud如何打造云时代的数据底座?
|
4月前
|
存储 SQL 关系型数据库
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
MySQL如何进行分库分表、数据迁移?从相关概念、使用场景、拆分方式、分表字段选择、数据一致性校验等角度阐述MySQL数据库的分库分表方案。
630 15
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案

热门文章

最新文章