diff --git a/S3-Table-Bucket.md b/S3-Table-Bucket.md index 03e5340..0315f7e 100644 --- a/S3-Table-Bucket.md +++ b/S3-Table-Bucket.md @@ -6,6 +6,29 @@ SeaweedFS supports **Amazon S3 Tables**, providing a dedicated interface for man This feature implements the **Iceberg REST Catalog API**, allowing direct integration with analytics engines like Apache Spark, Trino, Dremio, DuckDB, and RisingWave without needing an external catalog service. +## Why Table Buckets: Lakehouse in a Box + +A typical Iceberg lakehouse stitches together three separate systems: + +``` +Spark / Trino -> Hive Metastore / AWS Glue -> S3 / MinIO + (engine) (catalog service) (object store) +``` + +SeaweedFS collapses the catalog and object store into a single system: + +``` +Spark / Trino -> SeaweedFS (Iceberg REST Catalog + S3 storage) +``` + +This removes an entire tier from the stack, with practical benefits: + +- **Fewer moving parts** — no Hive Metastore, no Glue, no separate REST catalog service to deploy, secure, back up, and upgrade. +- **Simpler deployments** — one system serves both data and metadata, ideal for smaller teams and on-prem stacks. `weed mini` brings up an end-to-end lakehouse on a laptop in seconds. +- **Lower latency** — catalog calls and data reads hit the same cluster, with no extra network hop to an external metastore. +- **Local and air-gapped lakehouses** — full Iceberg support with no cloud-native dependency, running identically on a laptop, on-prem, or in cloud. +- **Unified IAM** — the same S3 bucket policies that protect your objects govern table, namespace, and catalog access (see [[S3 Tables Security]]). + ## Key Features - **Dedicated Management**: Separate API namespace (`s3tables`) for managing table buckets, distinct from standard S3 bucket operations.