Slackbot
03/20/2023, 2:06 PMGian Merlino
03/21/2023, 5:48 AMGian Merlino
03/21/2023, 5:50 AMGian Merlino
03/21/2023, 5:50 AMNick M
03/21/2023, 1:21 PMGian Merlino
03/21/2023, 6:06 PMNick M
03/27/2023, 12:47 PMGian Merlino
03/28/2023, 5:31 AMbalancerComputeThreads in your Coordinator dynamic config? You mention "maxing out a CPU" — for a cluster with ~millions of segments I'd expect balancing to be maxing out more CPUs 🙂
For a cluster that size, reasonable value might be 32 on a machine with as many CPUs
Wondering if @kfaraz or @Amatya Avadhanula have any other pointers— they've been involved in the Coordinator scaling effortsNick M
03/28/2023, 9:23 AMAmatya Avadhanula
03/28/2023, 9:36 AMUse Round robin segment assignment - true [This will assign segments in a round robin fashion and let the cost strategy decide balancing happen later]
2. Use batched segment sampler - true [For efficient sampling of segments for balancing]
3. Max segments to move - 500 to 1000 [For faster balancing since round-robin doesn't assign in the most optimal fasion]
4. Max segments in node loading queue - 100 - 1000 [This limits the assignments / moves of segments in a given cycle per historical]
5. Replication throttle limit - 2000 [This limits the number of non primary segment replicas assigned per cycle, you could choose a higher value]Amatya Avadhanula
03/28/2023, 9:37 AMcachingCost has a very high initialization cost when there are millions of segments. If you use the above dynamic configuration, cost is pretty fast as well and has a lower memory overheadNick M
03/28/2023, 10:35 AMNick M
03/28/2023, 2:00 PMGian Merlino
03/28/2023, 3:13 PMisOvershadowed callsGian Merlino
03/28/2023, 3:15 PMGian Merlino
03/28/2023, 3:15 PMisOvershadowed makes me remember that, as one of the spots was something that did spend a lot of time looping around isOvershadowedGian Merlino
03/28/2023, 3:16 PMNick M
03/28/2023, 3:17 PMkfaraz
03/28/2023, 3:18 PMisOvershadowed from MarkAsUnusedOvershadowedSegments duty. The isOvershadowed method call itself has not been optimized.kfaraz
03/28/2023, 3:18 PMNick M
03/28/2023, 3:19 PMkfaraz
03/28/2023, 3:19 PMGian Merlino
03/28/2023, 3:20 PMkfaraz
03/28/2023, 3:20 PMGian Merlino
03/28/2023, 3:20 PMGian Merlino
03/28/2023, 3:21 PMNick M
03/28/2023, 3:22 PMNick M
03/28/2023, 3:22 PMGian Merlino
03/28/2023, 3:22 PMGian Merlino
03/28/2023, 3:23 PMkfaraz
03/28/2023, 3:24 PMkfaraz
03/28/2023, 3:25 PMisOvershadowed call. I think most of the other coordination stuff should work fine (barring the memory crunch caused by such a large number of segments).Gian Merlino
03/28/2023, 5:48 PM