Since I am using Hive to perform query, I don't know how to set it.
Can you tell me how to do so?

Thanks
Weihua

2011/10/12 Jean-Daniel Cryans <[email protected]>:
> This is one big factor and you didn't mention configuring it:
> http://hbase.apache.org/book.html#perf.hbase.client.caching
>
> J-D
>
> On Tue, Oct 11, 2011 at 7:47 PM, Weihua JIANG <[email protected]>wrote:
>
>> Hi all,
>>
>> I have made some perf test about Hive+HBase. The table is a normal 2D
>> table with about 160M rows (each row with 7 small columns) and 32
>> regions. There is only one column family and all regions have been
>> major compacted to one store file before test.
>>
>> On a cluster with 11 task trackers (each with 4 map slots and 1 reduce
>> slot, these servers also act as region servers), a simple SQL in Hive
>>   select count(*) from table where column3='Y';
>> needs ~1700 seconds to finish.
>>
>> But, after use CTAS statement to create an internal table (stored as
>> sequence file), this statement only needs 43 seconds to finish.
>>
>> So Hive+HBase is 40X slower than Hive+HDFS.
>>
>> Though Hive+HBase has less map tasks (32 vs 223), but since there are
>> only 44 map slots available, I don't think it is the main cause.
>>
>> I studied the source code of HBase scan implementation. To me, it
>> seems, in my case, the scan performs HFile read in a quite similar way
>> as sequence file read (sequential reading of each key/value pair). So,
>> in theory, the performance shall be quite similar.
>>
>> Can anyone explain the 40X slowdown?
>>
>> Thanks
>> Weihua
>>
>

Reply via email to