Two differences that I know of:)

With htable you bear the overhead of instantiating the htable for each time
you need access to it.  The overhead can be substantial if response time is
your biggest concern.
Example:  contact = *new* HTable(config, "contact");

Pooled means that the objects are pooled so you wonldn't bear the overhead
of object creation on each request.  The problem with the HTablePool is that
it does not "ride over restart" meaning that if you need to restart your
cluster, HtablePool will still be pointing at the old ports and not realize
the cluster is back-up.  Hence there is
https://issues.apache.org/jira/browse/HBASE-2183.  Apparently it is slated
to be fixed in 0.92.

Not sure of the expected timing of 0.92, but probably not too far off so I'd
go with HtablePool if not too far off.

My two cents.

On Tue, Nov 9, 2010 at 9:29 AM, Hari Sreekumar <[email protected]>wrote:

> When is it preferable to use HTablePool over HTable and vice-versa? If I am
> working on just one table, will using HTablePool potentially give me any
> performance improvements?
>
> hari
>

Reply via email to