[ https://issues.apache.org/jira/browse/HADOOP-2068?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12541097 ]
stack commented on HADOOP-2068: ------------------------------- HADOOP-2171 strikes me as a little odd. A client sends HQL to a server that parses the HQL to run HTable client operations against hbase. There are no load savings over running shell on client machine that I can see. I don't see a problem having the master handle REST requests. Master is generally lightly loaded. It will take a lot of traffic to make it break a sweat. The masters REST load would add the master fielding HTTP redirects -- a minor imposition. Should the REST load become burdensome, folks could put up an intermediary serve or take the load off the master by making their clients smarter doing HTable-like caching of data locations. > [hbase] RESTful interface > ------------------------- > > Key: HADOOP-2068 > URL: https://issues.apache.org/jira/browse/HADOOP-2068 > Project: Hadoop > Issue Type: New Feature > Components: contrib/hbase > Reporter: stack > Priority: Minor > > A RESTful interface would be one means of making hbase accessible to clients > that are not java. It might look something like the below: > + An HTTP GET of http://MASTER:PORT/ outputs the master's attributes: online > meta regions, list of tables, etc.: i.e. what you see now when you go to > http://MASTER:PORT/master.jsp. > + An HTTP GET of http://MASTER:PORT/TABLENAME: 200 if tables exists and > HTableDescription (mimetype: text/plain or text/xml) or 401 if no such table. > HTTP DELETE would drop the table. HTTP PUT would add one. > + An HTTP GET of http://MASTER:PORT/TABLENAME/ROW: 200 if row exists and 401 > if not. > + An HTTP GET of http://MASTER:PORT/TABLENAME/ROW/COLUMNFAMILY: > HColumnDescriptor (mimetype: text/plain or text/xml) or 401 if no such table. > + An HTTP GET of http://MASTER:PORT/TABLENAME/ROW/COLUMNNAME/: 200 and latest > version (mimetype: binary/octet-stream) or 401 if no such cell. HTTP DELETE > would delete the cell. HTTP PUT would add a new version. > + An HTTP GET of http://MASTER:PORT/TABLENAME/ROW/COLUMNNAME/TIMESTAMP: 200 > (mimetype: binary/octet-stream) or 401 if no such cell. HTTP DELETE would > remove. HTTP PUT would put this record. > + Browser originally goes against master but master then redirects to the > hosting region server to serve, update, delete, etc. the addressed cell -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.