Open dang-stripe opened 2 weeks ago
The behavior without explicit partition assignment is expected because partitions are always assigned round-robin. When partition is explicitly assigned, we should try to minimize the movement. I'd expect 1/6 of the partitions being moved. @dang-stripe Can you give more details on the instance partitions before and after the reassignment when partition is explicitly assigned?
cc @jackjlli
Instance partitions with numPartitions=0
and numInstancesPerPartition=0
:
"partitionToInstancesMap": {
"0_0": [
"testinstance-uswest2b-4",
"testinstance-uswest2b-5",
"testinstance-uswest2b-6",
"testinstance-uswest2b-1",
"testinstance-uswest2b-2",
"testinstance-uswest2b-3",
// 7 was added when rebalancing for the scale up
"testinstance-uswest2b-7"
],
"0_1": [
"testinstance-uswest2a-4",
"testinstance-uswest2a-5",
"testinstance-uswest2a-6",
"testinstance-uswest2a-1",
"testinstance-uswest2a-2",
"testinstance-uswest2a-3",
// 7 was added when rebalancing for the scale up
"testinstance-uswest2a-7"
]
}
Instance partitions with numPartitions=180
and numInstancesPerPartition=1
with 6 hosts per pool
"partitionToInstancesMap": {
"0_0": ["testinstance-uswest2b-4"],
"0_1": ["testinstance-uswest2a-4"],
"100_0": ["testinstance-uswest2b-2"],
"100_1": ["testinstance-uswest2a-2"],
"101_0": ["testinstance-uswest2b-3"],
"101_1": ["testinstance-uswest2a-3"],
"102_0": ["testinstance-uswest2b-4"],
"102_1": ["testinstance-uswest2a-4"],
"103_0": ["testinstance-uswest2b-5"],
"103_1": ["testinstance-uswest2a-5"],
"104_0": ["testinstance-uswest2b-6"],
"104_1": ["testinstance-uswest2a-6"],
"105_0": ["testinstance-uswest2b-1"],
"105_1": ["testinstance-uswest2a-1"],
"106_0": ["testinstance-uswest2b-2"],
"106_1": ["testinstance-uswest2a-2"],
"107_0": ["testinstance-uswest2b-3"],
"107_1": ["testinstance-uswest2a-3"],
"108_0": ["testinstance-uswest2b-4"],
"108_1": ["testinstance-uswest2a-4"],
"109_0": ["testinstance-uswest2b-5"],
"109_1": ["testinstance-uswest2a-5"],
"10_0": ["testinstance-uswest2b-2"],
"10_1": ["testinstance-uswest2a-2"],
"110_0": ["testinstance-uswest2b-6"],
"110_1": ["testinstance-uswest2a-6"],
"111_0": ["testinstance-uswest2b-1"],
"111_1": ["testinstance-uswest2a-1"],
"112_0": ["testinstance-uswest2b-2"],
"112_1": ["testinstance-uswest2a-2"],
"113_0": ["testinstance-uswest2b-3"],
"113_1": ["testinstance-uswest2a-3"],
"114_0": ["testinstance-uswest2b-4"],
"114_1": ["testinstance-uswest2a-4"],
"115_0": ["testinstance-uswest2b-5"],
"115_1": ["testinstance-uswest2a-5"],
"116_0": ["testinstance-uswest2b-6"],
"116_1": ["testinstance-uswest2a-6"],
"117_0": ["testinstance-uswest2b-1"],
"117_1": ["testinstance-uswest2a-1"],
"118_0": ["testinstance-uswest2b-2"],
"118_1": ["testinstance-uswest2a-2"],
"119_0": ["testinstance-uswest2b-3"],
"119_1": ["testinstance-uswest2a-3"],
"11_0": ["testinstance-uswest2b-3"],
"11_1": ["testinstance-uswest2a-3"],
"120_0": ["testinstance-uswest2b-4"],
"120_1": ["testinstance-uswest2a-4"],
"121_0": ["testinstance-uswest2b-5"],
"121_1": ["testinstance-uswest2a-5"],
"122_0": ["testinstance-uswest2b-6"],
"122_1": ["testinstance-uswest2a-6"],
"123_0": ["testinstance-uswest2b-1"],
"123_1": ["testinstance-uswest2a-1"],
"124_0": ["testinstance-uswest2b-2"],
"124_1": ["testinstance-uswest2a-2"],
"125_0": ["testinstance-uswest2b-3"],
"125_1": ["testinstance-uswest2a-3"],
"126_0": ["testinstance-uswest2b-4"],
"126_1": ["testinstance-uswest2a-4"],
"127_0": ["testinstance-uswest2b-5"],
"127_1": ["testinstance-uswest2a-5"],
"128_0": ["testinstance-uswest2b-6"],
"128_1": ["testinstance-uswest2a-6"],
"129_0": ["testinstance-uswest2b-1"],
"129_1": ["testinstance-uswest2a-1"],
"12_0": ["testinstance-uswest2b-4"],
"12_1": ["testinstance-uswest2a-4"],
"130_0": ["testinstance-uswest2b-2"],
"130_1": ["testinstance-uswest2a-2"],
"131_0": ["testinstance-uswest2b-3"],
"131_1": ["testinstance-uswest2a-3"],
"132_0": ["testinstance-uswest2b-4"],
"132_1": ["testinstance-uswest2a-4"],
"133_0": ["testinstance-uswest2b-5"],
"133_1": ["testinstance-uswest2a-5"],
"134_0": ["testinstance-uswest2b-6"],
"134_1": ["testinstance-uswest2a-6"],
"135_0": ["testinstance-uswest2b-1"],
"135_1": ["testinstance-uswest2a-1"],
"136_0": ["testinstance-uswest2b-2"],
"136_1": ["testinstance-uswest2a-2"],
"137_0": ["testinstance-uswest2b-3"],
"137_1": ["testinstance-uswest2a-3"],
"138_0": ["testinstance-uswest2b-4"],
"138_1": ["testinstance-uswest2a-4"],
"139_0": ["testinstance-uswest2b-5"],
"139_1": ["testinstance-uswest2a-5"],
"13_0": ["testinstance-uswest2b-5"],
"13_1": ["testinstance-uswest2a-5"],
"140_0": ["testinstance-uswest2b-6"],
"140_1": ["testinstance-uswest2a-6"],
"141_0": ["testinstance-uswest2b-1"],
"141_1": ["testinstance-uswest2a-1"],
"142_0": ["testinstance-uswest2b-2"],
"142_1": ["testinstance-uswest2a-2"],
"143_0": ["testinstance-uswest2b-3"],
"143_1": ["testinstance-uswest2a-3"],
"144_0": ["testinstance-uswest2b-4"],
"144_1": ["testinstance-uswest2a-4"],
"145_0": ["testinstance-uswest2b-5"],
"145_1": ["testinstance-uswest2a-5"],
"146_0": ["testinstance-uswest2b-6"],
"146_1": ["testinstance-uswest2a-6"],
"147_0": ["testinstance-uswest2b-1"],
"147_1": ["testinstance-uswest2a-1"],
"148_0": ["testinstance-uswest2b-2"],
"148_1": ["testinstance-uswest2a-2"],
"149_0": ["testinstance-uswest2b-3"],
"149_1": ["testinstance-uswest2a-3"],
"14_0": ["testinstance-uswest2b-6"],
"14_1": ["testinstance-uswest2a-6"],
"150_0": ["testinstance-uswest2b-4"],
"150_1": ["testinstance-uswest2a-4"],
"151_0": ["testinstance-uswest2b-5"],
"151_1": ["testinstance-uswest2a-5"],
"152_0": ["testinstance-uswest2b-6"],
"152_1": ["testinstance-uswest2a-6"],
"153_0": ["testinstance-uswest2b-1"],
"153_1": ["testinstance-uswest2a-1"],
"154_0": ["testinstance-uswest2b-2"],
"154_1": ["testinstance-uswest2a-2"],
"155_0": ["testinstance-uswest2b-3"],
"155_1": ["testinstance-uswest2a-3"],
"156_0": ["testinstance-uswest2b-4"],
"156_1": ["testinstance-uswest2a-4"],
"157_0": ["testinstance-uswest2b-5"],
"157_1": ["testinstance-uswest2a-5"],
"158_0": ["testinstance-uswest2b-6"],
"158_1": ["testinstance-uswest2a-6"],
"159_0": ["testinstance-uswest2b-1"],
"159_1": ["testinstance-uswest2a-1"],
"15_0": ["testinstance-uswest2b-1"],
"15_1": ["testinstance-uswest2a-1"],
"160_0": ["testinstance-uswest2b-2"],
"160_1": ["testinstance-uswest2a-2"],
"161_0": ["testinstance-uswest2b-3"],
"161_1": ["testinstance-uswest2a-3"],
"162_0": ["testinstance-uswest2b-4"],
"162_1": ["testinstance-uswest2a-4"],
"163_0": ["testinstance-uswest2b-5"],
"163_1": ["testinstance-uswest2a-5"],
"164_0": ["testinstance-uswest2b-6"],
"164_1": ["testinstance-uswest2a-6"],
"165_0": ["testinstance-uswest2b-1"],
"165_1": ["testinstance-uswest2a-1"],
"166_0": ["testinstance-uswest2b-2"],
"166_1": ["testinstance-uswest2a-2"],
"167_0": ["testinstance-uswest2b-3"],
"167_1": ["testinstance-uswest2a-3"],
"168_0": ["testinstance-uswest2b-4"],
"168_1": ["testinstance-uswest2a-4"],
"169_0": ["testinstance-uswest2b-5"],
"169_1": ["testinstance-uswest2a-5"],
"16_0": ["testinstance-uswest2b-2"],
"16_1": ["testinstance-uswest2a-2"],
"170_0": ["testinstance-uswest2b-6"],
"170_1": ["testinstance-uswest2a-6"],
"171_0": ["testinstance-uswest2b-1"],
"171_1": ["testinstance-uswest2a-1"],
"172_0": ["testinstance-uswest2b-2"],
"172_1": ["testinstance-uswest2a-2"],
"173_0": ["testinstance-uswest2b-3"],
"173_1": ["testinstance-uswest2a-3"],
"174_0": ["testinstance-uswest2b-4"],
"174_1": ["testinstance-uswest2a-4"],
"175_0": ["testinstance-uswest2b-5"],
"175_1": ["testinstance-uswest2a-5"],
"176_0": ["testinstance-uswest2b-6"],
"176_1": ["testinstance-uswest2a-6"],
"177_0": ["testinstance-uswest2b-1"],
"177_1": ["testinstance-uswest2a-1"],
"178_0": ["testinstance-uswest2b-2"],
"178_1": ["testinstance-uswest2a-2"],
"179_0": ["testinstance-uswest2b-3"],
"179_1": ["testinstance-uswest2a-3"],
"17_0": ["testinstance-uswest2b-3"],
"17_1": ["testinstance-uswest2a-3"],
"18_0": ["testinstance-uswest2b-4"],
"18_1": ["testinstance-uswest2a-4"],
"19_0": ["testinstance-uswest2b-5"],
"19_1": ["testinstance-uswest2a-5"],
"1_0": ["testinstance-uswest2b-5"],
"1_1": ["testinstance-uswest2a-5"],
"20_0": ["testinstance-uswest2b-6"],
"20_1": ["testinstance-uswest2a-6"],
"21_0": ["testinstance-uswest2b-1"],
"21_1": ["testinstance-uswest2a-1"],
"22_0": ["testinstance-uswest2b-2"],
"22_1": ["testinstance-uswest2a-2"],
"23_0": ["testinstance-uswest2b-3"],
"23_1": ["testinstance-uswest2a-3"],
"24_0": ["testinstance-uswest2b-4"],
"24_1": ["testinstance-uswest2a-4"],
"25_0": ["testinstance-uswest2b-5"],
"25_1": ["testinstance-uswest2a-5"],
"26_0": ["testinstance-uswest2b-6"],
"26_1": ["testinstance-uswest2a-6"],
"27_0": ["testinstance-uswest2b-1"],
"27_1": ["testinstance-uswest2a-1"],
"28_0": ["testinstance-uswest2b-2"],
"28_1": ["testinstance-uswest2a-2"],
"29_0": ["testinstance-uswest2b-3"],
"29_1": ["testinstance-uswest2a-3"],
"2_0": ["testinstance-uswest2b-6"],
"2_1": ["testinstance-uswest2a-6"],
"30_0": ["testinstance-uswest2b-4"],
"30_1": ["testinstance-uswest2a-4"],
"31_0": ["testinstance-uswest2b-5"],
"31_1": ["testinstance-uswest2a-5"],
"32_0": ["testinstance-uswest2b-6"],
"32_1": ["testinstance-uswest2a-6"],
"33_0": ["testinstance-uswest2b-1"],
"33_1": ["testinstance-uswest2a-1"],
"34_0": ["testinstance-uswest2b-2"],
"34_1": ["testinstance-uswest2a-2"],
"35_0": ["testinstance-uswest2b-3"],
"35_1": ["testinstance-uswest2a-3"],
"36_0": ["testinstance-uswest2b-4"],
"36_1": ["testinstance-uswest2a-4"],
"37_0": ["testinstance-uswest2b-5"],
"37_1": ["testinstance-uswest2a-5"],
"38_0": ["testinstance-uswest2b-6"],
"38_1": ["testinstance-uswest2a-6"],
"39_0": ["testinstance-uswest2b-1"],
"39_1": ["testinstance-uswest2a-1"],
"3_0": ["testinstance-uswest2b-1"],
"3_1": ["testinstance-uswest2a-1"],
"40_0": ["testinstance-uswest2b-2"],
"40_1": ["testinstance-uswest2a-2"],
"41_0": ["testinstance-uswest2b-3"],
"41_1": ["testinstance-uswest2a-3"],
"42_0": ["testinstance-uswest2b-4"],
"42_1": ["testinstance-uswest2a-4"],
"43_0": ["testinstance-uswest2b-5"],
"43_1": ["testinstance-uswest2a-5"],
"44_0": ["testinstance-uswest2b-6"],
"44_1": ["testinstance-uswest2a-6"],
"45_0": ["testinstance-uswest2b-1"],
"45_1": ["testinstance-uswest2a-1"],
"46_0": ["testinstance-uswest2b-2"],
"46_1": ["testinstance-uswest2a-2"],
"47_0": ["testinstance-uswest2b-3"],
"47_1": ["testinstance-uswest2a-3"],
"48_0": ["testinstance-uswest2b-4"],
"48_1": ["testinstance-uswest2a-4"],
"49_0": ["testinstance-uswest2b-5"],
"49_1": ["testinstance-uswest2a-5"],
"4_0": ["testinstance-uswest2b-2"],
"4_1": ["testinstance-uswest2a-2"],
"50_0": ["testinstance-uswest2b-6"],
"50_1": ["testinstance-uswest2a-6"],
"51_0": ["testinstance-uswest2b-1"],
"51_1": ["testinstance-uswest2a-1"],
"52_0": ["testinstance-uswest2b-2"],
"52_1": ["testinstance-uswest2a-2"],
"53_0": ["testinstance-uswest2b-3"],
"53_1": ["testinstance-uswest2a-3"],
"54_0": ["testinstance-uswest2b-4"],
"54_1": ["testinstance-uswest2a-4"],
"55_0": ["testinstance-uswest2b-5"],
"55_1": ["testinstance-uswest2a-5"],
"56_0": ["testinstance-uswest2b-6"],
"56_1": ["testinstance-uswest2a-6"],
"57_0": ["testinstance-uswest2b-1"],
"57_1": ["testinstance-uswest2a-1"],
"58_0": ["testinstance-uswest2b-2"],
"58_1": ["testinstance-uswest2a-2"],
"59_0": ["testinstance-uswest2b-3"],
"59_1": ["testinstance-uswest2a-3"],
"5_0": ["testinstance-uswest2b-3"],
"5_1": ["testinstance-uswest2a-3"],
"60_0": ["testinstance-uswest2b-4"],
"60_1": ["testinstance-uswest2a-4"],
"61_0": ["testinstance-uswest2b-5"],
"61_1": ["testinstance-uswest2a-5"],
"62_0": ["testinstance-uswest2b-6"],
"62_1": ["testinstance-uswest2a-6"],
"63_0": ["testinstance-uswest2b-1"],
"63_1": ["testinstance-uswest2a-1"],
"64_0": ["testinstance-uswest2b-2"],
"64_1": ["testinstance-uswest2a-2"],
"65_0": ["testinstance-uswest2b-3"],
"65_1": ["testinstance-uswest2a-3"],
"66_0": ["testinstance-uswest2b-4"],
"66_1": ["testinstance-uswest2a-4"],
"67_0": ["testinstance-uswest2b-5"],
"67_1": ["testinstance-uswest2a-5"],
"68_0": ["testinstance-uswest2b-6"],
"68_1": ["testinstance-uswest2a-6"],
"69_0": ["testinstance-uswest2b-1"],
"69_1": ["testinstance-uswest2a-1"],
"6_0": ["testinstance-uswest2b-4"],
"6_1": ["testinstance-uswest2a-4"],
"70_0": ["testinstance-uswest2b-2"],
"70_1": ["testinstance-uswest2a-2"],
"71_0": ["testinstance-uswest2b-3"],
"71_1": ["testinstance-uswest2a-3"],
"72_0": ["testinstance-uswest2b-4"],
"72_1": ["testinstance-uswest2a-4"],
"73_0": ["testinstance-uswest2b-5"],
"73_1": ["testinstance-uswest2a-5"],
"74_0": ["testinstance-uswest2b-6"],
"74_1": ["testinstance-uswest2a-6"],
"75_0": ["testinstance-uswest2b-1"],
"75_1": ["testinstance-uswest2a-1"],
"76_0": ["testinstance-uswest2b-2"],
"76_1": ["testinstance-uswest2a-2"],
"77_0": ["testinstance-uswest2b-3"],
"77_1": ["testinstance-uswest2a-3"],
"78_0": ["testinstance-uswest2b-4"],
"78_1": ["testinstance-uswest2a-4"],
"79_0": ["testinstance-uswest2b-5"],
"79_1": ["testinstance-uswest2a-5"],
"7_0": ["testinstance-uswest2b-5"],
"7_1": ["testinstance-uswest2a-5"],
"80_0": ["testinstance-uswest2b-6"],
"80_1": ["testinstance-uswest2a-6"],
"81_0": ["testinstance-uswest2b-1"],
"81_1": ["testinstance-uswest2a-1"],
"82_0": ["testinstance-uswest2b-2"],
"82_1": ["testinstance-uswest2a-2"],
"83_0": ["testinstance-uswest2b-3"],
"83_1": ["testinstance-uswest2a-3"],
"84_0": ["testinstance-uswest2b-4"],
"84_1": ["testinstance-uswest2a-4"],
"85_0": ["testinstance-uswest2b-5"],
"85_1": ["testinstance-uswest2a-5"],
"86_0": ["testinstance-uswest2b-6"],
"86_1": ["testinstance-uswest2a-6"],
"87_0": ["testinstance-uswest2b-1"],
"87_1": ["testinstance-uswest2a-1"],
"88_0": ["testinstance-uswest2b-2"],
"88_1": ["testinstance-uswest2a-2"],
"89_0": ["testinstance-uswest2b-3"],
"89_1": ["testinstance-uswest2a-3"],
"8_0": ["testinstance-uswest2b-6"],
"8_1": ["testinstance-uswest2a-6"],
"90_0": ["testinstance-uswest2b-4"],
"90_1": ["testinstance-uswest2a-4"],
"91_0": ["testinstance-uswest2b-5"],
"91_1": ["testinstance-uswest2a-5"],
"92_0": ["testinstance-uswest2b-6"],
"92_1": ["testinstance-uswest2a-6"],
"93_0": ["testinstance-uswest2b-1"],
"93_1": ["testinstance-uswest2a-1"],
"94_0": ["testinstance-uswest2b-2"],
"94_1": ["testinstance-uswest2a-2"],
"95_0": ["testinstance-uswest2b-3"],
"95_1": ["testinstance-uswest2a-3"],
"96_0": ["testinstance-uswest2b-4"],
"96_1": ["testinstance-uswest2a-4"],
"97_0": ["testinstance-uswest2b-5"],
"97_1": ["testinstance-uswest2a-5"],
"98_0": ["testinstance-uswest2b-6"],
"98_1": ["testinstance-uswest2a-6"],
"99_0": ["testinstance-uswest2b-1"],
"99_1": ["testinstance-uswest2a-1"],
"9_0": ["testinstance-uswest2b-1"],
"9_1": ["testinstance-uswest2a-1"
]
}
}
Instance partitions with numPartitions=180
and numInstancesPerPartition=1
with 7 hosts per pool. I diff'ed this with the last instance partition map and counted 300 total partition-replica changes.
"partitionToInstancesMap": {
"0_0": ["testinstance-uswest2b-4"],
"0_1": ["testinstance-uswest2a-4"],
"100_0": ["testinstance-uswest2b-5"],
"100_1": ["testinstance-uswest2a-5"],
"101_0": ["testinstance-uswest2b-6"],
"101_1": ["testinstance-uswest2a-6"],
"102_0": ["testinstance-uswest2b-1"],
"102_1": ["testinstance-uswest2a-1"],
"103_0": ["testinstance-uswest2b-2"],
"103_1": ["testinstance-uswest2a-2"],
"104_0": ["testinstance-uswest2b-7"],
"104_1": ["testinstance-uswest2a-7"],
"105_0": ["testinstance-uswest2b-3"],
"105_1": ["testinstance-uswest2a-3"],
"106_0": ["testinstance-uswest2b-4"],
"106_1": ["testinstance-uswest2a-4"],
"107_0": ["testinstance-uswest2b-5"],
"107_1": ["testinstance-uswest2a-5"],
"108_0": ["testinstance-uswest2b-6"],
"108_1": ["testinstance-uswest2a-6"],
"109_0": ["testinstance-uswest2b-1"],
"109_1": ["testinstance-uswest2a-1"],
"10_0": ["testinstance-uswest2b-6"],
"10_1": ["testinstance-uswest2a-6"],
"110_0": ["testinstance-uswest2b-2"],
"110_1": ["testinstance-uswest2a-2"],
"111_0": ["testinstance-uswest2b-7"],
"111_1": ["testinstance-uswest2a-7"],
"112_0": ["testinstance-uswest2b-3"],
"112_1": ["testinstance-uswest2a-3"],
"113_0": ["testinstance-uswest2b-4"],
"113_1": ["testinstance-uswest2a-4"],
"114_0": ["testinstance-uswest2b-5"],
"114_1": ["testinstance-uswest2a-5"],
"115_0": ["testinstance-uswest2b-6"],
"115_1": ["testinstance-uswest2a-6"],
"116_0": ["testinstance-uswest2b-1"],
"116_1": ["testinstance-uswest2a-1"],
"117_0": ["testinstance-uswest2b-2"],
"117_1": ["testinstance-uswest2a-2"],
"118_0": ["testinstance-uswest2b-7"],
"118_1": ["testinstance-uswest2a-7"],
"119_0": ["testinstance-uswest2b-3"],
"119_1": ["testinstance-uswest2a-3"],
"11_0": ["testinstance-uswest2b-1"],
"11_1": ["testinstance-uswest2a-1"],
"120_0": ["testinstance-uswest2b-4"],
"120_1": ["testinstance-uswest2a-4"],
"121_0": ["testinstance-uswest2b-5"],
"121_1": ["testinstance-uswest2a-5"],
"122_0": ["testinstance-uswest2b-6"],
"122_1": ["testinstance-uswest2a-6"],
"123_0": ["testinstance-uswest2b-1"],
"123_1": ["testinstance-uswest2a-1"],
"124_0": ["testinstance-uswest2b-2"],
"124_1": ["testinstance-uswest2a-2"],
"125_0": ["testinstance-uswest2b-7"],
"125_1": ["testinstance-uswest2a-7"],
"126_0": ["testinstance-uswest2b-3"],
"126_1": ["testinstance-uswest2a-3"],
"127_0": ["testinstance-uswest2b-4"],
"127_1": ["testinstance-uswest2a-4"],
"128_0": ["testinstance-uswest2b-5"],
"128_1": ["testinstance-uswest2a-5"],
"129_0": ["testinstance-uswest2b-6"],
"129_1": ["testinstance-uswest2a-6"],
"12_0": ["testinstance-uswest2b-2"],
"12_1": ["testinstance-uswest2a-2"],
"130_0": ["testinstance-uswest2b-1"],
"130_1": ["testinstance-uswest2a-1"],
"131_0": ["testinstance-uswest2b-2"],
"131_1": ["testinstance-uswest2a-2"],
"132_0": ["testinstance-uswest2b-7"],
"132_1": ["testinstance-uswest2a-7"],
"133_0": ["testinstance-uswest2b-3"],
"133_1": ["testinstance-uswest2a-3"],
"134_0": ["testinstance-uswest2b-4"],
"134_1": ["testinstance-uswest2a-4"],
"135_0": ["testinstance-uswest2b-5"],
"135_1": ["testinstance-uswest2a-5"],
"136_0": ["testinstance-uswest2b-6"],
"136_1": ["testinstance-uswest2a-6"],
"137_0": ["testinstance-uswest2b-1"],
"137_1": ["testinstance-uswest2a-1"],
"138_0": ["testinstance-uswest2b-2"],
"138_1": ["testinstance-uswest2a-2"],
"139_0": ["testinstance-uswest2b-7"],
"139_1": ["testinstance-uswest2a-7"],
"13_0": ["testinstance-uswest2b-7"],
"13_1": ["testinstance-uswest2a-7"],
"140_0": ["testinstance-uswest2b-3"],
"140_1": ["testinstance-uswest2a-3"],
"141_0": ["testinstance-uswest2b-4"],
"141_1": ["testinstance-uswest2a-4"],
"142_0": ["testinstance-uswest2b-5"],
"142_1": ["testinstance-uswest2a-5"],
"143_0": ["testinstance-uswest2b-6"],
"143_1": ["testinstance-uswest2a-6"],
"144_0": ["testinstance-uswest2b-1"],
"144_1": ["testinstance-uswest2a-1"],
"145_0": ["testinstance-uswest2b-2"],
"145_1": ["testinstance-uswest2a-2"],
"146_0": ["testinstance-uswest2b-7"],
"146_1": ["testinstance-uswest2a-7"],
"147_0": ["testinstance-uswest2b-3"],
"147_1": ["testinstance-uswest2a-3"],
"148_0": ["testinstance-uswest2b-4"],
"148_1": ["testinstance-uswest2a-4"],
"149_0": ["testinstance-uswest2b-5"],
"149_1": ["testinstance-uswest2a-5"],
"14_0": ["testinstance-uswest2b-3"],
"14_1": ["testinstance-uswest2a-3"],
"150_0": ["testinstance-uswest2b-6"],
"150_1": ["testinstance-uswest2a-6"],
"151_0": ["testinstance-uswest2b-1"],
"151_1": ["testinstance-uswest2a-1"],
"152_0": ["testinstance-uswest2b-2"],
"152_1": ["testinstance-uswest2a-2"],
"153_0": ["testinstance-uswest2b-7"],
"153_1": ["testinstance-uswest2a-7"],
"154_0": ["testinstance-uswest2b-3"],
"154_1": ["testinstance-uswest2a-3"],
"155_0": ["testinstance-uswest2b-4"],
"155_1": ["testinstance-uswest2a-4"],
"156_0": ["testinstance-uswest2b-5"],
"156_1": ["testinstance-uswest2a-5"],
"157_0": ["testinstance-uswest2b-6"],
"157_1": ["testinstance-uswest2a-6"],
"158_0": ["testinstance-uswest2b-1"],
"158_1": ["testinstance-uswest2a-1"],
"159_0": ["testinstance-uswest2b-2"],
"159_1": ["testinstance-uswest2a-2"],
"15_0": ["testinstance-uswest2b-4"],
"15_1": ["testinstance-uswest2a-4"],
"160_0": ["testinstance-uswest2b-7"],
"160_1": ["testinstance-uswest2a-7"],
"161_0": ["testinstance-uswest2b-3"],
"161_1": ["testinstance-uswest2a-3"],
"162_0": ["testinstance-uswest2b-4"],
"162_1": ["testinstance-uswest2a-4"],
"163_0": ["testinstance-uswest2b-5"],
"163_1": ["testinstance-uswest2a-5"],
"164_0": ["testinstance-uswest2b-6"],
"164_1": ["testinstance-uswest2a-6"],
"165_0": ["testinstance-uswest2b-1"],
"165_1": ["testinstance-uswest2a-1"],
"166_0": ["testinstance-uswest2b-2"],
"166_1": ["testinstance-uswest2a-2"],
"167_0": ["testinstance-uswest2b-7"],
"167_1": ["testinstance-uswest2a-7"],
"168_0": ["testinstance-uswest2b-3"],
"168_1": ["testinstance-uswest2a-3"],
"169_0": ["testinstance-uswest2b-4"],
"169_1": ["testinstance-uswest2a-4"],
"16_0": ["testinstance-uswest2b-5"],
"16_1": ["testinstance-uswest2a-5"],
"170_0": ["testinstance-uswest2b-5"],
"170_1": ["testinstance-uswest2a-5"],
"171_0": ["testinstance-uswest2b-6"],
"171_1": ["testinstance-uswest2a-6"],
"172_0": ["testinstance-uswest2b-1"],
"172_1": ["testinstance-uswest2a-1"],
"173_0": ["testinstance-uswest2b-2"],
"173_1": ["testinstance-uswest2a-2"],
"174_0": ["testinstance-uswest2b-7"],
"174_1": ["testinstance-uswest2a-7"],
"175_0": ["testinstance-uswest2b-3"],
"175_1": ["testinstance-uswest2a-3"],
"176_0": ["testinstance-uswest2b-4"],
"176_1": ["testinstance-uswest2a-4"],
"177_0": ["testinstance-uswest2b-5"],
"177_1": ["testinstance-uswest2a-5"],
"178_0": ["testinstance-uswest2b-6"],
"178_1": ["testinstance-uswest2a-6"],
"179_0": ["testinstance-uswest2b-1"],
"179_1": ["testinstance-uswest2a-1"],
"17_0": ["testinstance-uswest2b-6"],
"17_1": ["testinstance-uswest2a-6"],
"18_0": ["testinstance-uswest2b-1"],
"18_1": ["testinstance-uswest2a-1"],
"19_0": ["testinstance-uswest2b-2"],
"19_1": ["testinstance-uswest2a-2"],
"1_0": ["testinstance-uswest2b-5"],
"1_1": ["testinstance-uswest2a-5"],
"20_0": ["testinstance-uswest2b-7"],
"20_1": ["testinstance-uswest2a-7"],
"21_0": ["testinstance-uswest2b-3"],
"21_1": ["testinstance-uswest2a-3"],
"22_0": ["testinstance-uswest2b-4"],
"22_1": ["testinstance-uswest2a-4"],
"23_0": ["testinstance-uswest2b-5"],
"23_1": ["testinstance-uswest2a-5"],
"24_0": ["testinstance-uswest2b-6"],
"24_1": ["testinstance-uswest2a-6"],
"25_0": ["testinstance-uswest2b-1"],
"25_1": ["testinstance-uswest2a-1"],
"26_0": ["testinstance-uswest2b-2"],
"26_1": ["testinstance-uswest2a-2"],
"27_0": ["testinstance-uswest2b-7"],
"27_1": ["testinstance-uswest2a-7"],
"28_0": ["testinstance-uswest2b-3"],
"28_1": ["testinstance-uswest2a-3"],
"29_0": ["testinstance-uswest2b-4"],
"29_1": ["testinstance-uswest2a-4"],
"2_0": ["testinstance-uswest2b-6"],
"2_1": ["testinstance-uswest2a-6"],
"30_0": ["testinstance-uswest2b-5"],
"30_1": ["testinstance-uswest2a-5"],
"31_0": ["testinstance-uswest2b-6"],
"31_1": ["testinstance-uswest2a-6"],
"32_0": ["testinstance-uswest2b-1"],
"32_1": ["testinstance-uswest2a-1"],
"33_0": ["testinstance-uswest2b-2"],
"33_1": ["testinstance-uswest2a-2"],
"34_0": ["testinstance-uswest2b-7"],
"34_1": ["testinstance-uswest2a-7"],
"35_0": ["testinstance-uswest2b-3"],
"35_1": ["testinstance-uswest2a-3"],
"36_0": ["testinstance-uswest2b-4"],
"36_1": ["testinstance-uswest2a-4"],
"37_0": ["testinstance-uswest2b-5"],
"37_1": ["testinstance-uswest2a-5"],
"38_0": ["testinstance-uswest2b-6"],
"38_1": ["testinstance-uswest2a-6"],
"39_0": ["testinstance-uswest2b-1"],
"39_1": ["testinstance-uswest2a-1"],
"3_0": ["testinstance-uswest2b-1"],
"3_1": ["testinstance-uswest2a-1"],
"40_0": ["testinstance-uswest2b-2"],
"40_1": ["testinstance-uswest2a-2"],
"41_0": ["testinstance-uswest2b-7"],
"41_1": ["testinstance-uswest2a-7"],
"42_0": ["testinstance-uswest2b-3"],
"42_1": ["testinstance-uswest2a-3"],
"43_0": ["testinstance-uswest2b-4"],
"43_1": ["testinstance-uswest2a-4"],
"44_0": ["testinstance-uswest2b-5"],
"44_1": ["testinstance-uswest2a-5"],
"45_0": ["testinstance-uswest2b-6"],
"45_1": ["testinstance-uswest2a-6"],
"46_0": ["testinstance-uswest2b-1"],
"46_1": ["testinstance-uswest2a-1"],
"47_0": ["testinstance-uswest2b-2"],
"47_1": ["testinstance-uswest2a-2"],
"48_0": ["testinstance-uswest2b-7"],
"48_1": ["testinstance-uswest2a-7"],
"49_0": ["testinstance-uswest2b-3"],
"49_1": ["testinstance-uswest2a-3"],
"4_0": ["testinstance-uswest2b-2"],
"4_1": ["testinstance-uswest2a-2"],
"50_0": ["testinstance-uswest2b-4"],
"50_1": ["testinstance-uswest2a-4"],
"51_0": ["testinstance-uswest2b-5"],
"51_1": ["testinstance-uswest2a-5"],
"52_0": ["testinstance-uswest2b-6"],
"52_1": ["testinstance-uswest2a-6"],
"53_0": ["testinstance-uswest2b-1"],
"53_1": ["testinstance-uswest2a-1"],
"54_0": ["testinstance-uswest2b-2"],
"54_1": ["testinstance-uswest2a-2"],
"55_0": ["testinstance-uswest2b-7"],
"55_1": ["testinstance-uswest2a-7"],
"56_0": ["testinstance-uswest2b-3"],
"56_1": ["testinstance-uswest2a-3"],
"57_0": ["testinstance-uswest2b-4"],
"57_1": ["testinstance-uswest2a-4"],
"58_0": ["testinstance-uswest2b-5"],
"58_1": ["testinstance-uswest2a-5"],
"59_0": ["testinstance-uswest2b-6"],
"59_1": ["testinstance-uswest2a-6"],
"5_0": ["testinstance-uswest2b-3"],
"5_1": ["testinstance-uswest2a-3"],
"60_0": ["testinstance-uswest2b-1"],
"60_1": ["testinstance-uswest2a-1"],
"61_0": ["testinstance-uswest2b-2"],
"61_1": ["testinstance-uswest2a-2"],
"62_0": ["testinstance-uswest2b-7"],
"62_1": ["testinstance-uswest2a-7"],
"63_0": ["testinstance-uswest2b-3"],
"63_1": ["testinstance-uswest2a-3"],
"64_0": ["testinstance-uswest2b-4"],
"64_1": ["testinstance-uswest2a-4"],
"65_0": ["testinstance-uswest2b-5"],
"65_1": ["testinstance-uswest2a-5"],
"66_0": ["testinstance-uswest2b-6"],
"66_1": ["testinstance-uswest2a-6"],
"67_0": ["testinstance-uswest2b-1"],
"67_1": ["testinstance-uswest2a-1"],
"68_0": ["testinstance-uswest2b-2"],
"68_1": ["testinstance-uswest2a-2"],
"69_0": ["testinstance-uswest2b-7"],
"69_1": ["testinstance-uswest2a-7"],
"6_0": ["testinstance-uswest2b-7"],
"6_1": ["testinstance-uswest2a-7"],
"70_0": ["testinstance-uswest2b-3"],
"70_1": ["testinstance-uswest2a-3"],
"71_0": ["testinstance-uswest2b-4"],
"71_1": ["testinstance-uswest2a-4"],
"72_0": ["testinstance-uswest2b-5"],
"72_1": ["testinstance-uswest2a-5"],
"73_0": ["testinstance-uswest2b-6"],
"73_1": ["testinstance-uswest2a-6"],
"74_0": ["testinstance-uswest2b-1"],
"74_1": ["testinstance-uswest2a-1"],
"75_0": ["testinstance-uswest2b-2"],
"75_1": ["testinstance-uswest2a-2"],
"76_0": ["testinstance-uswest2b-7"],
"76_1": ["testinstance-uswest2a-7"],
"77_0": ["testinstance-uswest2b-3"],
"77_1": ["testinstance-uswest2a-3"],
"78_0": ["testinstance-uswest2b-4"],
"78_1": ["testinstance-uswest2a-4"],
"79_0": ["testinstance-uswest2b-5"],
"79_1": ["testinstance-uswest2a-5"],
"7_0": ["testinstance-uswest2b-3"],
"7_1": ["testinstance-uswest2a-3"],
"80_0": ["testinstance-uswest2b-6"],
"80_1": ["testinstance-uswest2a-6"],
"81_0": ["testinstance-uswest2b-1"],
"81_1": ["testinstance-uswest2a-1"],
"82_0": ["testinstance-uswest2b-2"],
"82_1": ["testinstance-uswest2a-2"],
"83_0": ["testinstance-uswest2b-7"],
"83_1": ["testinstance-uswest2a-7"],
"84_0": ["testinstance-uswest2b-3"],
"84_1": ["testinstance-uswest2a-3"],
"85_0": ["testinstance-uswest2b-4"],
"85_1": ["testinstance-uswest2a-4"],
"86_0": ["testinstance-uswest2b-5"],
"86_1": ["testinstance-uswest2a-5"],
"87_0": ["testinstance-uswest2b-6"],
"87_1": ["testinstance-uswest2a-6"],
"88_0": ["testinstance-uswest2b-1"],
"88_1": ["testinstance-uswest2a-1"],
"89_0": ["testinstance-uswest2b-2"],
"89_1": ["testinstance-uswest2a-2"],
"8_0": ["testinstance-uswest2b-4"],
"8_1": ["testinstance-uswest2a-4"],
"90_0": ["testinstance-uswest2b-7"],
"90_1": ["testinstance-uswest2a-7"],
"91_0": ["testinstance-uswest2b-3"],
"91_1": ["testinstance-uswest2a-3"],
"92_0": ["testinstance-uswest2b-4"],
"92_1": ["testinstance-uswest2a-4"],
"93_0": ["testinstance-uswest2b-5"],
"93_1": ["testinstance-uswest2a-5"],
"94_0": ["testinstance-uswest2b-6"],
"94_1": ["testinstance-uswest2a-6"],
"95_0": ["testinstance-uswest2b-1"],
"95_1": ["testinstance-uswest2a-1"],
"96_0": ["testinstance-uswest2b-2"],
"96_1": ["testinstance-uswest2a-2"],
"97_0": ["testinstance-uswest2b-7"],
"97_1": ["testinstance-uswest2a-7"],
"98_0": ["testinstance-uswest2b-3"],
"98_1": ["testinstance-uswest2a-3"],
"99_0": ["testinstance-uswest2b-4"],
"99_1": ["testinstance-uswest2a-4"],
"9_0": ["testinstance-uswest2b-5"],
"9_1": ["testinstance-uswest2a-5"]
}
}
Ideally minimize movement should use a greedy algorithm to preserve existing instance as much as possible. I can see it is not using round robin, but also not preserving instances effectively. @jackjlli could this be a bug in the algorithm? Or this scenario is not handled?
This is a continuation of this issue: https://github.com/apache/pinot/issues/11894
Background
When rebalancing upsert tables, we are noticing that nearly all segments are moving to a new host with
minimizeDataMovement
on. This can risk servers running out of disk space even when combined with the new low disk mode from https://github.com/apache/pinot/pull/12072.Example
Our current table config looks like and is using pool-based instance assignment.
In our test table, we have 6 servers in each pool. We added 1 server to each pool and used a script to compare ideal state before and after the rebalance. The script shows how many segments are added/removed from each server. As you can see here, there's a lot of movement.
We also tried switching the table to use explicit
numPartitions
andnumInstancesPerPartition
.When rebalancing to this configuration, no segments moved. When we tried to scale up again from 6 -> 7 servers, we saw the exact same segment movement.
During the scale up rebalance, we also used low disk mode. We saw disk go from 37% and peaked at 52%.
Desired Behavior
We ideally want
minimizeDataMovement
to operate the same as Kafka's StickyAssignor algorithm which 1) maintains a uniform distribution of partitions and 2) minimizes partition movements based on the previous assignment.cc @Jackie-Jiang @jadami10