第四章: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级

相关文章
|
1月前
|
SQL 监控 关系型数据库
MySQL主从复制:构建高可用架构
本文深入解析MySQL主从复制原理与实战配置,涵盖复制架构、监控管理、高可用设计及性能优化,助你构建企业级数据库高可用方案。
|
2月前
|
运维 监控 搜索推荐
MSE ZooKeeper:Flink 高可用架构的企业级选择
本文深入解析了 Apache Flink 架构中 ZooKeeper 的核心作用,包括 Leader 选举、Checkpoint 管理、作业协调及配置管理等关键功能,并结合金融风控与电商推荐等典型场景,分析了 ZooKeeper 在实际应用中的技术实现。
|
3月前
|
消息中间件 负载均衡 中间件
⚡ 构建真正的高性能即时通讯服务:基于 Netty 集群的架构设计与实现
本文介绍了如何基于 Netty 构建分布式即时通讯集群。随着用户量增长,单体架构面临性能瓶颈,文章对比了三种集群方案:Nginx 负载均衡、注册中心服务发现与基于 ZooKeeper 的消息路由架构。最终选择第三种方案,通过 ZooKeeper 实现服务注册发现与消息路由,并结合 RabbitMQ 支持跨服务器消息广播。文中还详细讲解了 ZooKeeper 搭建、Netty 集群改造、动态端口分配、服务注册、负载均衡及消息广播的实现,构建了一个高可用、可水平扩展的即时通讯系统。
262 0
|
5月前
|
负载均衡 算法 关系型数据库
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
本文聚焦 MySQL 集群架构中的负载均衡算法,阐述其重要性。详细介绍轮询、加权轮询、最少连接、加权最少连接、随机、源地址哈希等常用算法,分析各自优缺点及适用场景。并提供 Java 语言代码实现示例,助力直观理解。文章结构清晰,语言通俗易懂,对理解和应用负载均衡算法具有实用价值和参考价值。
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
|
5月前
|
存储 SQL 数据库
【赵渝强老师】OceanBase的部署架构
OceanBase数据库支持两种部署架构:无共享(Shared-Nothing,SN)模式和共享存储(Shared-Storage,SS)模式。SN模式下,各节点对等,具备高扩展性、可用性和性能,运行于普通PC服务器集群;SS模式采用存算分离架构,租户数据存储在共享对象存储上,本地缓存热点数据。两种模式均支持高可用与多副本一致性,适用于不同业务场景。
375 1
|
9天前
|
存储 监控 NoSQL
Redis高可用架构全解析:从主从复制到集群方案
Redis高可用确保服务持续稳定,避免单点故障导致数据丢失或业务中断。通过主从复制实现数据冗余,哨兵模式支持自动故障转移,Cluster集群则提供分布式数据分片与水平扩展,三者层层递进,保障读写分离、容灾切换与大规模数据存储,构建高性能、高可靠的Redis架构体系。
|
3月前
|
文字识别 运维 监控
架构解密|一步步打造高可用的 JOCR OCR 识别服务
本文深入解析了JOCR OCR识别服务的高可用架构设计,涵盖从用户上传、智能调度、核心识别到容错监控的完整链路,助力打造高性能、低成本的工业级OCR服务。
145 0
架构解密|一步步打造高可用的 JOCR OCR 识别服务
|
5月前
|
监控 Linux 应用服务中间件
Linux多节点多硬盘部署MinIO:分布式MinIO集群部署指南搭建高可用架构实践
通过以上步骤,已成功基于已有的 MinIO 服务,扩展为一个 MinIO 集群。该集群具有高可用性和容错性,适合生产环境使用。如果有任何问题,请检查日志或参考MinIO 官方文档。作者联系方式vx:2743642415。
1421 57
|
6月前
|
消息中间件 存储 设计模式
RocketMQ原理—5.高可用+高并发+高性能架构
本文主要从高可用架构、高并发架构、高性能架构三个方面来介绍RocketMQ的原理。
1558 21
RocketMQ原理—5.高可用+高并发+高性能架构
|
6月前
|
负载均衡 算法 关系型数据库
大数据新视界--大数据大厂之MySQL数据库课程设计:MySQL集群架构负载均衡故障排除与解决方案
本文深入探讨 MySQL 集群架构负载均衡的常见故障及排除方法。涵盖请求分配不均、节点无法响应、负载均衡器故障等现象,介绍多种负载均衡算法及故障排除步骤,包括检查负载均衡器状态、调整算法、诊断修复节点故障等。还阐述了预防措施与确保系统稳定性的方法,如定期监控维护、备份恢复策略、团队协作与知识管理等。为确保 MySQL 数据库系统高可用性提供全面指导。

推荐镜像

更多