What is Amazon S3 Tables?
Amazon S3 Tables is a feature of Amazon S3 that stores tabular data as fully managed Apache Iceberg tables. To do this, AWS introduces a dedicated bucket type: the table bucket, purpose-built for tabular data. Every AWS account can create table buckets and define access controls at the table level.
The service removes the operational burden of self-managed Iceberg tables in general-purpose S3 buckets. Instead of organizing compaction, snapshot management and the cleanup of old files yourself, S3 Tables performs these tasks automatically and policy-driven. This keeps Iceberg tables performant for large analytics workloads while you query them with standard SQL through common query engines.
Core Features
- Table buckets: A dedicated bucket type for tabular data with access control at the table level.
- Managed Apache Iceberg tables: Support for row-level transactions, queryable snapshots and schema evolution through the open Iceberg standard.
- Automatic maintenance: Continuous compaction, snapshot management and removal of unreferenced files without manual intervention.
- Multi-engine access: Access through the Iceberg REST Catalog API by Athena, Redshift, EMR/Spark, Trino, Flink and other Iceberg-compatible engines.
Typical Use Cases
Data lake analytics: Store business data as Iceberg tables and query it with standard SQL across Athena, Redshift or Spark. Automatic compaction keeps query performance stable even as the data volume grows.
Streaming and event data: Write continuously arriving data into Iceberg tables and update it transactionally at the row level. Compared with self-managed Iceberg tables in general-purpose buckets, AWS cites up to 10x higher transactions per second.
Multi-engine analytics: Through the Iceberg REST Catalog API, multiple engines access the same tables without duplicating data. This lets you combine AWS services and Iceberg-compatible tools like Snowflake on a single table foundation.
Benefits
- No operational effort for Iceberg maintenance: compaction and snapshot management run automatically.
- The open Apache Iceberg standard avoids lock-in and enables access by many engines.
- Better and more stable query performance than self-managed Iceberg tables in general-purpose S3 buckets.
Integration with innFactory
As an AWS Reseller, innFactory supports you with the adoption and operation of this service.
Typical Use Cases
Frequently Asked Questions
What is Amazon S3 Tables?
Amazon S3 Tables is a storage feature of Amazon S3 that stores tabular data as fully managed Apache Iceberg tables. It introduces a dedicated bucket type, the table bucket, purpose-built for tabular data. AWS handles the ongoing maintenance such as compaction, snapshot management and removal of unreferenced files.
When should I use Amazon S3 Tables?
S3 Tables fits when you want to run Iceberg tables for data lake analytics without managing the Iceberg maintenance yourself. Typical scenarios include SQL analytics across Athena, Redshift or Spark, storing streaming and event data, and multi-engine access through the Iceberg REST Catalog API.
How much does Amazon S3 Tables cost?
Billing is usage-based across several dimensions: stored data volume, requests, object monitoring and the processing of automatic compaction (charged per processed object and data volume). Current prices are published on the official S3 pricing page.
Which query engines does Amazon S3 Tables support?
S3 Tables builds on the open Apache Iceberg standard and is accessible through the Iceberg REST Catalog API. As a result, engines such as Amazon Athena, Amazon Redshift, Amazon EMR with Spark, Apache Trino, Apache Flink and Iceberg-compatible tools like Snowflake work with the same tables.