hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stack <st...@duboce.net>
Subject Re: hbase architecture doubts
Date Mon, 02 May 2016 06:09:24 GMT
On Sun, May 1, 2016 at 3:36 AM, Shushant Arora <shushantarora09@gmail.com>

> 1.Does Hbase uses ConcurrentskipListMap(CSLM) to store data in memstore?
> Yes (We use a CSLS but this is implemented over a CSLM).

> 2.When mwmstore is flushed to HDFS- does it dump the memstore
> Concurrentskiplist as Hfile2? Then How does it calculates blocks out of
> CSLM and dmp them in HDFS.
Moves current, active Map aside as a snapshot (while a write lock is held
for a short period of time), and then creates a new CSLS instances.

In background, the snapshot is then dumped to disk. We get an Iterator on
CSLS. We write a block at a time. When we exceed configured block size, we
start a new one.

> 3.After dumping the inmemory CSLM of memstore to HFILe does memstore
> content is discarded


> and if while dumping memstore any read request comes
> will it be responded by copy of memstore or discard of memstore will be
> blocked until read request is completed?
> We will respond using the snapshot until it has been successfully dumped.
Once dumped, we'll respond using the hfile.

No blocking (other than for the short period during which the snapshot is
made and the file is swapped into the read path).

> 4.When a read request comes does it look in inmemory CSLM and then in
> HFile?

Generally, yes.

> And what is LogStructuredMerge tree and its usage in Hbase.
Suggest you read up on LSM Trees (
https://en.wikipedia.org/wiki/Log-structured_merge-tree) and if you still
can't see the LSM tree in the HBase forest, ask specific questions and
we'll help you out.


> Thanks!

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