All Products
Search
Document Center

Hologres:Hologres source table

Last Updated:Mar 26, 2026

Use a Hologres table as a data source in a Flink exclusive mode job. By default, the connector scans the entire table once in batch mode and stops — it does not pick up data written after the scan begins. For continuous ingestion from Hologres, see Subscribe to Hologres binary logs.

Scan source: Bounded

Prerequisites

Before you begin, ensure that you have:

  • A Flink exclusive mode job running version 3.6 or later

  • A Hologres instance with a VPC endpoint in ip:port format

  • An Alibaba Cloud AccessKey ID and AccessKey secret

Flink exclusive mode versions earlier than 3.6 do not support Hologres as a data source. To use an older version, obtain the Hologres connector JAR file from the Hologres exchange DingTalk group by contacting technical support. For details, see How do I get more online support?.

Limitations

  • The Holo-blink connector supports reading a Hologres source table and joining it with a dimension table.

  • By default, only row-store tables are supported as a source. To read from a column-store table, set bulkread='true'.

  • Row-store tables with a primary key must also have the primary key configured as a clustering key.

    begin;
    create table test(a int primary key, b text, c text[], d float8, e int8);
    call set_table_property('test', 'orientation', 'row');
    call set_table_property('test', 'clustering_key', 'a');
    commit;

DDL definition

Use the following Data Definition Language (DDL) statement to create a Hologres source table:

CREATE TABLE holo_dim_table
(
    pk VARCHAR
    ,seller_id VARCHAR
    ,seller_bc_type VARCHAR
    ,seller_tag  VARCHAR
    ,PRIMARY KEY (pk)
) WITH (
    type = 'hologres',
    `endpoint` = '<yourEndpoint>',   -- VPC endpoint of the Hologres instance, in ip:port format
    `username` = '<yourUsername>',   -- AccessKey ID of your Alibaba Cloud account
    `password` = '<yourPassword>',   -- AccessKey secret of your Alibaba Cloud account
    `dbname` = '<yourDbname>',       -- Hologres database name
    `tablename` = '<yourTablename>', -- Hologres table name
    `bulkread` = 'true'              -- Set to true to read from a column-store table
);
PlaceholderDescriptionWhere to find it
<yourEndpoint>VPC endpoint of the Hologres instance, in ip:port formatHologres console > instance page > Network Information
<yourUsername>AccessKey ID of your Alibaba Cloud accountAccessKey Management console
<yourPassword>AccessKey secret of your Alibaba Cloud accountAccessKey Management console
<yourDbname>Name of the Hologres database
<yourTablename>Name of the Hologres table

WITH clause parameters

ParameterRequiredDefaultDescription
typeYeshologresType of the data source.
dbnameYesName of the Hologres database.
tablenameYesName of the Hologres table.
usernameYesAccessKey ID of your Alibaba Cloud account.
passwordYesAccessKey secret of your Alibaba Cloud account.
endpointYesVPC endpoint of the Hologres instance, in ip:port format. Find this in the Network Information section of the instance page in the Hologres console.
bulkreadYesSet to true to read from a column-store table. Set to false to read from a row-store table only.

Batch read mode

By default (bulkread=false), the connector reads from a row-store table. If you need to read from a column-store table, set bulkread='true'.

When using a row-store table with a primary key, you must configure the primary key as a clustering key. See the example in Limitations.

Data type mapping

For more information about the data type mapping between Flink exclusive mode and Hologres, see Data types.

Real-time consumption of Hologres binary logs

Flink exclusive mode 3.7 and later supports real-time consumption of Hologres binary logs through the Hologres connector. For details, see Consume Hologres binary logs in real time using Flink/Blink.

What's next