Return-Path: Delivered-To: apmail-lucene-hadoop-user-archive@locus.apache.org Received: (qmail 64560 invoked from network); 8 Dec 2007 17:44:38 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 8 Dec 2007 17:44:38 -0000 Received: (qmail 59961 invoked by uid 500); 8 Dec 2007 17:44:20 -0000 Delivered-To: apmail-lucene-hadoop-user-archive@lucene.apache.org Received: (qmail 59953 invoked by uid 500); 8 Dec 2007 17:44:20 -0000 Mailing-List: contact hadoop-user-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: hadoop-user@lucene.apache.org Delivered-To: mailing list hadoop-user@lucene.apache.org Received: (qmail 59941 invoked by uid 99); 8 Dec 2007 17:44:20 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 08 Dec 2007 09:44:20 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of bryan@rapleaf.com designates 208.96.16.213 as permitted sender) Received: from [208.96.16.213] (HELO mail.rapleaf.com) (208.96.16.213) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 08 Dec 2007 17:44:18 +0000 Received: from mail.rapleaf.com (localhost.localdomain [127.0.0.1]) by mail.rapleaf.com (Postfix) with ESMTP id 72DC154C789 for ; Sat, 8 Dec 2007 09:43:56 -0800 (PST) DomainKey-Signature: a=rsa-sha1; h=Received:Mime-Version:In-Reply-To:References:Content-Type:Message-Id:Content-Transfer-Encoding:From:Subject:Date:To:X-Mailer; b=ERzrNJemzftoRvcMOGDoERvVPoxBawRh5n9vKjA+JI/rd14wxm72Smy/ch57+WsWeoT8pnipbfU40BH/2QxZiS4QGwezh2hdiHQWcRENFoMJny3HgHDMgKrixzjywi+MSzsYj/Uzzt1Yj6vcHzgWsJLUvZ6+f9Bt5wOoRmkwl7A=; c=nofws; d=rapleaf.com; q=dns; s=m1 Received: from [192.168.1.132] (unknown [192.168.1.132]) by mail.rapleaf.com (Postfix) with ESMTP id 5DB7254C76F for ; Sat, 8 Dec 2007 09:43:56 -0800 (PST) Mime-Version: 1.0 (Apple Message framework v752.3) In-Reply-To: References: <886BC992-360C-49CA-A6A6-35F946841A91@rapleaf.com> Content-Type: text/plain; charset=WINDOWS-1252; delsp=yes; format=flowed Message-Id: <481DF4CC-542F-43FF-BED7-C97BCBAF74B9@rapleaf.com> Content-Transfer-Encoding: quoted-printable From: Bryan Duxbury Subject: Re: Talking to HBase via tcp/socket Date: Sat, 8 Dec 2007 09:43:54 -0800 To: hadoop-user@lucene.apache.org X-Mailer: Apple Mail (2.752.3) X-Virus-Checked: Checked by ClamAV on apache.org Except, there is NO traditional interface for HBase. We have the =20 choice to build whatever interface we want. I think the fundamental difference between Thrift/REST and an HQL =20 socket server would be the TYPE of the interface. Thrift/REST mostly =20 matches the existing underlying API (Thrift more so than REST), but =20 HQL requires us to develop and maintain a whole SQL-like syntax, and =20 to redefine our operations in terms of SQL, and figure out good ways =20 to manage bulk of data that can be returned, and it wouldn't even be =20 aligned with any known standard, so completely fresh client libraries =20= for every language. It just seems like a lot more effort for what =20 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: chad@powerset.com >> 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 =20 >> calls themselves - after that, it is probably a simple matter of =20 >> 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 =20 >> 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 =20 >>> REST, >>> to name a couple: >>> >>> - By applying Edward's patch I was able to gain access to the =20 >>> 'entire' >>> HBase interface, from creating to deleting tables, etc, which I >>> couldn't do with REST. Is this flexibility something sought for =20 >>> 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 =20 >>>> rather >>>> than REST? The motivation behind producing a REST interface in the >>>> first place is that since the client still lives in Java, then =20 >>>> 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 =20 >>>> 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 =20 > i=92m Initiative now. > http://im.live.com/messenger/im/home/?source=3DTAGLM