Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

When creating topics or partitions, the Kafka controller has to pick brokers to host the new partitions. The current assignment logic is based on a round robin algorithm and supports rack awareness. While this works relatively well in many scenarios as it's not aware of the state of the clusters, in a few cases the assignments it generates is not optimal. Many cluster administrators then rely on tools like Cruise Control to move partitions to better brokers. This proocess process is expensive as often data has to be copied between brokers.

It would be great to allow custom logic for the assignor to better understand the state of the cluster and minimize the number of partition reassignments necessary. It would enable administrators to build assignment goals (similar to Cruise Control goals) for their clusters.

...

Doc: The fully qualified class name that implements ReplicaAssignor. This is used by the broker to determine replicas when topics or partiions partitions are created. This defaults to DefaultReplicaAssignor.

...