Connect to Apache Iceberg
Connect RisingWave to your Apache Iceberg tables for batch ingestion.
This guide explains how to connect RisingWave to your Apache Iceberg tables for batch data ingestion. RisingWave supports reading data from Iceberg tables stored on S3-compatible storage (including AWS S3 and MinIO) and Google Cloud Storage (GCS).
Prerequisites
- An existing Apache Iceberg table.
- Access credentials for the underlying storage system (e.g., S3 access key and secret key).
- Network connectivity between RisingWave and your storage system.
- Know your Iceberg catalog type.
Connection methods
RisingWave supports connecting to Iceberg using CREATE SOURCE
.
Currently, RisingWave does not support creating a table backed by an Iceberg table using CREATE TABLE ... WITH (connector=...)
. If you create a table to store data, and ingest from the Iceberg source, the table is not an Iceberg table.
Basic connection example (S3)
The following example shows how to connect to an Iceberg table stored on S3:
Replace the placeholders with your actual values.
Query data
You can query data from source directly.
Data type mapping
RisingWave converts data types from Iceberg to RisingWave according to the following table:
Iceberg Type | RisingWave Type |
---|---|
boolean | boolean |
integer | int |
long | bigint |
float | real |
double | double |
string | varchar |
date | date |
timestamptz | timestamptz |
timestamp | timestamp |
decimal | decimal |
Time travel
RisingWave’s Iceberg source supports time travel. Please refer to Apache Iceberg configuration options for more details.
System tables
RisingWave offers system tables to query Iceberg metadata. Please refer to Apache Iceberg configuration options for more details.
What’s next?
- All configuration options: Apache Iceberg configuration options
Was this page helpful?