hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stack <st...@duboce.net>
Subject Re: Hbase regionserver heap occupancy because of MSLAB
Date Thu, 05 Oct 2017 03:55:49 GMT
On Wed, Oct 4, 2017 at 9:42 AM, Subash Kunjupillai <subash.k@ericsson.com>

> As sited in  HBase Doc
> <http://archive-primary.cloudera.com/cdh5/cdh/5/hbase-0.98.1
> -cdh5.1.3/book/regions.arch.html#too_many_regions>
> , I understand that MSLAB of each memstore will occupy 2MB(default) of the
> region server heap memory. So if there are 2000 regions in my region
> server,
> 3.9GB of my heap would be occupied.
> My question is, memory for MSLAB will be allocated as soon as the regions
> come online or only if data is written to memstore?

It looks like the latter, lazy allocation on first Cell add.
See HeapMemStoreLAB alloc called out of DefaultMemStore.

If up for experimenting, you could try running without MSLAB with G1GC
enabled; various report G1GC mitigates need for MSLAB (I've not tried this

> Because I've a cluster
> where 1000 of empty regions in a table, since data are removed after
> configured TTL. Would like to know would that cause unnecessary heap usage?
As I read it, it would; the last Chunk allocated in DefaultMemStore would
stick around.


> --
> Sent from: http://apache-hbase.679495.n3.nabble.com/HBase-User-f4020416
> .html

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message