暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

OceanBase整体架构

Ty3306 2023-01-23
576

整体架构

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3qLZ8Chw-1670410851150)(https://images.5ycode.com/images/OceanBase%E6%9E%B6%E6%9E%84%E5%9B%BE.jpeg-1)]

OBProxy:
为应用程序屏蔽了OB内部的分区和副本分布等细节;
应用程序发起请求后,由OBProxy转发SQL请求到合适的OBServer节点;
OBProxy是无状态的服务
多个OBProxy节点通过负载均衡对应用提供统一的网络地址;
OBServer:
OB的一个集群由若干节点组成,这些节点分属于若干个可用区(zone);
zone是一个逻辑概念,即可以表示集群内具有相似硬件属性的一组节点(可以是一个城市,可以是一个机房,可以是一个机柜,也可以是一台服务器)
一个OB集群内,可以创建多个隔离的数据库“实例”(租户),每个租户是一个独立的数据库,租户可以选择MySQL模式或Oracle模式;
一个observer内,可以有多个属于不同租户的虚拟容器叫资源单元(unit),每个资源单元的资源都是独立的;
一个租户在多个节点上的资源单元(unit)组成一个资源池;
OB中,一个表的数据可以按照一定的规则水平拆分为多个分片,每个分片叫做一个表分区,一行数据只能属于一个分区;一个表的分区可以分布在一个可用区内的多个节点上,每个物理分区有一个用于存储数据的存储层对象tablet,用于存储有序的数据;
tablet中的数据修改时,会记录redo到tablet对应的日志流里,每个日知录服务了其他所在节点上的多个tablet,为了容灾,每个日志流及tablet有多个副本;副本分散在不同的可用区里;有且只有一个副本接收修改操作,通过Multi-Paxos分布式共识实现副本之间的强一致性;
我们类比一下

传统数据库(MySQL) OceanBase数据库
物理机 集群
固定配置的虚拟机 资源单元(固定配置)
集群 资源池
MySQL实例 租户(MySQL兼容或Oracle兼容)
分区表(单节点) 表分区(多节点,多分区)
binlog redo->日志流
客户案例

携程旅行:没说具体业务,只是探索通过 OceanBase 社区版方案来替换原有 MySQL 方案;读性能提升2倍,写性能提升3倍;,节省2/3的存储;
快手:也没说具体业务,也是解决线上MySQL分片过多带来的高运维成本;数据同步延迟减少3/4,存储成本降低至1/4;
翼支付:消息中心,存储从72T–>17T;
企业版
OceanBase 企业版(OceanBase Database)是一款完全自研的企业级原生分布式数据库,在普通硬件上实现金融级高可用,首创“三地五中心”城市级故障自动无损容灾新标准,刷新 TPC-C 标准测试,单集群规模超过 1500 节点,具有云原生、强一致性、高度兼容 Oracle/MySQL 等特性。

为什么选择企业版

高可用:
三地五中心
金融无损
RPO=0,RTO<30S
数据零丢失
高兼容
高度兼容Oracle和MySQL
水平扩展
透明水平扩展
快速的扩缩容
准内存处理架构实现高性能
支持集群节点超千
单集群最大数据量超3PB(真实业务)
最大单表行数达万亿级(真实业务)
低成本
基于LSM-Tree的高压缩引擎
存储成本降低70%~90%;
支持多租户
同集群可为多个独立业务提供服务(资源隔离)
实时HTAP
”同一份数据,同一个引擎“,同时支持在线实时交易和实时分析;
”一份数据“的多副本可以存储成多种形态,用于不同工作负载,保证数据一致性;
安全可靠
代码级可控
自研分布式一体化架构
大规模金融核心场景9年可靠性验证;
数据存储和通信全链路透明加密




原文链接:https://blog.csdn.net/f80407515/article/details/128225287

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论