Standalone JDBC Cluster Types

This document is intended for architects, cluster operators, and end users interested in connecting to ODAS cluster services through a ODBC/JDBC endpoint.

Starting with the 1.4 release, ODAS now offers a standalone cluster configuration that encapsulates the Presto service. This service includes a Coordinator component, which doubles as a web UI and JDBC endpoint, and worker components that are co-located with ODAS Workers. Clients that connect to a query engine through ODBC/JDBC, such as Tableau, PowerBI, Excel, and others, can now connect directly to ODAS and run queries.

Okera supports authentication of this service with Java Web Tokens (JWT) and LDAP services, significantly reducing the complexity of configuring Presto for use. The access controls available through a configured ODAS service are immediately available and transparent to users on these client tools.

Configuring a Standalone JDBC Cluster

This configuration is available as a separate cluster type, called STANDALONE_JDBC_CLUSTER'. To create one, you can use the ocadm clusters create` command with the following parameters:.

ocadm clusters create --name=<Name> --numNodes=<Number of nodes> \
  --type=<Cluster type> --environmentid=<ID from environments create>

For example:

./ocadm clusters create --name=bi_prod --numNodes=4 \
  --type=STANDALONE_JDBC_CLUSTER --environmentid=5

The value for environmentid cannot match the number of a cluster already created.

Verifying Cluster Services

A standalone JDBC cluster adds two components to the standalone type, one presto_coordinator:clusterui endpoint per cluster and one presto_worker:internal endpoint per Worker node. You can verify these services by running the ocadm clusters endpoint command and giving the cluster’s environmentid value. The full service list should include:

No. Service Accessible
1 Canary Yes
2 ZooKeeper No
3 Catalog Yes
4 Planner Yes
5 Worker Yes
6 REST Server Yes
7 Web UI Yes
8 Presto Worker No
9 Presto UI Yes

Configuring ODBC/JDBC Client Tools

Consult your client tool documentation to get the right ODBC driver. For example, the Tableau driver is available here. The PowerBI driver is available here. Okera provides the JDBC driver JAR for download from https://s3.amazonaws.com/okera-release-useast/1.4.0/client/presto-jdbc-0.214.jar.

You must also enable SSL for this JDBC endpoint to work. Using SSL relies on digital certificate to work. For ease of implementation, ODAS will implement a self-signed, wildcard certificate for the cluster if one is not already in place. Consult your client tool documentation for any settings you need to:

  • Enable SSL
  • Allow self-signed certificates
  • Allow common name (CN) and hostname mismatches

The default port for the Presto Coordinator UI service is 14050. Once you have the FQDN or IP address of the host, you can connect to Presto with the following string:

jdbc:presto://<host>:14050/recordservice

Note that recordservice names the schema representing the ODAS Catalog.