第四章:OceanBase集群技术架构(数据可靠及高可用)

简介: 第四章:OceanBase集群技术架构(数据可靠及高可用)

灾难恢复能力等级

系统发生故障时,业务如何考察系统的“高可用”能力

RTO(Recovery Time Objective)恢复时间目标:在故障或灾难发生之后,数据库停止工作的最高可承受时间,这是一个最大可容忍时限,必须在此时限内恢复数据。


RPO(Recovery Point Object)恢复点目标:这是一个过去的时间点,当灾难或紧急事件发生时,数据可以恢复到的时间点,是业务系统所能容忍的数据丢失量。

灾难恢复能力等级 RTO(恢复时间目标) RPO(恢复点目标)
1 2天以上 1至7天
2 24小时以上 1天至7天
3 12小时以上 数小时至1天
4 数小时至2天 数小时至1天
5 数分钟至2天 0至30分钟
6 数分钟 0

OceanBase RPO=0 RTO<30秒,意味着当少数派故障时,OceanBase能够在30秒内恢复业务,且不会丢失任何数据。

OceanBase基于通用PC服务器提供高可用性


OceanBase依靠自身的软件能力,可以在易损的硬件基础上提供更高的可用性。

OB Server进程异常后的处理策略

如果OB Server进程异常终止,通过server_permanent_offline_time参数的值来判定是否进行“临时线下”处理。

observer进程异常终止的持续时长<server_permanent_offline_time

由于进程异常终止时间不长,异常进程可能很快就可以恢复,因此OceanBase暂时不做处理,以避免频繁的数据迁移。

此时P5-P8只有两份副本,虽然依然满足多数派,可以保证RPO=0,但存在风险(如果再有服务器故障)

observer进程异常终止的持续时长>server_permanent_offline_time

OceanBase会将机器做“临时下线”处理,从其它zone的主副本中,将缺失的数据复制到本zone内剩余的机器上(需要有足够的资源),以维持副本个数。


异常终止的observer进程恢复后会自动加入集群,如果已经做过“临时下线”处理,需要从本zone内其它机器上(或者其他zone内)将unit迁移过来。


传统数据库与OceanBase高可用方案对比

 OceanBase容灾:同城三机房

同城3个机房组成一个集群(每个机房是一个Zone),机房间延迟一般在0.5~2ms之间

机房级灾难时,剩余的两份副本依然是多数派,依然可以同步Redo-Log日志,保证RPO=0

但无法应对城市级的灾难

OceanBase容灾:三地五中心副本


三个城市,组成一个5副本的集群

任何一个IDC或者城市的故障,依然构成多数派,可以确保RPO=0

由于3份以上副本才能构成多数派,但每个城市最多只有2份副本,为降低时延,城市1和城市2应该离的比较近,以降低同步Redo-Log的时延

为降低成本,城市3可以只部署日志型副本(只有日志)

OceanBase容灾:同城两机房“主-备”方案

同城三机房或者三地五中心的方案对基础设施要求太高。为了利旧企业现网的基础设施,OceanBase提供了同城 两机房和两地三中心两种方案

 

每个城市都部署一个OceanBase集群,一个为主集群一个为备集群;每个集群有自己单独的 Paxos group,多副本一致性


• “集群间”通过Redo-log做数据同步,形式上 类似传统数据库“主从复制”模式;有“异步同 步”和“强同步”两种数据同步模式,类似ODD 中的“最大性能”和“最大保护”两种模式


OceanBase容灾:两地三中心“主-备”方案

   

• 主城市与备城市组成一个5副本的集群。任何IDC的故障,最多损失2份副本,剩余的3份副本依然满足多数派

• 备用城市建设一个独立的3副本集群,做为一个备集群,从主集群”异步同步“或者”强同步“到备集群

• 一旦主城市遭遇灾难,备城市可以接管业务

小结:Paxos协议的工业性实现保障数据可靠性及服务可用性

严格的Paxos协议:多副本(ZONE)一致性协议,一主多从。“多数派”强一致

特性优势:多数派数据强一致性,可容忍任意少数派故障

leader故障时服务自动切换,无需人工干预

可灵活应对单机故障、机房级灾难、城市级灾难、实现全方位容灾。

技术价值:任意少数派故障保证RPO=0;高负载压测亦不降级

