[ https://issues.apache.org/jira/browse/HBASE-17786?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16007653#comment-16007653 ]
stack commented on HBASE-17786: ------------------------------- +1 from me. [~busbey] Ok to commit sir? > Create LoadBalancer perf-tests (test balancer algorithm decoupled from > workload) > -------------------------------------------------------------------------------- > > Key: HBASE-17786 > URL: https://issues.apache.org/jira/browse/HBASE-17786 > Project: HBase > Issue Type: Sub-task > Components: Balancer, proc-v2 > Reporter: stack > Assignee: Umesh Agashe > Labels: beginner > Fix For: 2.0.0 > > Attachments: HBASE-17786.001.patch, HBASE-17786.002.patch, > HBASE-17786.002.patch > > > (Below is a quote from [~mbertozzi] taken from an internal issue that I'm > moving out here) > Add perf tools and keep monitored balancer performance (a BalancerPE-type > thing). > Most of the balancers should be instantiable without requiring a > mini-cluster, and it easy to create tons of RegionInfo and ServerNames with a > for loop. > The balancer is just creating a map RegionInfo:ServerName. > There are two methods to test roundRobinAssignment() and retainAssignment() > {code} > Map<ServerName, List<HRegionInfo>> roundRobinAssignment( > List<HRegionInfo> regions, > List<ServerName> servers > ) throws HBaseIOException; > Map<ServerName, List<HRegionInfo>> retainAssignment( > Map<HRegionInfo, ServerName> regions, > List<ServerName> servers > ) throws HBaseIOException; > {code} > There are a bunch of obvious optimization that everyone can see just by > looking at the code. (like replacing array with set when we do > contains/remove operations). It will be nice to have a baseline and start > improving from there. -- This message was sent by Atlassian JIRA (v6.3.15#6346)