We are proud to share our inclusion in the 2024 Gartner Magic Quadrant for Data Integration Tools. We believe this recognition reflects the differentiated business outcomes CData delivers to our customers.
Get the Report →Connect to Phoenix Data in JRuby
Create a simple JRuby app with access to live Phoenix data.
JRuby is a high-performance, stable, fully threaded Java implementation of the Ruby programming language. The CData JDBC Driver for Phoenix makes it easy to integrate connectivity to live Phoenix data in JRuby. This article shows how to create a simple JRuby app that connects to Phoenix data, executes a query, and displays the results.
Configure a JDBC Connection to Phoenix Data
Before creating the app, note the installation location for the JAR file for the JDBC Driver (typically C:\Program Files\CData\CData JDBC Driver for Phoenix\lib).
JRuby natively supports JDBC, so you can easily connect to Phoenix and execute SQL queries. Initialize the JDBC connection with the getConnection function of the java.sql.DriverManager class.
Connect to Apache Phoenix via the Phoenix Query Server. Set the Server and Port (if different from the default port) properties to connect to Apache Phoenix. The Server property will typically be the host name or IP address of the server hosting Apache Phoenix.
Authenticating to Apache Phoenix
By default, no authentication will be used (plain). If authentication is configured for your server, set AuthScheme to NEGOTIATE and set the User and Password properties (if necessary) to authenticate through Kerberos.
Built-in Connection String Designer
For assistance in constructing the JDBC URL, use the connection string designer built into the Phoenix JDBC Driver. Either double-click the JAR file or execute the jar file from the command-line.
java -jar cdata.jdbc.apachephoenix.jar
Fill in the connection properties and copy the connection string to the clipboard.

Below is a typical JDBC connection string for Phoenix:
jdbc:apachephoenix:Server=localhost;Port=8765;
Create a JRuby App with Connectivity to Phoenix Data
Create a new Ruby file (for example: ApachePhoenixSelect.rb) and open it in a text editor. Copy the following code into your file:
require 'java'
require 'rubygems'
require 'C:/Program Files/CData/CData JDBC Driver for Phoenix 2018/lib/cdata.jdbc.apachephoenix.jar'
url = "jdbc:apachephoenix:Server=localhost;Port=8765;"
conn = java.sql.DriverManager.getConnection(url)
stmt = conn.createStatement
rs = stmt.executeQuery("SELECT Id, Column1 FROM MyTable")
while (rs.next) do
puts rs.getString(1) + ' ' + rs.getString(2)
end
With the file completed, you are ready to display your Phoenix data with JRuby. To do so, simply run your file from the command line:
jruby -S ApachePhoenixSelect.rb
Writing SQL-92 queries to Phoenix allows you to quickly and easily incorporate Phoenix data into your own JRuby applications. Download a free trial today!