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

Andrew Purtell commented on PHOENIX-971:
----------------------------------------

bq. Let's also discuss if/how we can avoid having to deploy, orchestrate, 
monitor, etc, another Phoenix service for HBase. It's already a pain in the a** 
to run all the required services.

We did discuss one option above. James suggested:
{quote}
Since each RS can act as a Phoenix client, we could implement a thin client 
that sends the query from the client to the RS which would most likely handle 
at least part of the query. 
{quote}

If we want to retain cross version independence, the client would be super thin 
and send parsed SQL with bind variables.

If we use a coprocessor endpoint, this endpoint would then be a query client 
running embedded in the regionserver, marshaling and merge sorting the final 
results before sending them back to the client and endpoint RPC doesn't support 
streaming the results back. Nonstarter.

If we embed a new kind of RPC which can do streaming, this is reminiscent of 
when Facebook embedded Thrift service into the regionservers so they could have 
a native client talk Thrift to a cluster without a gateway/middle tier. They 
ultimately rejected this approach and reverted the changes because they really 
did need to insert a third tier and scale it independently of the regionserver 
fleet.

> Query server
> ------------
>
>                 Key: PHOENIX-971
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-971
>             Project: Phoenix
>          Issue Type: New Feature
>            Reporter: Andrew Purtell
>
> Host the JDBC driver in a query server process that can be deployed as a 
> middle tier between lighter weight clients and Phoenix+HBase. This would 
> serve a similar optional role in Phoenix deployments as the 
> [HiveServer2|https://cwiki.apache.org/confluence/display/Hive/Setting+Up+HiveServer2]
>  does in Hive deploys.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to