Skip to main content
This quickstart demonstrates how to deliver data to, and query from, an externally managed Iceberg table stored in Amazon S3 Tables.

Prerequisites

  • A running RisingWave cluster (self-hosted or RisingWave Cloud) and access to run SQL.
  • AWS CLI configured with credentials (AK/SK).
  • Amazon S3 Tables is available in your region.
  • An existing S3 Tables Iceberg table.
If you don’t have a table bucket / namespace / table yet, create them by following Create Amazon S3 Tables with AWS CLI.

Demo: deliver to and read from an external Iceberg table in RisingWave

Set variables

If you created the table bucket + namespace using AWS CLI by following Create Amazon S3 Tables with AWS CLI, you should already have REGION, TABLE_BUCKET_ARN, and NAMESPACE, amd TABLE.

Start psql and pass parameters

This command opens an interactive psql session with variables preloaded.

Step 1: Create a sink to the external table

Step 2: Insert some rows

Step 3: Create a source and query the external table

Use DuckDB to query data

Cleanup (optional)

What you just built

  • A table that is managed by Amazon S3 Tables (catalog + storage), not by RisingWave.
  • RisingWave acting as both a writer (SINK) and a reader (SOURCE) through the Iceberg connector.
For reference, see Amazon S3 Tables catalog and Ingest data from Iceberg tables.