|| at Mar 8, 2011 at 6:18 am
For native tables, Hive reads rows directly from HDFS.
For HBase tables, it has to go through the HBase region servers, which reconstruct rows from column families (combining cache + HDFS).
HBase makes it possible to keep your table up to date in real time, but you have to pay an overhead cost at query time.
On the other hand, with native Hive tables, there's latency in loading new batches of data.
On Mar 7, 2011, at 10:13 PM, Biju Kaimal wrote:
Could you please explain the reason for the behavior?
On Tue, Mar 8, 2011 at 11:35 AM, John Sichi wrote:
On Mar 7, 2011, at 9:59 PM, Biju Kaimal wrote:
I loaded a data set which has 1 million rows into both Hive and HBase tables. For the HBase table, I created a corresponding Hive table so that the data in HBase can be queried from Hive QL. Both tables have a key column and a value column
For the same query (select value, count(*) from table group by value), the Hive only query runs much faster (~ 30 seconds) as compared to Hive over HBase (~ 150 seconds).
Is this expected?