hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Haidinyak <phaidin...@local.com>
Subject RE: Insert into tall table 50% faster than wide table
Date Wed, 22 Dec 2010 23:52:03 GMT
Interesting, do you know what the time difference would be on the other side, doing a lookup/scan?



-----Original Message-----
From: Bryan Keller [mailto:bryanck@gmail.com] 
Sent: Wednesday, December 22, 2010 3:41 PM
To: user@hbase.apache.org
Subject: Insert into tall table 50% faster than wide table

I have been testing a couple of different approaches to storing customer orders. One is a
tall table, where each order is a row. The other is a wide table where each customer is a
row, and orders are columns in the row. I am finding that inserts into the tall table, i.e.
adding rows for every order, is roughly 50% faster than inserts into the wide table, i.e.
adding a row for a customer and then adding columns for orders.

In my test, there are 10,000 customers, each customer has 600 orders and each order has 10
columns. The tall table approach results in 6 mil rows of 10 columns. The wide table approach
results is 10,000 rows of 6,000 columns. I'm using hbase 0.89-20100924 and hadoop 0.20.2.
I am adding the orders using a Put for each order, submitted in batches of 1000 as a list
of Puts.

Are there techniques to speed up inserts with the wide table approach that I am perhaps overlooking?

View raw message