accumulo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Wall (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ACCUMULO-490) Provide REST-ful Web Service
Date Fri, 23 Mar 2012 02:30:21 GMT

    [ https://issues.apache.org/jira/browse/ACCUMULO-490?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13236284#comment-13236284
] 

Michael Wall commented on ACCUMULO-490:
---------------------------------------

I have been thinking about this very problem for quite some time.  What is the suggested approach,
Thrift?  I have some JRuby classes that wrap an earlier version of Accumulo's Java API and
had hoped to find time to port that to the latest version.  It would then be fairly easy to
add a Rails app on top of that and provide a RESTful interface.  The Rails app could easily
run on the JVM via JRuby.  I envisioned an API like this:

GET table/colf/colq
PUT table/colf/colq with the data being the value for a new record
POST table/colf/colq with data being the value to update a record
GET table/colf?startcolq=abc&endcolq=def
DELETE table/colf/colq

We could return xml, json, or whatever by adding a .json or .xml to the request.  Handling
authentication might take some work.  Need to provide a way to give the user column visibilities.
 I have some generic ideas there as well.  I haven't worked out in my mind yet how to handle
paging.

Expanding that, we could then provide client libraries in different languages, like the MongoDB
drivers.  If we provided a Javascript one, we would need to support JSONP, Dojo's window.name
transport or some other hack to get around Javascript's SOP restriction so you could POST,
PUT and GET from a different host. 

I have no idea how this approach would compare to a Thrift service.  Whatever the design,
I would love to help work on this.  
                
> Provide REST-ful Web Service
> ----------------------------
>
>                 Key: ACCUMULO-490
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-490
>             Project: Accumulo
>          Issue Type: New Feature
>            Reporter: David Medinets
>            Priority: Minor
>
> This web service will:
>  - provide cross language compatibility.
>  - provide data access without direct access to nodes.
>  - provide work-around for port restrictions.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message