Except, there is NO traditional interface for HBase. We have the choice to build whatever interface we want.

I think the fundamental difference between Thrift/REST and an HQL socket server would be the TYPE of the interface. Thrift/REST mostly matches the existing underlying API (Thrift more so than REST), but HQL requires us to develop and maintain a whole SQL-like syntax, and to redefine our operations in terms of SQL, and figure out good ways to manage bulk of data that can be returned, and it wouldn't even be aligned with any known standard, so completely fresh client libraries for every language. It just seems like a lot more effort for what results in a more complex interface than we get with our other efforts.

On Dec 8, 2007, at 3:36 AM, edward yoon wrote:


My notebook have both USB port and PS/2 port.
But, the maker didn't say PS/2 port is a unnecessary thing.

Premature withdrawal of traditional interface will guarantee failure.

Thanks,
Edward.
------------------------------
B. Regards,

Edward yoon @ NHN, corp.
Home : http://www.udanax.org

From: [EMAIL PROTECTED]
To: hadoop-user@lucene.apache.org
Date: Fri, 7 Dec 2007 22:44:51 -0800
Subject: Re: Talking to HBase via tcp/socket


The heavy lifting in this exercise is mainly in designing the RPC calls themselves - after that, it is probably a simple matter of programming.

Anyone want to take a crack at it?

Chad


On 12/7/07 11:52 AM, "Bryan Duxbury"  wrote:

There's nothing stopping us from creating REST "methods" for creating/
deleting tables. That's mostly a question of whether or not we want
to expose the functionality elsewhere than the shell. You could
create a ticket for that and we can discuss it.

I agree that XML can be heavy, which is why we are implementing the
ability to use the "Accept: multipart/related" header to get back the
data as pure binary with boundaries. This should alleviate the
overhead of using XML for the most part.

Hey, I hardly know Java, and I'm hacking all sorts of stuff!
Seriously though, I think that as far as performant cross-platform
access goes, the future is a Thrift servlet. I don't have a timeline
on that at all yet.

-Bryan

On Dec 7, 2007, at 11:44 AM, Thiago Jackiw wrote:

The are a few reasons why I wanted to go with Socket instead of REST,
to name a couple:

- By applying Edward's patch I was able to gain access to the 'entire'
HBase interface, from creating to deleting tables, etc, which I
couldn't do with REST. Is this flexibility something sought for future
development?
- Performance gain. Working with xml can sometimes be problematic
and 'heavy'.

I would suggest exploring building a Thrift servlet that mimics
the structure of the REST servlet
That could work if I knew Java :P

Anyhow, despite HBase being pretty new, it sure kicks ass. Kudos to
you guys.

--
Thiago


On Dec 7, 2007 10:42 AM, Bryan Duxbury  wrote:
What's the motivation for using straight a straight TCP socket rather
than REST? The motivation behind producing a REST interface in the
first place is that since the client still lives in Java, then we get
to take advantage of all the built-in Java client work that's been
done. If you're looking for a more lightweight way to interact with
HBase (since REST can be a little heavy at times), then rather than
go the HQL route, I would suggest exploring building a Thrift servlet
that mimics the structure of the REST servlet. This is something
that's been discussed as a next step for HBase interoperability.

-Bryan


On Dec 6, 2007, at 8:25 PM, Thiago Jackiw wrote:

Is there a way to interact with HBase via TCP/socket connection
directly instead of just using the REST api?

Thanks






_________________________________________________________________
You keep typing, we keep giving. Download Messenger and join the i’m Initiative now.
http://im.live.com/messenger/im/home/?source=TAGLM

Reply via email to