[ https://issues.apache.org/jira/browse/HBASE-13965?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14623634#comment-14623634 ]
Ted Yu commented on HBASE-13965: -------------------------------- {code} + /** Config for balancing the cluster by each table */ {code} 'by each table' -> 'by table' {code} + /** The name of the combined table when bytable is off*/ {code} 'combined table' -> 'combined tables' {code} + // Use Most Recent Used(MRU) cache {code} 'Most Recent' -> 'Most Recently' {code} + synchronized (stochasticCosts) { + if (stochasticCosts != null) { {code} Looks like the null check is not needed. {code} + private void updateStochasticCosts(TableName tableName, Double overall, Double[] subCosts) { {code} Should we do early return if the table is system table ? {code} + //TODO: should hbase:mespace be passed in by HMaster? {code} Can the above TODO be dropped ? {code} + ((MetricsStochasticBalancer) metricsBalancer).updateStochasticCost(tableName.getNameAsString(), "Overall", + "Overall cost", overall); {code} Since metricsBalancer would be cast in the loop that follows, you can use local variable of type MetricsStochasticBalancer to save the casts in the loop. {code} + if (null == tableName) + return; {code} nit: move return on the same line as if statement to save a pair of curly braces. > Stochastic Load Balancer JMX Metrics > ------------------------------------ > > Key: HBASE-13965 > URL: https://issues.apache.org/jira/browse/HBASE-13965 > Project: HBase > Issue Type: Improvement > Components: Balancer, metrics > Reporter: Lei Chen > Assignee: Lei Chen > Attachments: HBASE-13965-v3.patch, HBASE-13965-v4.patch, > HBASE-13965-v5.patch, HBASE-13965-v6.patch, HBASE-13965-v7.patch, > HBASE-13965_v2.patch, HBase-13965-v1.patch, > stochasticloadbalancerclasses_v2.png > > > Today’s default HBase load balancer (the Stochastic load balancer) is cost > function based. The cost function weights are tunable but no visibility into > those cost function results is directly provided. > A driving example is a cluster we have been tuning which has skewed rack size > (one rack has half the nodes of the other few racks). We are tuning the > cluster for uniform response time from all region servers with the ability to > tolerate a rack failure. Balancing LocalityCost, RegionReplicaRack Cost and > RegionCountSkew Cost is difficult without a way to attribute each cost > function’s contribution to overall cost. > What this jira proposes is to provide visibility via JMX into each cost > function of the stochastic load balancer, as well as the overall cost of the > balancing plan. -- This message was sent by Atlassian JIRA (v6.3.4#6332)