数据一致性

Source

在讨论数据一致性的时候,我们一定要知道数据对象是什么,是集群的元数据还是具体的业务数据

数据一致性指的是 就集群管理性质的元数据的一致性, 比如topic的主partition 在哪个集群(用于业务数据写入), 和业务数据是分开的; 主要用于集群的管理; 一般使用raft协议保证,

可以认为强一致的从机器平时没用,唯一的用处就是宕机时,选择主机器顶上

Raft 的读写策略

强调 Leader选举,并且“单点” 写Leader
在这里插入图片描述

在这里插入图片描述

业务数据的一致性, 也可能强一致,也可能弱一致,看业务取舍

kafka

kafka 的controller 和broker 是两个进程, controler主要关 topic怎么分区,那个是主分区,那个是主Broker等 这些元是数据

broker 主要管partition, 管业务数据的写入和读取