暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
OceanBase OBCA(数据库认证专员)认证培训学习材料V1.02
3570
81页
113次
2020-10-22
免费下载
OceanBase OBCA(数据库认证专员)培训学习材料 正文
版权所有©北京奥星贝斯科技有限公司
49
5. OceanBase
集群技术架构
5.1.
Paxos 协议与负载均衡
讲解 Paxos 协议之前,我们先普及下数据分区与分区副本的概念。
当一个表很大的时候,可以水平拆分为若干个小的分区,存储在物理硬盘上。每个分区包
含表的若干行记录。根据数据到分区的映射关系不同,可以分为 hash 分区、list 分区(按列
表)range 分区(按范围)等。每一个分区,还可以用不同的维度再分为若干分区,叫做二级
分区。为了数据安全,每个分区的数据在物理上存储多份,每一份叫做分区的一个副本。每个
副本会存储在一个 Zone 中,且一个 Zone 只能有一个副本。
我们用图上的例子解释下,一个交易记录表,按照用户 ID 可以分为 3 个 hash 分区就是红
色、蓝色和黄色的三个分区,每一个 hash 分区再按照交易时间分为 4 个 range 分区,也就是
这个表格一共被分割成了 3*4=12 个分区。为了更高的可靠性。每个分区又会有 3 个副本(假
设这个集群有 3 个 Zone)每个副本会分布到不同的 zone 内,避免单个 zone 的故障影响业
务。
󲧢󱻝󱧚󱺣 󰪱󰙆󱃿󱶹󴒷󱵉󳅫󱨚󱺣󴷪󰤆󰮒
󱷣󱯡󰩹󰮭󰚁󰩹󰮭󰫢󱾟
󱛭󰖚󰗄󴀂󱜢󱃁󲸞󱶐󰞳󵞲󰮉󰙿󲏎󱘍󱩠󰦠󰗔󳩿󱘌󰗄󰦠󰫔󵞲󲍩󰗄󰦠󰫔󰪟󰯅󴀂󲸞
󳩿󱘌󳿦󴍊󱛯󱿓󱬈󳿦󱴊󱬈󰧊󰦠󰫔󲸞󱶺󱎞󰤍󳒕󰖧󰮦󵞲󰦠󰗔󰦠󰫔󵞲
󰦠󰫔󵞮󱪣󰦱󴀂󵞯󵞲󰦠󰫔󵞮󱪣󳪝󰺎󵞯󳋣
󲍩󰖚󰗄󰦠󰫔󵞲󴝲󰮉󰙿󲳂󰖧󰮦󲸞󳚎󱙀󰤧󰦠󰗔󳩿󱘌󰦠󰫔󵞲󰮅󰟴󰘦󳙁󰦠󰫔
󰦠󰫔󱷉󱴊󱬈󱽐󱼞󲸞󰾔󱻆󰫯󰣝󵞲󱷉󰚺󳙹󱴊󱬈󱘭󲸞󰦠󰫔󴀂󰻂󰦠
󱖝󱚩󳒕󳙹󰖤󲸞󱌸󲭊
󰜥󱄜󵞲󰘾󱶭󴍊󱛯󴀂󵞲󱪣󲤁󲳂󱧑󰦠󰗔󰗄󰦠󰫔󵞮󳘼󳱷󵙞󵞯󵞲󲍩󰗄󰖚󳙁󰦠󰫔󰤧󱪣󲤁󰘾󱶭󱶐󴶎󰦠󰗔󰗄󰦠󰫔
󲨃󲮠󰨉󱻆󵞮󰗕󵞯
󲨃󲮠󰨉󱻆󵞮󰙨󵞯
󲨃󲮠󰨉󱻆󵞮󰙨󵞯
󲨃󲮠󰨉󱻆󵞮󰙨󵞯
󲨃󲮠󰨉󱻆󵞮󰗕󵞯
󲨃󲮠󰨉󱻆󵞮󰙨󵞯



