Connect to Apache Druid in Analyst Studio
Supported JDBC drivers and known issues
Driver |
Driver Release Date |
Analyst Studio Removal Date |
(Recommended) Apache Avatica 1.25.0 |
4/5/2024 |
|
Apache Avatica 1.23.0 |
1/19/2023 |
|
Apache Avatica 1.18.0 |
5/18/2021 |
|
Apache Avatica 1.17.0 |
6/21/2020 |
The following are known issues with the current supported drivers. Analyst Studio continues to advocate on our customers' behalf for vendors and open-source communities to resolve these issues.
| Driver | Known Issue | Further Details |
|---|---|---|
Avatica 1.17.0 |
Druid fetch size limited to 100 |
Druid JDBC driver only returns 100 rows per batch, resulting in longer-than-expected query response times. There is a server-side fix that can be applied. |
Avatica 1.17.0 |
Druid Basic Authentication is unsupported |
Analyst Studio currently requires Druid connections over Bridge. |
Avatica 1.17.0 |
Connection context properties are unsupported |
Analyst Studio currently does not support changing the Druid broker’s setting for the connection via JDBC properties. |
Avatica 1.17.0 |
Only Druid SQL support |
When connecting to Druid via JDBC, only Druid SQL syntax is supported. Native (json-type) query syntax will result in errors. |
Avatica 1.17.0 |
Druid SQL limitations |
Not all Druid features are supported via Druid SQL and JDBC connectivity. Please see the Druid docs. |
Avatica 1.17.0 |
Single Schema Support |
Analyst Studio’s Schema Browser will surface only tables found in the default |
Avatica 1.17.0 |
Query cancellation is unsupported |
Druid supports cancellation for native (json-type) queries, but not for Druid SQL queries. If users attempt to cancel a query in the Analyst Studio UI, the query run will not be interrupted. The driver does not return an error, so Analyst Studio is unable to surface anything to the user. |
Connecting to Analyst Studio
When connecting Druid to Analyst Studio, fill out the connection form as follows:
-
Display name: the name of the connection used in the Schema Browser.
-
Description: optional additional context viewable in Connection Management.
-
Host: the route of the Druid cluster Broker, as specified in the broker/runtime.properties file.
-
Port: the port of the Broker. The default port is 8082. If your cluster is secured by SSL, the default port is 8182.
-
Preferred JDBC Driver: the Avatica 1.17.0 driver is the only current driver.
-
Disable transport encryption: Analyst Studio strongly recommends that transport encryption be enabled and that Druid be configured to use TLS v.1.2. If disabled, connections between the Bridge connector and your database will not be encrypted.
Please note the following limitation of broker connection stickiness over JDBC:
"Druid’s JDBC server does not share connection state between Brokers. This means that if you’re using JDBC and have multiple Druid Brokers, you should either connect to a specific Broker, or use a load balancer with sticky sessions enabled. The Druid Router process provides connection stickiness when balancing JDBC requests, and can be used to achieve the necessary stickiness even with a normal non-sticky load balancer."