第七节:X-Paxos 三副本与高可用(三)|学习笔记

简介: 快速学习第七节:X-Paxos 三副本与高可用(三)

开发者学堂课程【PolarDB-X 开源系列课程:第七节:X-Paxos 三副本与高可用(三)】学习笔记与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/1032/detail/15168


第七节:X-Paxos 三副本与高可用(三)

五、解答问题

1.三个节点数据如何保证同步?上文提到的图中给出了答案。

image.png

2.这是把 x-paxos 的一致性协议内置到集群里面去,不需要外部的reprepare 组建

3.Paxos 上监控,plogger 传输数据还是 plodder 同步这句话正确吗?

Binlog 是载体也就是说传输的日志就是 Binlog。

4. x-paxos 怎么跟 inner DB 引擎配合?

上文提到的图中给出了答案。

image.png

5. 副本数量有上限吗?

正常在生产环境中基本就是同城三副本模式,如果要求更高一点可以用跨五副本这种模式

6. DN 上的 Binlog 会落盘吗?

会落盘Binlog 的落盘很重要。

7. 为什么要使用强力的模式,Paxos 是选如何确保新slave追完了 Binlog?

时是根据 Binlog 里的日志来进行选,选主不关心其是否追完了 Binlog,拥有集群中达到多数派最新日志的节点会成为 leader,但可能其 Binlog 还没有追完。不会出现两个leader。

8. 不使用 logger 节点的话,数据的可用性是更高?

会更加高,用logger 其实是折中的选择,因为 logger 节点如果换成普通 follow,它就增加一份数据存储。这个实验大概分两部分,第一部分是先按之前步骤构建一个 PolarDB-X 的集群,然后第二步是验证一下,看一下高可用是怎么样的高可用分两步一种是随机的杀掉一个 CN 节点,或者随机杀掉一个 DN 节点,然后观察集群的服务是怎样变化的

9. 不追完能起来服务吗?

不一定,因为如果在该类引擎上自己搭建环境的话,有时候发现一个节点起来之后,可能登录不进去,是因为这个节点它在重启的时候,在客户端能够登录进去之前,首先要接入到集群里去,是为了确定自己的角色,是为了和其他集群中其他节点协商当前最新的日志是哪个正常肯定能进去,这里提出如果整个集群都不健康,然后这个节点起来后,是没有形成多数派的,没有新的 leader 选出来,这时集群确实不能提供服务。

其实这个多节点和原来的半同步有很大的区别,就是这个半同步在slave 异常时会退化为异步,其实它就是为了保证可用性,是优先选择可用性,但牺牲了数据一致性。

三节点这种模式,就是要保证强一致,如果大多数节点都不健康,那系统就是不能使

10. 复制延迟导致的系统不可用不是因为数据一次性问题

不是的,是现在 Binlog 传输,在一次性协议的层面其实传输的是 Binlog,如果它的复制有延迟,如果一个 follow 节点被选为新它上面的 Binlog 日志都还没有追全,也就是说它的日志虽然是最新的,但它系统数据状态并不是最新的,这个时候并不能对外提供服务。这不是 CP 层面的东西,这就像主备那种模式,比如主备的 master挂了 slave不能立刻就能提供服务其 Binlog 没有全之前,也是不能使用的。

三节点这种模式,数据以及日志一定能够达到 RPO = 0

三节点之间的并到的同步模式还是义务模式

同步模式同步模式其实关于三节点的实现,其他很多产品都有这种一次性协议的事项,里面有几个概念

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
8月前
|
消息中间件 算法 容灾
7年工作经验面试被问:谈谈你对Kafka副本Leader选举原理的理解?
一位7年工作经验的小伙伴,面试被问到这样一道题,说:”谈谈你对Kafka副本Leader选举原理的理解“。当时,他想,这Kafka用的不就是Zookeeper 的选举吗?难道Kafka又自己搞了一套。没错,这回Kafka自己造了一个轮子。 那么今天,我给大家来聊一聊我对Kafka副本Leader选举原理的理解。
65 1
|
9月前
《从Paxos到ZooKeeper分布式一致性原理与实践》学习知识导图
《从Paxos到ZooKeeper分布式一致性原理与实践》学习知识导图
55 0
|
消息中间件 缓存 Kafka
字节终面:说说Kakfa副本状态机的实现原理?
ReplicaStateMachine是内部组件,一般用户感觉不到存在,但搞懂它,对从根本定位一些数据不一致问题大有裨益。 部署3-Broker(A、B和C)Kafka集群,版本2.0.0。在这3个Broker上创建一个单分区、双副本主题。
58 0
字节终面:说说Kakfa副本状态机的实现原理?
|
存储 算法 NoSQL
深入浅出理解分布式一致性Paxos算法
深入浅出理解分布式一致性Paxos算法
905 0
深入浅出理解分布式一致性Paxos算法
|
存储 缓存 运维
第七节:X-Paxos 三副本与高可用(一)|学习笔记
快速学习第七节:X-Paxos 三副本与高可用(一)
260 0
第七节:X-Paxos 三副本与高可用(一)|学习笔记
|
存储 容灾 关系型数据库
第七节:X-Paxos 三副本与高可用(二)|学习笔记
快速学习第七节:X-Paxos 三副本与高可用(二)
76 0
第七节:X-Paxos 三副本与高可用(二)|学习笔记
|
存储 缓存 AliSQL
第七节:X-Paxos 三副本与高可用(四)|学习笔记
快速学习第七节:X-Paxos 三副本与高可用(四)
90 0
第七节:X-Paxos 三副本与高可用(四)|学习笔记
|
SQL 运维 NoSQL
复制集使用及原理介绍(二)|学习笔记
快速学习复制集使用及原理介绍
219 0
复制集使用及原理介绍(二)|学习笔记
|
运维 NoSQL 数据可视化
复制集使用及原理介绍(一)|学习笔记
快速学习复制集使用及原理介绍
121 0
复制集使用及原理介绍(一)|学习笔记
|
存储 负载均衡 NoSQL
分片集群使用及原理介绍(一)|学习笔记
快速学习分片集群使用及原理介绍
572 0
分片集群使用及原理介绍(一)|学习笔记