Author: stoty Date: Fri Aug 6 09:42:16 2021 New Revision: 1892036 URL: http://svn.apache.org/viewvc?rev=1892036&view=rev Log: Update PQS docs for 6.0.0
Modified: phoenix/site/publish/language/datatypes.html phoenix/site/publish/language/functions.html phoenix/site/publish/language/index.html phoenix/site/publish/server.html phoenix/site/source/src/site/markdown/server.md Modified: phoenix/site/publish/language/datatypes.html URL: http://svn.apache.org/viewvc/phoenix/site/publish/language/datatypes.html?rev=1892036&r1=1892035&r2=1892036&view=diff ============================================================================== --- phoenix/site/publish/language/datatypes.html (original) +++ phoenix/site/publish/language/datatypes.html Fri Aug 6 09:42:16 2021 @@ -1,7 +1,7 @@ <!DOCTYPE html> <!-- - Generated by Apache Maven Doxia at 2021-08-03 + Generated by Apache Maven Doxia at 2021-08-06 Rendered using Reflow Maven Skin 1.1.0 (http://andriusvelykis.github.io/reflow-maven-skin) --> <html xml:lang="en" lang="en"> Modified: phoenix/site/publish/language/functions.html URL: http://svn.apache.org/viewvc/phoenix/site/publish/language/functions.html?rev=1892036&r1=1892035&r2=1892036&view=diff ============================================================================== --- phoenix/site/publish/language/functions.html (original) +++ phoenix/site/publish/language/functions.html Fri Aug 6 09:42:16 2021 @@ -1,7 +1,7 @@ <!DOCTYPE html> <!-- - Generated by Apache Maven Doxia at 2021-08-03 + Generated by Apache Maven Doxia at 2021-08-06 Rendered using Reflow Maven Skin 1.1.0 (http://andriusvelykis.github.io/reflow-maven-skin) --> <html xml:lang="en" lang="en"> Modified: phoenix/site/publish/language/index.html URL: http://svn.apache.org/viewvc/phoenix/site/publish/language/index.html?rev=1892036&r1=1892035&r2=1892036&view=diff ============================================================================== --- phoenix/site/publish/language/index.html (original) +++ phoenix/site/publish/language/index.html Fri Aug 6 09:42:16 2021 @@ -1,7 +1,7 @@ <!DOCTYPE html> <!-- - Generated by Apache Maven Doxia at 2021-08-03 + Generated by Apache Maven Doxia at 2021-08-06 Rendered using Reflow Maven Skin 1.1.0 (http://andriusvelykis.github.io/reflow-maven-skin) --> <html xml:lang="en" lang="en"> Modified: phoenix/site/publish/server.html URL: http://svn.apache.org/viewvc/phoenix/site/publish/server.html?rev=1892036&r1=1892035&r2=1892036&view=diff ============================================================================== --- phoenix/site/publish/server.html (original) +++ phoenix/site/publish/server.html Fri Aug 6 09:42:16 2021 @@ -1,7 +1,7 @@ <!DOCTYPE html> <!-- - Generated by Apache Maven Doxia at 2021-07-05 + Generated by Apache Maven Doxia at 2021-08-06 Rendered using Reflow Maven Skin 1.1.0 (http://andriusvelykis.github.io/reflow-maven-skin) --> <html xml:lang="en" lang="en"> @@ -169,22 +169,33 @@ <div class="page-header"> <h1>Phoenix Query Server</h1> </div> -<p>The Phoenix Query Server provides an alternative means for interaction with Phoenix and HBase. Soon this will enable access from environments other than the JVM.</p> +<p>The Phoenix Query Server provides an alternative means for interaction with Phoenix and HBase. </p> <div class="section"> <h2 id="Overview">Overview</h2> - <p>Phoenix 4.4 introduces a stand-alone server that exposes Phoenix to âthinâ clients. It is based on the <a class="externalLink" href="https://calcite.apache.org/avatica">Avatica</a> component of <a class="externalLink" href="https://calcite.apache.org">Apache Calcite</a>. The query server is comprised of a Java server that manages Phoenix Connections on the clientsâ behalf. The client implementation is currently a JDBC driver with minimal dependencies. Two transport mechanisms are current supported: JSON and Protocol Buffers (available as of Phoenix 4.7 as the default). Thereâs also a sqlline script that uses the thin client.</p> - <p>Avatica is still relatively early in its life-cycle. With the introduction of the Protobuf transport, Avatica is moving towards backwards compatibility with the provided thin JDBC driver. There are no such backwards compatibility guarantees for the JSON API.</p> + <p>Phoenix 4.4 introduces a stand-alone server that exposes Phoenix to âthinâ clients. It is based on the <a class="externalLink" href="https://calcite.apache.org/avatica">Avatica</a> component of <a class="externalLink" href="https://calcite.apache.org">Apache Calcite</a>. The query server is comprised of a Java server that manages Phoenix Connections on the clientsâ behalf. </p> + <p>With the introduction of the Protobuf transport, Avatica is moving towards backwards compatibility with the provided thin JDBC driver. There are no such backwards compatibility guarantees for the JSON API.</p> <p>To repeat, there is no guarantee of backwards compatibility with the JSON transport; however, compatibility with the Protobuf transport is stabilizing (although, not tested thoroughly enough to be stated as âguaranteedâ).</p> + <div class="section"> + <h3 id="Clients">Clients</h3> + <p>The primary client implementation is currently a JDBC driver with minimal dependencies. The default and primary transport mechanism since Phoenix 4.7 is Protobuf, the older JSON mechanism can still be enabled. The distribution includes the sqlline-thin.py CLI client that uses the JDBC thin client.</p> + <p>The Phoenix project also maintains the Python driver <a class="externalLink" href="https://phoenix.apache.org/python.html">phoenixdb</a>.</p> + <p>The Avatica <a class="externalLink" href="https://calcite.apache.org/avatica/docs/go_client_reference.html">Go client</a> can also be used.</p> + <p>Proprietary ODBC drivers are also available for Windows and Linux.</p> + </div> </div> <div class="section"> <h2 id="Installation">Installation</h2> - <p>In the 4.x and 5.0 releases the query server and its JDBC client are part of the standard Phoenix distribution. They require no additional dependencies.</p> - <p>After the 5.0 release, the query server has been unbundled into the phoenix-queryserver repository, and its version number has been reset to 1.0. At the time of writing there is no released version of the standalone query server.</p> + <p>In the 4.4-4.14 and 5.0 releases the query server and its JDBC client are part of the standard Phoenix distribution. They require no additional dependencies or installation.</p> + <p>After the 4.15 and 5.1 release, the query server has been unbundled into the phoenix-queryserver repository, and its version number has been reset to 6.0.</p> + <p>Download the latest source or binary release from the <a class="externalLink" href="https://phoenix.apache.org/download.html">Download page</a>, or check out the development version from <a class="externalLink" href="https://github.com/apache/phoenix-queryserver">github</a></p> + <p>Either unpack the binary distribution, or build it from source. See BUILDING.md in the source distribution on how to build.</p> </div> <div class="section"> <h2 id="Usage">Usage</h2> <div class="section"> <h3 id="Server">Server</h3> + <p>The standalone Query Server distribution does not contain the necessary Phoenix (thick) client library by default.</p> + <p>If using the standalone library you will either need to rebuild it from source to include the client library (See BUILDING.md), or manually copy the phoenix thick client library into the installation directory.</p> <p>The server component is managed through <tt>bin/queryserver.py</tt>. Its usage is as follows</p> <div class="source"> <pre>bin/queryserver.py [start|stop] @@ -193,11 +204,11 @@ <p>When invoked with no arguments, the query server is launched in the foreground, with logging directed to the console.</p> <p>The first argument is an optional <tt>start</tt> or <tt>stop</tt> command to the daemon. When either of these are provided, it will take appropriate action on a daemon process, if it exists.</p> <p>Any subsequent arguments are passed to the main class for interpretation.</p> - <p>The server is packaged in a standalone jar, <tt>phoenix-server-<version>-runnable.jar</tt>. This jar and <tt>HBASE_CONF_DIR</tt> on the classpath are all that is required to launch the server.</p> + <p>The server is packaged in a standalone jar, <tt>phoenix-queryserver-<version>.jar</tt>. This jar, the phoenix-client.jar and <tt>HBASE_CONF_DIR</tt> on the classpath are all that is required to launch the server.</p> </div> <div class="section"> <h3 id="Client">Client</h3> - <p>Phoenix provides two mechanisms for interacting with the query server. A JDBC driver is provided in the standalone <tt>phoenix-<version>-thin-client.jar</tt>. The script <tt>bin/sqlline-thin.py</tt> is available for the command line.</p> + <p>Phoenix provides two mechanisms for interacting with the query server. A JDBC driver is provided in the standalone <tt>phoenix-queryserver-client-<version>.jar</tt>. The script <tt>bin/sqlline-thin.py</tt> is available for the command line.</p> <p>The JDBC connection string is composed as follows:</p> <div class="source"> <pre>jdbc:phoenix:thin:url=<scheme>://<server-hostname>:<port>[;option=value...] @@ -285,7 +296,7 @@ log4j.logger.org.eclipse.jetty.server=IN <td colspan="3"><b>Configurations relating to HTTPS.</b></td> </tr> <tr class="b"> - <td colspan="3"><i>HTTPS support is only available in the unbundled phoenix-queryserver 1.0.0-SNAPSHOT version at the time of writing.</i></td> + <td colspan="3"><i>HTTPS support is only available in the unbundled phoenix-queryserver versions.</i></td> </tr> <tr class="a"> <td><b>Property</b></td> Modified: phoenix/site/source/src/site/markdown/server.md URL: http://svn.apache.org/viewvc/phoenix/site/source/src/site/markdown/server.md?rev=1892036&r1=1892035&r2=1892036&view=diff ============================================================================== --- phoenix/site/source/src/site/markdown/server.md (original) +++ phoenix/site/source/src/site/markdown/server.md Fri Aug 6 09:42:16 2021 @@ -1,20 +1,17 @@ # Phoenix Query Server The Phoenix Query Server provides an alternative means for interaction with -Phoenix and HBase. Soon this will enable access from environments other than -the JVM. +Phoenix and HBase. + ## Overview Phoenix 4.4 introduces a stand-alone server that exposes Phoenix to "thin" clients. It is based on the [Avatica](https://calcite.apache.org/avatica) component of [Apache Calcite](https://calcite.apache.org). The query server is comprised of a Java server that -manages Phoenix Connections on the clients' behalf. The client implementation -is currently a JDBC driver with minimal dependencies. Two transport mechanisms -are current supported: JSON and Protocol Buffers (available as of Phoenix 4.7 -as the default). There's also a sqlline script that uses the thin client. +manages Phoenix Connections on the clients' behalf. -Avatica is still relatively early in its life-cycle. With the introduction of the +With the introduction of the Protobuf transport, Avatica is moving towards backwards compatibility with the provided thin JDBC driver. There are no such backwards compatibility guarantees for the JSON API. @@ -23,19 +20,50 @@ To repeat, there is no guarantee of back however, compatibility with the Protobuf transport is stabilizing (although, not tested thoroughly enough to be stated as "guaranteed"). +### Clients + +The primary client implementation +is currently a JDBC driver with minimal dependencies. The default and +primary transport mechanism since Phoenix 4.7 is Protobuf, the older JSON mechanism can still +be enabled. +The distribution includes the sqlline-thin.py CLI client that uses the JDBC thin client. + +The Phoenix project also maintains the Python driver +[phoenixdb](https://phoenix.apache.org/python.html). + +The Avatica [Go client](https://calcite.apache.org/avatica/docs/go_client_reference.html) +can also be used. + +Proprietary ODBC drivers are also available for Windows and Linux. + + ## Installation -In the 4.x and 5.0 releases the query server and its JDBC client are part of the standard Phoenix -distribution. They require no additional dependencies. +In the 4.4-4.14 and 5.0 releases the query server and its JDBC client are part of the standard Phoenix +distribution. They require no additional dependencies or installation. + +After the 4.15 and 5.1 release, the query server has been unbundled into the phoenix-queryserver +repository, and its version number has been reset to 6.0. + +Download the latest source or binary release from the +[Download page](https://phoenix.apache.org/download.html), +or check out the development version from +[github](https://github.com/apache/phoenix-queryserver) -After the 5.0 release, the query server has been unbundled into the phoenix-queryserver -repository, and its version number has been reset to 1.0. At the time of writing -there is no released version of the standalone query server. +Either unpack the binary distribution, or build it from source. See BUILDING.md +in the source distribution on how to build. ## Usage ### Server +The standalone Query Server distribution does not contain the necessary +Phoenix (thick) client library by default. + +If using the standalone library you will either need to rebuild it from source to include the +client library (See BUILDING.md), or manually copy the phoenix thick client library +into the installation directory. + The server component is managed through `bin/queryserver.py`. Its usage is as follows @@ -51,14 +79,14 @@ process, if it exists. Any subsequent arguments are passed to the main class for interpretation. The server is packaged in a standalone jar, -`phoenix-server-<version>-runnable.jar`. This jar and `HBASE_CONF_DIR` on the +`phoenix-queryserver-<version>.jar`. This jar, the phoenix-client.jar and `HBASE_CONF_DIR` on the classpath are all that is required to launch the server. ### Client Phoenix provides two mechanisms for interacting with the query server. A JDBC driver is provided in the standalone -`phoenix-<version>-thin-client.jar`. The script +`phoenix-queryserver-client-<version>.jar`. The script `bin/sqlline-thin.py` is available for the command line. The JDBC connection string is composed as follows: @@ -170,8 +198,7 @@ configuration. <td colspan="3"><b>Configurations relating to HTTPS.</b></td> </tr> <tr> - <td colspan="3"><em>HTTPS support is only available in the unbundled phoenix-queryserver 1.0.0-SNAPSHOT -version at the time of writing.</em></td> + <td colspan="3"><em>HTTPS support is only available in the unbundled phoenix-queryserver versions.</em></td> </tr> <tr><td><b>Property</b></td><td><b>Description</b></td><td><b>Default</b></td></tr> <tr>