All Products
Search
Document Center

Hologres:Holo Client

Last Updated:Mar 26, 2026

Holo Client is a proprietary interface developed by Hologres, based on Java Database Connectivity (JDBC). It is designed for high-throughput data writes and high queries-per-second (QPS) point queries against Hologres, adding batching and query optimization for workloads where JDBC alone is not sufficient.

Holo Client does not replace the JDBC interface. For online analytical processing (OLAP) queries, use the JDBC interface instead.

Core capabilities

Holo Client is optimized for two primary workloads:

Workload Description
High-throughput writes Holo Client automatically collects records into batches before writing. This enables high-performance batch and real-time writes of large data volumes. DELETE and UPDATE operations based on primary keys are also supported.
High-QPS point queries Holo Client is optimized for dimension table joins that require many point queries per second.

In addition to these two core workloads, Holo Client provides:

  • Automatic partition routing: Data is written to the correct partition automatically. You do not need to create partitions in advance.

  • Binlog subscription: Subscribe to Hologres binary logging (Binlog) for real-time data consumption, similar to the JDBC interface.

  • Multi-language support: Java, C, and Go are supported.

Add Holo Client to your project

Holo Client is open source. Each version is published to the Maven Central repository. For available versions, see Holo Client releases.

Declare Holo Client as a dependency using your build tool. Replace VERSION with the version you want to use.

Maven

<dependency>
    <groupId>com.alibaba.hologres</groupId>
    <artifactId>holo-client</artifactId>
    <version>VERSION</version>
</dependency>

Gradle

implementation 'com.alibaba.hologres:holo-client:VERSION'

FAQ

Why does `select hologres.hg_internal_refresh_meta(xxx);` show high latency in slow query logs?

Holo Client uses the hg_internal_refresh_meta function to fetch table metadata from the instance. When Data Definition Language (DDL) operations happen frequently, the function waits until the current node's metadata version is updated before returning — which can take a significant amount of time.

If you see many of these high-latency statements in your slow query logs, DDL operations are running too often on the instance. Reduce the frequency of DDL operations to keep metadata versions consistent across nodes.