海量数据场景下OceanBase的分布式落地实践

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 海量数据场景下OceanBase的分布式落地实践 孟磊(亦年) yinian.ml@oceanbase.com 2022-6
2. OceanBase:源自蚂蚁 · 成于中国 · 服务世界 100 % 1 完全自主知识产权 350+ 核心专利 NO.1 全球唯一经过大规模金融场景 长时间考验的分布式数据库 数据库 TPC-C 测试排名世界第一 300w 10000+ 代码开源 opencore 人才认证 400+客户和合作伙伴 1.0 时代:坚定走向分布式架构 2010 2010 2013 2013 NO.2 数据库 TPC-H 30T 测试排名世界第二 2.0 时代:原生分布式数据库 2014 2014 2016 2016 2017 2017 2019 2019 3.0 时代:混合引擎、混合部署 2020 2020 2021 2021 产品立项 扩大使用范围 核心交易上线 全业务覆盖 多家金融客户 打破世界纪录 独立商业化 规模化推广 第一个用户 多个业务系统 支付宝交易 核心账务 互联网 金融级核心业务 核心交易支付 核心系统 Oracle 兼容 公有云服务 TPC-C 6088万 HTAP 引擎 TPC-C 7.07亿 TPC-H 1526万 社区版发布 试点海外客户
3. 蚂蚁集团的数据库发展 商业数据库时代 开源数据时代 自研数据库时代 Driver/Proxy middleware AZ1 AZ2 业务水平折分 分库分表 垂直扩展 买性能更好的主机/存储/ 数据库性能更好的机器 (硬件红利) 去单点 去热点 AZ3 原生分布式数 据库 高扩展 同一个库中不同业务折到 不同实例中,关键表做重 直/水平拆分 高性能 对业务透明,自动负载, 高扩展,高可用,高性 能,高压缩比
4. 产品架构 Paxos协议 + 无共享架构 + 分区级高可用 • 多副本: 一般部署为三/五个Zone,每个Zone由多个节点 (OBServer)组成 • 全对等节点: 每个节点均有自己的SQL引擎和存储引擎,各自 管理不同的数据分区,完全对等 • 无共享: 数据分布在各个节点上,不基于任何共享存储结构 (share-nothing) • 分区级可用性: 可靠性与扩展性的基本单元,自动流量路由、 负载均衡、故障转移 • 高可用 + 强一致: 多副本 + Paxos分布式选举协议的金融级 实现, 保证数据(日志)持久化到多数派节点
5. 1.部署架构-蚂蚁单元化 OB5-1 OB5-2 OB5 UID 99 分库分表 OB5-2 OB5-3 p1 p2 p3 p4 p1 p2 p3 p4 p1 p3 p3 p4 -OB的分区级打散做到应用无感扩容 -分区聚合最大化单机性能 OB分区
6. 1.部署架构-外部客户 两地三中心5副本 单元化 Region1 OBServer OBServer OBServer OBServer OBServer P1 P1 P1 P1 P1 P2 P2 P2 P2 P2 P3 P3 P3 P3 P3 P4 P4 P4 P4 P4 ZONE_3 ZONE_4 ZONE_5 ZONE_1 ZONE_2 IDC1 ✓ 多地多活(3地5中心,2地4中心等) ✓ 细粒度流量调拨 ✓ 城市级容灾 Region2 IDC2 ✓ 两地三中心5副本 ✓ 单机房故障RPO=0, RTO<30s ✓ 城市级容灾 IDC3
7. 1.部署架构-外部客户 同城/同机房3副本 两级房主备集群 Region1 Region1 Region2 OBServer OBServer OBServer OBServer OBServer OBServer OBServer P1 P1 P1 P1 P1 P1 P1 P2 P2 P2 P2 P2 P2 P2 P3 P3 P3 P3 P3 P3 P3 P4 P4 P4 P4 P4 P4 P4 ZONE_3 ZONE_1 ZONE_3 ZONE_5 ZONE_1 IDC1 ZONE_2 IDC2 IDC3 ✓ 机房级容灾 ✓ 单机房故障RPO=0, RTO<30s ✓ 日志副本仲裁 ZONE_2 IDC1 ✓ 物理主备集群 ✓ 最大保护/最大可用/最大性能 IDC2
8. 2.极致弹性-双十一大促-常态 图例说明: 地域 城市1 机房 机房1 Follower Leader ReadOnly 云机房 城市3 城市2 机房2 线下机房 LogOnly 机房3 机房4 机房5 机房6 机房7 机房8 UID 00 A0 A0 A0 UID 01 A1 A1 A1 UID 02 A2 A2 A2 UID 03 A3 A3 A3 机房9 机房2、3、5、7为云机房
9. 2.极致弹性-双十一大促-大促态 图例说明: 地域 机房 Follower Leader 城市1 城市1 机房1 机房3 A1 A1 机房5 A3 机房7 A0 A2 A3 机房6 机房8 机房9 A0 A1 UID 02 UID 03 机房4 A0 UID 00 UID 01 云机房 城市3 城市2 城市2 机房2 线下机房 LogOnly ReadOnly A2 A2 A3 机房2、3、5、7为云机房
10. 2.极致弹性-双十一大促-常态 图例说明: 地域 城市1 机房 机房1 Follower Leader ReadOnly 云机房 城市3 城市2 机房2 线下机房 LogOnly 机房3 机房4 机房5 机房6 机房7 机房8 UID 00 A0 A0 A0 UID 01 A1 A1 A1 UID 02 A2 A2 A2 UID 03 A3 A3 A3 机房9 机房2、3、5、7为云机房
11. 2.极致弹性-双十一大促-增加只读副本(业务无影响) 图例说明: Follower Leader 地域 城市1 机房 机房1 机房3 UID 00 UID 01 A1 A1 A1 机房4 A3 A3 A3 机房5 机房6 机房7 机房8 A0 A0 A0 A1 A1 A1 A2 UID 02 UID 03 云机房 城市3 城市2 机房2 线下机房 LogOnly ReadOnly A3 A2 A2 A3 A2 A2 机房9 A2 A3 机房2、3、5、7为云机房
12. 2.极致弹性-双十一大促-部分副本切换为Follower(业务无影响) 图例说明: Follower Leader 地域 城市1 机房 机房1 机房3 UID 00 UID 01 A1 A1 A1 机房4 A3 A3 A3 机房5 机房6 机房7 机房8 A0 A0 A0 A1 A1 A1 A2 UID 02 UID 03 云机房 城市3 城市2 机房2 线下机房 LogOnly ReadOnly A3 A2 A2 A3 A2 A2 机房9 A2 A3 机房2、3、5、7为云机房
13. 2.极致弹性-双十一大促-原有Follower切换为只读副本(分钟级跨城提 交) 图例说明: Follower Leader 地域 城市1 机房 机房1 机房3 UID 00 UID 01 A1 A1 A1 机房4 A3 A3 A3 机房5 机房6 机房7 机房8 A0 A0 A0 A1 A1 A1 A2 UID 02 UID 03 云机房 城市3 城市2 机房2 线下机房 LogOnly ReadOnly A3 A2 A2 A3 A2 A2 机房9 A2 A3 机房2、3、5、7为云机房
14. 2.极致弹性-双十一大促-Leader弹出 图例说明: Follower Leader 地域 城市1 机房 机房1 机房3 UID 00 UID 01 A1 A1 A1 机房4 A3 A3 A3 机房5 机房6 机房7 机房8 A0 A0 A0 A1 A1 A1 A2 UID 02 UID 03 云机房 城市3 城市2 机房2 线下机房 LogOnly ReadOnly A3 A2 A2 A3 A2 A2 机房9 A2 A3 机房2、3、5、7为云机房
15. 2.极致弹性-双十一大促-删除原有副本 图例说明: 地域 机房 Follower Leader 城市1 城市1 机房1 机房3 A1 A1 机房5 A3 机房7 A0 A2 A3 机房6 机房8 机房9 A0 A1 UID 02 UID 03 机房4 A0 UID 00 UID 01 云机房 城市3 城市2 城市2 机房2 线下机房 LogOnly ReadOnly A2 A2 A3 机房2、3、5、7为云机房
16. 2.极致弹性-外部客户
17. 2.极致弹性-副本类型的活用 Region1 Region1 Region2 OBServer OBServer OBServer OBServer OBServer OBServer OBServer P1 P1 P1 P1 P1 P1 P1 P2 P2 P2 P2 P2 P2 P2 P3 P3 P3 P3 P3 P3 P3 P4 P4 P4 P4 P4 P4 P4 ZONE_3 ZONE_1 ZONE_3 ZONE_4 IDC3 IDC1 ZONE_1 IDC1 ZONE_2 IDC2 日志副本仲裁 ZONE_2 IDC2 IDC3 只读副本读写分离
18. 3.资源调度-容器化 价 值 平铺 三层OB 调 度 IaaS 单机1%容灾 资源利用率 资源亲和 二层kipp 规则策略 调度dryrun 一层sigma 统一资源 资源生命周期 蚂蚁 金融云 无损压测 负载均衡 资源编排 Locality:分区&存储就近 调度管控 容量水位 资源plan 监控数据 资源标签 资源弹性 资源规划 阿里云 混合云 容器化、统一调度、混合云弹性架构、混合部署
19. 3.资源调度 OceanBase云管理平台(OCP) OceanBase集群1 zone1 zone2 OceanBase集群2 zone1 zone3 zone2 zone3 资源池1 资源池1 资源池1 资源池4 资源池4 资源池4 CPU 内存 CPU 内存 CPU 内存 CPU 内存 CPU 内存 CPU 内存 租户1 租户1 租户4 租户4 租户4 租户1 资源池2 资源池3 资源池2 资源池3 资源池2 资源池3 资源池4 资源池4 资源池4 CPU 内存 CPU 内存 CPU 内存 CPU 内存 CPU 内存 CPU 内存 CPU 内存 CPU 内存 CPU 内存 租户2 租户3 租户3 租户2 租户4 租户4 租户2 租户3 租户4 集群物理隔离,租户物理隔离,租户级别Leader优先级设置
20. 4.平台智能化 SQL自动 优化 SQL templeate 慢日志全量SQL流水 SQL 处理提取 全局分析 需优化的SQL集合 SQL Tuning Advisor 自动部署执行 量化跟踪 Continuous Adaptive self-tuning RT急聚上升 异常自动 恢复 全局智能 调度 活跃会话数上升 CPU利用率上升 IO负载急剧上升 慢SQL数量上升 资源预测 数据采集 监控数据 部署约束 某SQL大量全扫描 Summarize 全局最优调度 生成全局最优迁移调度计划 限流生效 实例负载下降 业务恢复 自动SQL限流 Action Planner 执行容器迁移 容器调度
21. 4.平台智能化 悬挂事务检测 SQL优化建议 可疑SQL/TopSQL/SlowSQL检测 执行计划/索引绑定 并行执行算子耗时分析 细粒度SQL熔断 死锁分析
22. 感谢聆听

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.137.1. UTC+08:00, 2024-11-16 20:24
浙ICP备14020137号-1 $Map of visitor$