Configure Redshift Spectrum for External Tables
This page explains how to configure Amazon Redshift Spectrum to query Parquet files stored in Amazon S3 using the AWS Glue Data Catalog. Complete this configuration only if you want to persist data quality policy results to Global Storage (S3) while running Redshift Serverless policies in Pushdown engine mode. If you are not using Global Storage (S3) persistence with the Pushdown engine, you can skip this configuration.
If your environment is governed by AWS Lake Formation, also complete the Lake Formation steps in this guide. Otherwise, those steps can be skipped.
1. Create the Spectrum IAM role
1.1 Configure the trust policy
Create an IAM role with the following trust policy:
1.2 Attach the permissions policy
Attach the following permissions policy to the IAM role:
Notes
If AWS Lake Formation is not used, remove the entire
LakeFormationCredentialVendingstatement from the policy.Replace all placeholder values (
<region>,<account-id>,<your-bucket-name>) before creating the role.
2. Associate the IAM role with Redshift
2.1 Provisioned Redshift cluster
Navigate to:
AWS Console → Amazon Redshift → Clusters → Your Cluster → Properties → Cluster permissions → Manage IAM roles → Associate IAM roles
Select the Spectrum IAM role created in Step 1.
2.2 Redshift Serverless
Navigate to:
AWS Console → Amazon Redshift → Serverless → Your Namespace → Security and encryption → Manage IAM roles
Associate the Spectrum IAM role created in Step 1.
3. Configure AWS Lake Formation (optional)
Complete this section only if your Glue Data Catalog is governed by AWS Lake Formation.
3.1 Register the S3 data location
Navigate to:
AWS Console → Lake Formation → Data lake locations → Register location
Configuration:
Amazon S3 path:
s3://<your-bucket-name>/<prefix>/IAM role: Spectrum IAM role created in Step 1
Permission mode: Lake Formation
3.2 Grant database permissions
Navigate to:
Lake Formation → Data lake permissions → Grant
Configuration:
Principal: Spectrum IAM role
Resource type: Named Data Catalog resources
Database:
adoc_resultsPermissions:
DESCRIBE,CREATE_TABLE
Leave Grantable permissions unchecked.
3.3 Grant table permissions
Complete this step after creating the external table (Step 5).
Navigate to:
Lake Formation → Data lake permissions → Grant
Configuration:
Principal: Spectrum IAM role
Database:
adoc_resultsTable:
policy_records(or All tables if preferred)Permissions:
SELECT,INSERT,ALTER
4. Create the external schema
Connect to Redshift using an administrative user and execute:
5. Create the external table
Execute the following SQL statement:
Notes
The
LOCATIONmust match the S3 prefix that will be configured in the ADOC datasource.If AWS Lake Formation is enabled, complete Step 3.3 after the table has been created.
Once this configuration is complete, return to Amazon Redshift to configure the Redshift Serverless data source with Pushdown engine mode and enable Global Storage persistence on your data quality policies.
For additional help, contact www.acceldata.force.com OR call our service desk +1 844 9433282
Copyright © 2025