Nick Dimiduk created HBASE-13278:
------------------------------------
Summary: Toward a "thinner" client
Key: HBASE-13278
URL: https://issues.apache.org/jira/browse/HBASE-13278
Project: HBase
Issue Type: Brainstorming
Components: Client, regionserver
Reporter: Nick Dimiduk
Here's a strawman proposal I've been thinking about lately.
A stateless HTTP interface that runs on every RS and enables a client
application to communicate with the cluster using just libcurl. This interface
provides an interface for admin commands identical to existing REST gateway.
Region location information is managed via http response codes/redirects.
Redirects bounce the client to the correct host for a given region when
available. The implementation doesn't suffer the "drinking through a straw"
issues of our current gateway interfaces. No longer is a client ZK connection
required, everything can be found via this API. Every machine in the cluster
can run this service, so a client needs limited information to be able to
interact with the cluster.
A relatively performant client such as our Java client will require complexity
for parallelism, location caching, &c., but a relatively naive client can be
stood up relatively simply.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)