hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Anoop Sam John <anoo...@huawei.com>
Subject RE: Data Locality, HBase? Or Hadoop?
Date Tue, 04 Dec 2012 03:37:51 GMT
I think all is clear now.. Just to conclude, the data locality is feature provided by HDFS.
When DFS client writes some data, hadoop will try to maintain the data locality. HBase region
server writes and reads data via the DFS client which is in the same process as that of the
RS.  When the flush happens data locality would have been achieved for that data..  Later
when the region is getting moved by the balancer or manually, data locality may again be available
after a compaction as the compaction will rewrite the data into HDFS again.. (merging many
files into 1 HFile)
Major compaction if done all the data will get local..  If it is minor compaction only that
much data which are present in the minor compacted files will get moved into a new HFile and
thus only that much locality.  :)

From: Jean-Marc Spaggiari [jean-marc@spaggiari.org]
Sent: Monday, December 03, 2012 9:23 PM
To: user@hbase.apache.org
Subject: Re: Data Locality, HBase? Or Hadoop?

Ok. I will try the major compaction then ;)

Doug, thanks for pointing to the doc! I now totally understand why
it's moved locally when the compaction occurs!

Thanks all! I will give that a try very shortly.


2012/12/3, Doug Meil <doug.meil@explorysmedical.com>:
> Hi there-
> This is also discussed in the Regions section in the RefGuide:
> http://hbase.apache.org/book.html#regions.arch
> 9.7.3. Region-RegionServer Locality
> On 12/3/12 10:08 AM, "Kevin O'dell" <kevin.odell@cloudera.com> wrote:
>>  If you have disabled the balancer and are manually moving regions, you
>>will need to run a compaction on those regions.  That is the only(logical)
>>way of bringing the data local.  HDFS does not have a concept of HBase
>>locality.  HBase locality is all managed through major and minor
>>On Mon, Dec 3, 2012 at 10:04 AM, Jean-Marc Spaggiari <
>>jean-marc@spaggiari.org> wrote:
>>> Hi,
>>> I'm wondering who is taking care of the data locality. Is it hadoop? Or
>>> hbase?
>>> Let's say I have disabled the load balancer and I'm manually moving a
>>> region to a specific server. Who is going to take care that the data
>>> is going to be on the same datanode as the regionserver I moved the
>>> region to? Is hadoop going to see that my region is now on this region
>>> server and make sure my data is moved there too? Or is hbase going to
>>> ask hadoop to do it?
>>> Or, since I moved it manually, there is not any data locality
>>> Thanks,
>>> JM
>>Kevin O'Dell
>>Customer Operations Engineer, Cloudera
View raw message