󲍩󰗄󰦠󰫔󲲹
󱦪󱂴󰗄󰨉󱻆
󰦠󰫔󲸞󰖧󰮦󰨉󱻆󱋲󰡂
󰻂󰖧󰮦󲸞󰤟
󲍩󰗄󴀂󱿖󰦬󰦠󰗔
󱂴󰗄󰦠󰫔
󰩹
󰮭
󰫢
󱾟
󰗔󰘠󱴊󱬈󱌣󰤂󰰦󱭪󰜵󵉲󰮉󲳂󲸞󱴊󱬈󱺧󰨻󵞲󲍩󰗄󰦠󰫔󲸞󱴊
󱬈󰻂󲨃󲮠󰖤󱋲󰡂󱂴󰚗󵞲󲍩󰖚󰚗󰮅󰟴󰦠󰫔󲸞󰖚󰗄󰨉󱻆
󰨉󱻆󱿓󱬈󴒹󴜗󰰦󲨓󱌴󲸞󳋰󲳿󵞲󲳋󳒕󳙹󳦄󰩂󴎝󱙀󰦠󱳽󰻂󱂴
󰗄󰖤󰨉󱻆󱳉󱪛󴝛󳆕󱂧󰧐󱀸󰦺󳐕󰼥󴜆󱫼󳋣
󳌻󲮠󱱧󰛶
OceanBase OBCA(数据库认证专员)培训学习材料 正文
版权所有©北京奥星贝斯科技有限公司
50
副本的内容不单单只有硬盘上的静态数据,副本还包括内存的增量数据以及记录事务的日
志。基于副本内容的不同,可以分为全能型副本、日志型副本、和只读型副本。
全能型副本有全量的数据,也参与投票,是最常用的副本。
日志型副本是只有日志,没有硬盘的静态数据和内存的增量数据,但它会参与投票,因为
它所消耗的物理资源(CPU、内存、硬盘)更少,它一般用于最后一个副本,可以有效降低成
本。但由于它没有基线数据,所以它不会变成主副本为业务提供服务。
只读型副本有全量的数据,但它只做为一个 listener,实时追赶 Paxos 成员的日志,并在
本地回放。这种副本可以在业务对读取数据的一致性要求不高的时候提供只读服务。因其不加
入 Paxos 成员组,因此不会造成投票成员增加导致事务提交延时的增加。
󲧢󱻝󱧚󱺣󰪱󰙆󱃿󱶹󴒷󱵉󳅫󱨚󱺣󴷪󰤆󰮒
󱶢󱭴󰙼󳉀󰫢󱾟󲝔󴘦󰚀󰱿󰚍󰬔󳓮󰿾󲻷󴽳󲒵
根据存储数据种类的不同副本有几种不同的类型以支持不同业务在在数据安全性能伸缩性可用性
成本等之间进行取舍折中。
全能型副本:
也就是目前支持的普通副本拥有事务日志MemTableSSTable等全部完整的数据和
功能。它可以随时快速切换为leader对外提供服务。
日志型副本:
只包含日志的副本没有MemTableSSTable它参与日志投票并对外提供日志服务
可以参与其他副本的恢复但自己不能变为主提供数据库服务因为日志型副本所消耗的物理资源
CPU、内存、磁盘)更少,它可以有效降低最后一副本机器的成本,进而降低整个集群的总体成本。
只读型副本:
包含完整的日志MemTableSSTable等,但是它的日志比较特殊它不作为paxos成员
参与日志的投票而是作为一个观察者实时追赶paxos成员的日志并在本地回放这种副本可以在业
务对读取数据的一致性要求不高的时候提供只读服务因其不加入paxos成员组又不会造成投票成员
增加导致事务提交延时的增加
󰨉
󱻆
󱼞
󱦪
󳁛󲹲󰖤󲸞󴻳󱞛󱴊󱬈
󵞮󵞯
󱋲󰡂󰻂󰤟󱋲󲸞󱀸
󴥩󱴊󱬈
󵞮󵞯
󴍊󱛯󰘥󰨻
󲸞󱵿󱝱
类型
Log MemTable SSTable
数据安全
全能型 有,参与投票
日志型 有,参与投票
只读型 有,但不属于paxos组,只是
listener
一个分区在一个
zone
中最多有
一个全功能或日志型副本
只读型副本在同一个
zone
可以
有多个
of 81
免费下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