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 >
