[
https://issues.apache.org/jira/browse/KUDU-3476?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17907123#comment-17907123
]
derek.huang commented on KUDU-3476:
-----------------------------------
Hi [~aserbin],
Thanks for the info.
I went through the code and found that it actually would work by merely
removing the check for the number of tables in --tables flag when range
rebalancing is enabled. Previously, when a non range partitioned table is
passed in --tables, it will be treated like a table with a single range
partition whose start key is an empty string.
I have uploaded a patch allowing multiple tables in --tables flag. I also
updated the output of table distribution details when range rebalancing is
applied to to multiple tables with mixed partition schema. The patch is
available at [https://gerrit.cloudera.org/#/c/22239/] . Could you please take a
look?
Thanks.
> Make replica placement range and table aware
> --------------------------------------------
>
> Key: KUDU-3476
> URL: https://issues.apache.org/jira/browse/KUDU-3476
> Project: Kudu
> Issue Type: New Feature
> Components: master, tserver
> Reporter: Mahesh Reddy
> Assignee: Mahesh Reddy
> Priority: Major
> Fix For: 1.17.0
>
>
> The current replica placement algorithm uses the power of two choices
> algorithm. This algorithm randomly selects tservers and places the replica on
> the tserver with less replicas. This can lead to potential hotspotting as it
> doesn't discriminate by range or table so many tablets from the same
> range/table can be disproportionally distributed.
> With this new feature, the replicas will be placed in a way that the tablets
> per range will be equally distributed amongst the available tservers. If
> multiple tservers have the same amount of replicas per range, then the
> tserver with less replicas for that table will be selected. If multiple
> tservers have the same amount of replicas for that table, the tserver with
> less total replicas will be chosen.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)