, 如果按照之前 --generate的重新计算分配方式来做的话, 那么这个数据迁移量是非常大的; 很有可能大部分的副本都有变动(牵一发而动全身)
那么我们有没有什么方式能够尽量减少这种变动吗, 根据这个目标...,就可以得到我们想要的分配情况了
影响分配情况的几个因素有
BrokerList
分区数
副本数
起始随机数startIndex
起始随机nextReplicaShift
我们扩缩副本, 要变动副本数,...;
当然: AdminUtils.assignReplicasToBrokersRackUnaware 并不能完全满足我们需求,因为nextReplicaShift=3不是参入传入的,是在里面随机产生的...这种不是按照固定的规则来分配的,也不能按照上面的处理, 这种就需要重新完全分配了
所以总结起来,这种思路可行, 但没有必要; 我也是写到了这里,才觉得没有必要
扩缩副本 想法2
相比第一种想法, 需要考虑过多的情况...: 下面是从现有zk中获取的副本分配情况; 再做扩容副本的时候,传入的Broker列表的集合有{0,1,2,3,4,5}; 我想副本扩容到3个
"0":[2]
"1":[4]
"2":[0]
根据上面从