AWS Glue Iceberg catalog with OLake Go
The AWS Glue Data Catalog is the Iceberg catalog that Athena, Redshift and Spark on EMR read natively.
Short answer. To write Iceberg tables to AWS Glue, create an OLake Go destination with catalog_type: glue and an Amazon S3 path. It signs in with an IAM (Identity and Access Management) access key or IAM role. Athena, Redshift, Spark on EMR, Trino and DuckDB then read the same tables.
Key takeaways
Last reviewed October 2026.
How OLake Go writes to AWS Glue
OLake Go uses change data capture (CDC) where the source has it. It writes data files to S3 and registers each table in Glue. Glue itself is managed by AWS, so there is no catalog server to run.
The nine Redshift guides ran end to end on Glue. The Glue writer page holds the destination reference, and the Glue post is a longer walkthrough.
When to use it
- The data is on S3 and Athena, Redshift or EMR will read it.
- You want a managed catalog with AWS access control.
When not to use it
- Databricks is the main reader. It reads Glue tables only as read-only foreign tables through catalog federation.
- BigQuery is the main reader. Only BigQuery Omni federated datasets reach Glue.
What OLake Go needs
catalog_type:glue- Authentication OLake Go offers: IAM access key, IAM role.
- Full destination reference: AWS Glue setup.
Engines that read AWS Glue
| Engine | Reads | How |
|---|---|---|
| Amazon Athena | Yes | native: Glue Data Catalog |
| Amazon Redshift | Yes | external schema from the Glue Data Catalog |
| Apache Doris | Yes | iceberg.catalog.type glue |
| Apache Spark | Yes | type=glue |
| BigQuery | Partial | BigQuery Omni federated datasets only |
| ClickHouse | Yes | DataLakeCatalog with catalog_type glue (beta) |
| Databricks | Partial | foreign Iceberg tables through catalog federation (read-only) |
| DuckDB | Yes | ATTACH with ENDPOINT_TYPE glue (needs Lake Formation grants) |
| Presto | Yes | Hive catalog type with hive.metastore=glue |
| Snowflake | Yes | catalog integration (read-only) |
| Spark on Amazon EMR | Yes | native: Glue Data Catalog |
| Starburst | Yes | Glue catalog |
| StarRocks | Yes | iceberg.catalog.type glue |
| Trino | Yes | iceberg.catalog.type=glue |
Each engine row comes from that engine's vendor documentation. The dated sources are on the engine's page, linked in the first column.
Guides that use AWS Glue
- Postgres to Snowflake (documented, not run on this catalog)
- MySQL to Snowflake (documented, not run on this catalog)
- MongoDB to Snowflake (documented, not run on this catalog)
- Oracle to Snowflake (documented, not run on this catalog)
- SQL Server to Snowflake (documented, not run on this catalog)
- DB2 to Snowflake (documented, not run on this catalog)
- MariaDB to Snowflake (documented, not run on this catalog)
- Kafka to Snowflake (documented, not run on this catalog)
- S3 to Snowflake (documented, not run on this catalog)
- Postgres to Amazon Redshift
- Oracle to Amazon Redshift
- Kafka to Amazon Redshift
- MySQL to Amazon Redshift
- MongoDB to Amazon Redshift
- MariaDB to Amazon Redshift
- S3 to Amazon Redshift
- SQL Server to Amazon Redshift
- DB2 to Amazon Redshift
Frequently asked questions
How does OLake Go authenticate to AWS Glue?
With an IAM access key or an IAM role. The Glue writer page lists the permissions.
Which engines read Glue tables natively?
Athena, Redshift and Spark on EMR. Trino, Spark, DuckDB, ClickHouse, Doris, StarRocks and Presto connect through their own Glue settings.
Can Snowflake read Glue tables?
Yes, through a read-only catalog integration. The Snowflake guides document Glue next to Horizon.