[ 
https://issues.apache.org/jira/browse/PHOENIX-936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

rajeshbabu updated PHOENIX-936:
-------------------------------

    Attachment: PHOENIX-936.patch

[~jamestaylor]
Here is the custom load balancer for colocating user table regions and index 
table regions. This doesn't require any changes in coprocessor hooks.
The basic idea here the the user region and index region with same start key 
will be co-located always.

*Before creating index table we should add both user table and index table to 
balancer colocation info. We may need to populate user table region locations 
from master to balancer. Here are the APIs provided for that.
{code}
IndexLoadBalancer#addTablesToColocate();
IndexLoadBalancer#populateRegionLocations();
{code}

*Similary while droping table we can remove the tables from colocation
{code}
IndexLoadBalancer#removeTablesFromColocation().
{code}
The above steps can be done through master coprocessor hooks because no direct 
client APIs for this.
Hooks implemented in TestIndexLoadBalancer.MockedMasterObserver gives some 
basic idea.

Please review and provide feed back on this.
Thanks.

> Custom load balancer to colocate user table regions and index table regions
> ---------------------------------------------------------------------------
>
>                 Key: PHOENIX-936
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-936
>             Project: Phoenix
>          Issue Type: Sub-task
>            Reporter: rajeshbabu
>            Assignee: rajeshbabu
>         Attachments: PHOENIX-936.patch
>
>
> This issue to provide custom load balancer for co-locating user table regions 
> and index table regions.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to