Configure a Redshift Warehouse to Query Iceberg Tables
This guide details the manual setup steps required to configure a Redshift connection to query Iceberg tables. This guide assumes that the general Iceberg setup has already been done.
Note
Streaming ingestion relies on incrementally refreshing materialized views on the Iceberg tables for fast queries. These are currently only available in the preview version of Redshift.
- Create a cluster on the preview track following steps 1-6 here .
- Create an IAM role that Redshift will use to access Glue and S3 by following the steps under To create an IAM role for Amazon Redshift here and note down the ARN.
- Associate the IAM role with your Redshift cluster by following the steps here .
- Using a Redshift query editor, configure an external schema, with the following replacements:
- GLUE_DATABASE_NAME is the Glue database you created in step 1.2 of the Iceberg Connection Setup guide.
- REDSHIFT_IAM_ROLE_ARN is the ARN of the role you created in step 2 of this guide.
- AWS_ACCOUNT_ID is your 12-digit account ID.
- AWS_REGION is the region the resources have been created in.
CREATE EXTERNAL SCHEMA iceberg_dev FROM DATA CATALOG DATABASE 'GLUE_DATABASE_NAME' IAM_ROLE 'REDSHIFT_IAM_ROLE_ARN' REGION 'AWS_REGION' CATALOG_ID 'AWS_ACCOUNT_ID';
- Create a Redshift connection in Etleap here .