求大神解答 kafka 的副本存放机制?

今天了解 kafka副本存放机制时去网上搜了一下,发现有两个版本的答案 :


第一个版本是: 随机存储在集群上(类似于hdfs存储机制)。


第二个版本是: 第一个分区(编号为0)的第一个副本放置位置是随机从 brokerList 选择的,其他分区的第一个副本放置位置相对于第0个分区依次往后移。




例如:有5个 Broker,5个分区,假设第一个分区放在第四个 Broker 上,那么第二个分区将会放在第五个 Broker 上;第三个分区将会放在第一个 Broker 上;第四个分区将会放在第二个 Broker 上,第五个分区将会放在第三个 Broker 上。




自己想了一下,感觉kafka的副本存放机制应该不会这么严格,因为如果按照第二个版本来说的话假如我有3个副本,第一个副本存储在第1台服务器,那么第2个副本和第3个副本依次存储在 第2台服务器和第3台服务器,那么就存在一个问题,如果第2台服务器没有存储空间了咋办?求解!

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问