Standard

S3 Directory Bucket

A specialized S3 bucket type with a hierarchical directory namespace — forward slash is a true directory boundary, not a delimiter — optimized for high-request-rate workloads. Required for S3 Express One Zone. Bucket names carry an AZ suffix (`--x-s`). ETags are random alphanumeric strings, not MD5. `ListObjectsV2` abandons lexicographical sorting for raw throughput. Multipart uploads require consecutive part numbers. Object tags are unsupported.

9 connections 5 resources 1 post

Summary

What it is

A specialized S3 bucket type with a hierarchical directory namespace — forward slash is a true directory boundary, not a delimiter — optimized for high-request-rate workloads. Required for S3 Express One Zone. Bucket names carry an AZ suffix (`--x-s`). ETags are random alphanumeric strings, not MD5. `ListObjectsV2` abandons lexicographical sorting for raw throughput. Multipart uploads require consecutive part numbers. Object tags are unsupported.

Where it fits

Traditional S3 uses a flat namespace where prefix-based listing scans all matching keys. Directory buckets use actual directories with fast LIST operations and materialize `dir1/dir2/` paths during PutObject, eliminating the listing bottleneck for workloads with millions of objects in deep hierarchies. This is the infrastructure layer beneath S3 Express One Zone's single-digit millisecond latency.

Misconceptions / Traps
  • Directory buckets are not general-purpose S3 buckets. No object tags means tag-driven lifecycle rules don't apply. No MD5 in ETags breaks integrity checks that assume the standard ETag shape.
  • Zonal endpoints demand AZ affinity. Cross-AZ compute access causes severe latency outliers — empirically up to 7,570ms for PUT operations in misconfigured Next.js CDN deployments.
  • Single-AZ only. Not appropriate for primary storage without replication.
  • Deleting an object recursively removes empty parent directories, unlike flat-namespace buckets where virtual prefixes persist after deletion. Don't rely on prefix presence as a sentinel.
Key Connections
  • enables S3 Express One Zone — required bucket type
  • solves Object Listing Performance — hierarchical namespace eliminates prefix scanning
  • solves Directory Namespace / Listing Bottlenecks — real directory primitives, not virtual prefixes
  • alternative_to S3 API — departs from the flat-namespace contract in several places
  • constrained_by S3 Compatibility Drift — behavior diverges from standard buckets in ways that break some clients

Definition

What it is

A specialized S3 bucket type that uses a hierarchical directory-based namespace instead of S3's traditional flat key-value namespace. The forward slash operates as a functional directory boundary rather than a delimiter character — uploading `dir1/dir2/file1.txt` materializes real `dir1/` and `dir2/` directory constructs during PutObject. Required for S3 Express One Zone and optimized for millions of requests per second per bucket.

Why it exists

S3's flat namespace uses prefix-based listing that scales poorly for workloads with millions of objects in deep hierarchies. Directory buckets provide actual directory structure with fast listing, eliminating the prefix-scan bottleneck for high-throughput analytical and AI workloads.

Primary use cases

High-performance storage for S3 Express One Zone, latency-sensitive ML checkpointing, Spark/Trino cache tier with fast metadata operations, GPU training checkpoint synchronization across thousands of nodes.

Recent developments

Latest signals
  • Up to 2,000,000 GET / 200,000 PUT requests/sec per directory bucket. Single bucket caps confirmed by AWS — 10× higher than General Purpose buckets. Default is 200K reads + 100K writes/sec; higher tiers via support request. Per AWS Docs — Directory bucket high-performance workloads.
  • 10× faster data access, 80% lower request cost vs S3 Standard. S3 Express One Zone's headline performance pitch (single-digit-millisecond p99 latency) holds in production benchmarks. Per AWS — S3 Express One Zone storage class page.
  • S3 Inventory support added (April 2026) — Directory Buckets get governance parity with GP buckets. S3 Inventory was the headline feature gap; now closed. Latency-sensitive applications can audit + reconcile bucket contents the same way as general-purpose buckets. Per AWS — S3 Express One Zone now supports S3 Inventory.
  • Instantaneous directory scaling cuts HTTP 503 errors at high concurrency. Directories scale per-directory rather than per-prefix — applications parallelize reads/writes both within and across directories without the 503 throttling pattern that plagues high-fanout writes to flat-namespace buckets. Per AWS — Optimizing directory bucket performance.
  • Co-locate storage + compute in the same AZ for max perf. The single-AZ constraint is also the lever — pinning EC2/EKS/Lambda to the same AZ as the directory bucket collapses network latency to LAN scale + eliminates cross-AZ data transfer cost. Per AWS — S3 Express One Zone Availability Zones and Regions.
  • Standard pattern in 2026 production: ML checkpointing + Spark/Trino cache + GPU training sync. AWS Builder content names these as the three workloads where Directory Bucket + Express One Zone pairing wins decisively over Standard buckets — latency-sensitive transient writes where the AZ constraint is a non-issue. Per AWS Builder — S3 Express One Zone and Directory Bucket.

Connections 9

Outbound 8
Inbound 1

Resources 5

Featured in