leader故障服务自动恢复,RTO<30秒

RTO,RPO显著优于传统主备数据库

可达到国际灾难恢复能力6级

相关文章
|
2月前
|
存储 SQL 关系型数据库
ClickHouse(02)ClickHouse架构设计介绍概述与ClickHouse数据分片设计
ClickHouse的核心架构包括执行过程和数据存储两部分。执行过程涉及Parser与Interpreter解析SQL,通过Column、DataType、Block、Functions和Storage模块处理数据。Column是内存中列的表示,Field处理单个值,DataType负责序列化和反序列化,Block是内存中表的子集,Block Streams处理数据流。Storage代表表,使用不同的引擎如StorageMergeTree。数据存储基于分片和副本,1个分片由多个副本组成,每个节点只能拥有1个分片。
98 0
ClickHouse(02)ClickHouse架构设计介绍概述与ClickHouse数据分片设计
|
17天前
|
关系型数据库 Apache 流计算
手把手教你实现 OceanBase 数据到阿里云数据库 SelectDB 内核版 Apache Doris 的便捷迁移|实用指南
本文介绍了如何将数据从 OceanBase 迁移到阿里云数据库 SelectDB 内核版 Apache Doris。提供 3 种数据同步方法 1. 使用 DataX,下载 DataX 并编写配置文件,通过 OceanBaseReader 和 DorisWriter 进行数据迁移。 2. 利用 Apache Doris 的 Catalog功 能,将 OceanBase 表映射到 Doris 并插入数据。 3. 通过Flink CDC,设置 OceanBase 环境,配置 Flink 连接器,实现实时数据同步。
手把手教你实现 OceanBase 数据到阿里云数据库 SelectDB 内核版 Apache Doris 的便捷迁移|实用指南
|
1天前
|
运维 负载均衡 关系型数据库
MySQL高可用解决方案演进:从主从复制到InnoDB Cluster架构
MySQL高可用解决方案演进:从主从复制到InnoDB Cluster架构
|
3天前
|
关系型数据库 MySQL 数据库
MySQL集群 双主架构(配置命令)
MySQL集群 双主架构(配置命令)
|
9天前
|
分布式计算 DataWorks 数据库
DataWorks操作报错合集之DataWorks使用数据集成整库全增量同步oceanbase数据到odps的时候,遇到报错,该怎么处理
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
22 0
|
22天前
|
存储 负载均衡 容灾
架构设计|基于 raft-listener 实现实时同步的主备集群
本文介绍如何从数据库内核角度建立一套实时同步的主备集群,确保线上业务的高可用性和可靠性。本系统采用双 AZ 主备容灾机制,并要求数据与 schema 实时同步,同步时延平均在 1 秒内,p99 在 2 秒内。此外,系统支持高效的自动或手动主备切换,并能在切换过程中恢复丢失数据。
24 0
|
27天前
|
存储 BI 数据库
数据洞见未来——瓴羊Quick BI荣获邀请,将亮相OceanBase开发者大会
数据洞见未来——瓴羊Quick BI荣获邀请,将亮相OceanBase开发者大会
22 0
|
2月前
|
监控 Java 数据库
揭秘Java性能调优的层次 | 综合多方向提升应用程序性能与系统高可用的关键(架构层次规划)
揭秘Java性能调优的层次 | 综合多方向提升应用程序性能与系统高可用的关键(架构层次规划)
45 0
|
2月前
|
存储 负载均衡 NoSQL
【分布式技术架构】「Tomcat技术专题」 探索Tomcat集群架构原理和开发分析指南
【分布式技术架构】「Tomcat技术专题」 探索Tomcat集群架构原理和开发分析指南
51 1
|
2月前
|
SQL 关系型数据库 MySQL
OBCP实践 - 迁移 MySQL 数据到 OceanBase 集群
OBCP实践 - 迁移MySQL数据到OceanBase集群,这是一个涉及到将现有MySQL数据库的数据和表结构迁移到OceanBase分布式数据库集群的实际操作过程。OceanBase是一款高度兼容MySQL协议的分布式数据库产品,支持在线平滑迁移,以便企业用户可以从传统的MySQL数据库平滑迁移到OceanBase,以实现更高的可用性、扩展性和性能。
48 0

热门文章

最新文章