hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jonathan Gray <jg...@fb.com>
Subject RE: question about multi-transaction queries
Date Fri, 17 Dec 2010 19:15:21 GMT
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:magnito@gmail.com]
> Sent: Friday, December 17, 2010 11:01 AM
> To: user@hbase.apache.org
> 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 <stack@duboce.net> 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 <magnito@gmail.com> 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
> >>
> >

Mime
View raw message