Support for Impala JDBC connector

Cloudera Data Warehouse offers support for a read-only Impala JDBC connector designed to facilitate SELECT operations on Impala sources. It optimizes query execution performance by pushing down filters, limits, and complex aggregates directly to the source database, taking full advantage of Impala's Massively Parallel Processing (MPP) runtime architecture.

Key features and capabilities

Supported data types
  • Numeric: TINYINT, SMALLINT, INTEGER, BIGINT, REAL, DOUBLE, and DECIMAL(p,s)
  • Character: CHAR, VARCHAR (bounded and unbounded), and STRING
  • Date or Time: DATE and TIMESTAMP
Constraints related to character data types
The connector supports precise schema discovery and runtime query handling through type-safe mappings between the Trino and Impala character data layers (CHAR, VARCHAR, and STRING). However, query behavior varies significantly based on character data lengths and padding semantics, requiring strict enforcement of evaluation rules at either the source or engine level to prevent data mismatches.

Workaround: The connector completely bypasses source-level pushdown for the fixed-length CHAR data type, opting to fetch the raw data directly from Impala and evaluate the conditional filters in memory on the Trino coordinator or worker nodes.

Query optimization
To maximize cluster execution efficiency and balance engine workloads, query operations are evaluated and selectively pushed down to the source database based on the verified Trino capabilities matrix:

Fully pushdown:

The connector supports pushdown for a number of operations:

  • Predicate pushdown
  • Limit pushdown
  • Top-N pushdown
  • Join pushdown

Aggregate pushdown for the following functions:

  • avg()
  • count() also count(distinct x)
  • min()
  • max()
  • sum()

Additionally, pushdown is supported for advanced statistical metrics with the following functions:

  • stddev()
  • variance()
  • covariance()
  • correlation()

Not Pushed Down:

The connector does not support pushdown for the following operations:

  • Predicate pushdown on CHAR columns
  • Join pushdown (IS DISTINCT FROM)
  • Push down of statistical linear regression functions
Limitations and unsupported operations

This connector is strictly read-only. Attempting any of the following will trigger a NOT_SUPPORTED exception:

  • DML operations: INSERT, UPDATE, DELETE, and MERGE are blocked.
  • DDL operations: CREATE SCHEMA, CREATE TABLE, DROP SCHEMA, and RENAME SCHEMA are not permitted.
  • JDBC connection pooling: Configuration and reuse metrics for integrated connection pooling are currently unsupported for the Impala JDBC connector.