All of my experience doing something like this was with straight Java. There are MultiGet and MultiPut capabilities in the Java client that will help you out significantly.
I played with Jython and HBase a couple years ago and back then the performance was horrible. I never looked back but I have no idea if it's gotten better in the meantime. JG > -----Original Message----- > From: Jack Levin [mailto:[email protected]] > Sent: Friday, December 17, 2010 11:01 AM > To: [email protected] > Subject: Re: question about multi-transaction queries > > Lets just say its one row key with two columns. Non contiguous records. We > want to read as fast as possible. So we did some tests, and with MongoDB > the random reads of 1000 records is about 80ms. > While HBASE with jython is 400ms or so. > Question is, as we develop our applications what is the best method to > retrieve many rows the fastest way possible? We are talking about 1 client > here, not many clients. For many clients, REST seems to be appropriate, but > here we have a Frontend server rendering content quickly and we need to > reduce the query overhead for HBASE and get data fast. > > -Jack > > On Sat, Dec 11, 2010 at 10:55 AM, Stack <[email protected]> wrote: > > How many columns? Its columns right, and not column families? > > > > Are the 1k rows contiguous? Can you Scan? For insert of 1k rows, you > > know how to do that now, right? Will they be substantial rows -- 10s > > to 100s of ks? -- or just small? Do you have multiput available in > > the REST interface, I don't recall. > > > > Try REST since you know that interface. Jython might be faster though > > a test done more than a year ago had jython as slow > > (http://ryantwopointoh.blogspot.com/2009/01/performance-of-hbase- > impor > > ting.html) but a bunch has changed since then -- hbase-wise and jython > > has probably gotten a lot better. If jython route, make sure you keep > > the interpreter afloat rather than launch it per request (so yes, > > fastcgi would make sense). > > > > St.Ack > > > > On Fri, Dec 10, 2010 at 9:59 PM, Jack Levin <[email protected]> wrote: > >> Hello. We plan to run a set of queries on tables with multiple > >> columns. What is the most efficient method to say, insert 1000 rows, > >> and/or read 1000 rows. > >> We are considering just using REST. But what about jython? Will it > >> be faster? Another way to have our apps talk to nginx and some sort > >> of app tier running via fast-cgi. > >> > >> Any ideas? > >> > >> -Jack > >> > >
