[
https://issues.apache.org/jira/browse/HBASE-17515?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15840195#comment-15840195
]
Ted Yu commented on HBASE-17515:
--------------------------------
Using Instrumentation on a cluster needs to modify JVM option to include agent
jar.
Will try that route when I have more time.
For now, I borrowed some code for static analysis from
http://stackoverflow.com/questions/9368764/calculate-size-of-object-in-java .
BalancerRegionLoad: size 40
ClusterStatusProtos.RegionLoad: size 136
I think the reduction in size would be bigger from dynamic analysis using
Instrumentation.
> Reduce memory footprint of RegionLoads kept by StochasticLoadBalancer
> ---------------------------------------------------------------------
>
> Key: HBASE-17515
> URL: https://issues.apache.org/jira/browse/HBASE-17515
> Project: HBase
> Issue Type: Improvement
> Reporter: Ted Yu
> Assignee: Tim Brown
> Fix For: 2.0.0, 1.4.0
>
> Attachments: 17515.branch-1.v2.txt, 17515.v1.txt, 17515.v2.txt
>
>
> Currently StochasticLoadBalancer uses the following fields of RegionLoad :
> {code}
> return rl.getReadRequestsCount();
> return rl.getWriteRequestsCount();
> return rl.getMemStoreSizeMB();
> return rl.getStorefileSizeMB();
> {code}
> However, RegionLoad refers to ClusterStatusProtos.RegionLoad which has 18
> fields.
> This means we keep hbase.master.balancer.stochastic.numRegionLoadsToRemember
> (default value 15) RegionLoad's in memory but only use a small portion of
> them.
> This JIRA is to consider creating POJO which wraps the above 4 fields so that
> the memory footprint can be lowered.
> Lowering memory footprint would allow wider sliding window to be configured
> for load balancer while limiting the impact to heap consumption.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)