hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Josh Elser <els...@apache.org>
Subject Re: Performance: HBase Native Java Client versus Thrift Java client
Date Mon, 30 Jan 2017 21:05:39 GMT
Right you are, Jeff. The Master is just coordinating where these Regions 
are hosted (among other things...).

Clients would be caching the mapping of which RegionServers is hosting a 
Region. Typically this information does not change often. In the case 
that it does change, the client can often react very quickly to this.

Unless you have some use-case where your Java client is not long-lived, 
the Thrift server would always be overhead on top of what the HBase 
client itself would do. The Thrift server is just wrapping the HBase 
client you'd use in your own Java application and exposing it in a 
different manner.

jeff saremi wrote:
> Thanks Josh
> I made a mistake in mentioning the master. It looks like the client contacts the Region
Server which holds the Meta table.
> Of a query into the meta table to get the RegionServer for a given key, it wasn't clear
to me what was being cached on the client? Also on the same topic, is a Thrift server assisting
this process in any shape or form? to make its presence necessary?
> Is there anything else that the Thrift server might be contributing to positively?
> ________________________________
> From: Josh Elser<elserj@apache.org>
> Sent: Monday, January 30, 2017 11:57 AM
> To: user@hbase.apache.org
> Subject: Re: Performance: HBase Native Java Client versus Thrift Java client
> Would recommend that you brush up on your understanding of the HBase
> architecture.
> Clients do not receive table data from the HBase Master at any point.
> This is purely a RegionServer operation.
> http://hbase.apache.org/book.html#_architecture
> jeff saremi wrote:
>> I'd like to understand if there are any considerations on why one would use thrift
versus the direct client?
>> I was told that Thrift server allow key-caching which would result in faster key-to-regionserver
queries as opposed to getting that from the Hbase master nodes. It would also alleviate the
load on the master.
>> At the same time, we know if going through Thrift would add to the latency since
it's an indirect way of getting at data.
>> thanks
>> Jeff

View raw message