Learning Hub

A collection of tutorials, best practices, case studies and hands-on how-to guides, focused on Cloud Technologies, Artificial Intelligence, Game Development, and Robotics Engineering.

Tutorials •  Best Practices •  Case Studies •  How-To

AWS Core Services: S3 Fundamentals

By William Do October 21, 2025 Posted in Tutorials
AWS Core Services: S3 Fundamentals

Amazon Simple Storage Service (S3) stands as one of the cornerstone services within AWS, providing scalable object storage that has revolutionised how organisations store and retrieve data in the cloud. [1] Since its launch in 2006, S3 has evolved from a basic storage service into a sophisticated platform that now stores over 350 trillion objects whilst processing millions of requests per second. [2]

Understanding S3’s Core Architecture

At its foundation, S3 operates as an object storage service rather than traditional block or file storage. This architectural decision means you store entire files as objects rather than breaking them into blocks or managing a file system hierarchy. Each object consists of the data itself, metadata describing the object, and a unique identifier called a key. [3]

The service employs a flat structure where you create buckets (containers for objects) and the bucket stores objects directly. Whilst S3 doesn’t implement a true hierarchical file system, you can simulate folder structures using prefixes and delimiters in object key names. [4] The S3 console leverages these prefixes to present a familiar folder-based interface, but fundamentally, these remain part of the object’s key name.

Object keys can contain up to 1,024 bytes of Unicode characters, and they’re case-sensitive. When you organise objects using prefixes (strings at the beginning of the key name), S3 can optimise performance by automatically partitioning data based on request patterns. [5] Each partitioned prefix supports up to 3,500 PUT/COPY/POST/DELETE requests or 5,500 GET/HEAD requests per second, with no limit to the number of prefixes you can use.

Extreme Durability and Availability

S3’s reputation rests significantly on its exceptional durability guarantees. The service is designed to provide 99.999999999% (11 nines) durability, which translates to an average loss of just one object every 10,000 years when storing 10 million objects. [6]

This remarkable durability stems from multiple engineering strategies. S3 automatically replicates data across at least three physically separate Availability Zones within a region. [7] Each Availability Zone consists of one or more discrete data centres with independent power supplies and networking infrastructure, providing isolation from failures.

Beyond replication, S3 employs erasure coding, a sophisticated technique that splits data into chunks called data shards along with parity information. This approach allows S3 to reconstruct data even if multiple storage devices fail simultaneously. The service also implements continuous integrity checking on every object upload, verifying that data is correctly stored before confirming success. [8]

Storage Classes: Architectural Decisions for Different Use Cases

S3 offers multiple storage classes, each optimised for specific access patterns and business requirements. Understanding these classes is crucial for making informed architectural decisions.

S3 Standard: High-Performance General Purpose Storage

S3 Standard serves as the default storage class for frequently accessed data, delivering low latency and high throughput performance. [9] From an architectural perspective, this class suits applications where data access patterns are unpredictable or highly frequent. Content distribution networks, dynamic web applications, and big data analytics platforms typically rely on S3 Standard because the overhead of retrieval charges would outweigh any storage savings from cheaper tiers.

Consider a media streaming service that serves video thumbnails and metadata. These assets require immediate access with every user interaction, making S3 Standard the logical choice despite higher storage costs. The consistent performance and lack of retrieval fees align with the business requirement for responsive user experiences.

S3 Express One Zone: Ultra-Low Latency for Performance-Critical Workloads

S3 Express One Zone represents the newest high-performance option, purpose-built to deliver consistent single-digit millisecond data access. [10] This class stores data in a single Availability Zone, trading multi-AZ redundancy for exceptional performance.

Machine learning training workloads exemplify the ideal use case. When training models, data scientists need rapid access to massive datasets with consistent low latency. The performance benefits outweigh the reduced redundancy because training data can typically be regenerated or restored from other sources. Similarly, interactive analytics platforms that require sub-10ms query responses benefit significantly from Express One Zone’s performance characteristics.

S3 Intelligent-Tiering: Automated Cost Optimisation

S3 Intelligent-Tiering automatically optimises costs by moving objects between access tiers based on changing patterns. [11] It monitors access and transitions objects that haven’t been accessed for 30 consecutive days to an Infrequent Access tier, and after 90 days to an Archive Instant Access tier. [12]

This class proves invaluable for organisations with unpredictable or evolving access patterns. A document management system, for instance, might store thousands of files where some remain heavily accessed whilst others languish untouched. Rather than manually analysing usage patterns and implementing lifecycle policies, Intelligent-Tiering handles optimisation automatically. The trade-off involves a small monthly monitoring fee per object, making it less suitable for billions of tiny objects but excellent for moderate volumes of varied-size files.

S3 Standard-Infrequent Access and One Zone-Infrequent Access

These classes cater to data accessed less than once monthly but requiring rapid retrieval when needed. [13] Standard-IA provides multi-AZ resilience, whilst One Zone-IA reduces costs by storing data in a single Availability Zone.

Backup systems represent a classic use case. Consider a company maintaining monthly database backups. These backups sit dormant most of the time, but when a restore is needed, speed matters critically. Standard-IA provides the right balance: lower storage costs than S3 Standard, but immediate access without the delays inherent in archival storage. The multi-AZ durability ensures backup integrity.

One Zone-IA suits scenarios where data is easily reproducible or represents secondary copies. A video transcoding pipeline might store intermediate processing files in One Zone-IA. If an Availability Zone failure occurs, the system can simply re-transcode from source files rather than paying for multi-AZ redundancy on temporary working data.

Glacier Storage Classes: Deep Archival for Compliance and Long-Term Retention

S3 provides three Glacier classes for archival storage. [14] Glacier Instant Retrieval offers millisecond access to rarely accessed data, Glacier Flexible Retrieval provides retrieval times from minutes to hours, and Glacier Deep Archive delivers the lowest-cost storage with retrieval times up to 12 hours.

Regulatory compliance drives much of the demand for archival storage. Financial institutions must retain transaction records for years, rarely accessing them except during audits. Glacier Flexible Retrieval strikes the ideal balance: dramatically reduced storage costs for data that might only be accessed once or twice annually, with retrieval times measured in hours rather than days.

Healthcare organisations storing medical imaging provide another compelling example. Patient scans must be retained for legal reasons but typically only accessed if that specific patient returns. Glacier Instant Retrieval allows immediate access when needed whilst dramatically reducing storage costs compared to Standard storage.

Deep Archive suits truly cold data. Consider a media company’s archive of raw footage from decades past. This content has historical value but minimal access likelihood. The extremely low storage costs justify the 12-hour retrieval time for the rare occasions when someone needs to access this material.

Security and Access Control

Security in S3 operates through multiple complementary mechanisms. By default, all S3 resources remain private, accessible only to the user or account that created them. [15] Since April 2023, AWS automatically enables S3 Block Public Access for all new buckets and disables Access Control Lists (ACLs), implementing security best practices by default. [16]

Access management relies primarily on IAM policies and bucket policies. IAM policies attach to users, groups, or roles and grant permissions to access S3 resources, whilst bucket policies attach directly to specific buckets and define cross-account access or fine-grained controls.

For encryption, S3 automatically encrypts all new object uploads using server-side encryption with S3-managed keys (SSE-S3) unless you specify an alternative. [17] Additional encryption options include SSE-KMS (using AWS Key Management Service for enhanced control and auditability), SSE-C (using customer-provided keys), and client-side encryption where you encrypt data before upload. All data transfers use SSL/TLS to protect data in transit.

Versioning and Data Protection

S3 versioning provides powerful protection against accidental deletions and overwrites. When enabled at the bucket level, S3 automatically generates a unique version ID for each object. [18] This allows you to preserve, retrieve, and restore every version of every object stored in your bucket.

Deleting a versioned object doesn’t remove it permanently. Instead, S3 places a delete marker on the object, allowing you to recover it later. You can list all versions of an object and restore any previous version by removing the delete marker or specifying the version ID you want to retrieve.

From an architectural standpoint, versioning is essential for any data where recovery from user error or application bugs is critical. Configuration files, application binaries, and business-critical documents all benefit from versioning. You can implement lifecycle policies to automatically delete or transition older versions to cheaper storage classes, balancing protection with cost management.

Advanced Features and Recent Updates

Recent innovations have expanded S3’s capabilities significantly. S3 Metadata, which became generally available in January 2025, automatically captures and maintains queryable metadata about objects in near real-time. [19] This enables sophisticated data cataloguing without building custom metadata management systems.

S3 Tables provides analytics-optimised storage for tabular data, supporting Apache Iceberg format and offering simplified table management. [20] This bridges the gap between object storage and database-like query patterns, enabling data lake architectures without complex ETL pipelines.

S3 also supports conditional writes, allowing you to check for object existence before creation, preventing unintended overwrites. Cross-Region Replication enables automatic copying of objects between buckets in different regions, supporting disaster recovery and compliance requirements. [21]


Amazon S3 has matured into an exceptionally robust platform that balances durability, performance, and cost-effectiveness. Its 11 nines durability guarantee, achieved through sophisticated replication and erasure coding across multiple Availability Zones, provides unparalleled data protection. The diverse storage classes cater to virtually any access pattern and business requirement, from ultra-low latency performance to deep archival storage. Whether you’re building data lakes, hosting static websites, maintaining compliance archives, or powering machine learning applications, S3 provides the foundational storage infrastructure to support modern cloud-native architectures. The key to effective S3 usage lies not in choosing the cheapest storage class, but in matching storage characteristics to your specific access patterns, durability requirements, and business objectives.

References


  1. Amazon S3 – Cloud Object Storage.
  2. How Amazon S3 Stores 350 Trillion Objects with 11 Nines of Durability.
  3. Amazon S3 Storage Classes Overview.
  4. Naming Amazon S3 Objects - Amazon Simple Storage Service.
  5. Organizing Objects Using Prefixes - Amazon S3.
  6. Amazon S3 FAQs - Durability and Data Protection.
  7. Object Storage Classes – Amazon S3 Durability.
  8. How Amazon S3 Achieves 99.999999999% Durability.
  9. Amazon S3 Storage Classes - S3 Standard.
  10. Understanding and Managing Amazon S3 Storage Classes.
  11. Amazon S3 Storage Classes - S3 Intelligent-Tiering.
  12. Amazon S3 Intelligent-Tiering Access Tiers.
  13. Amazon S3 Storage Classes - Infrequent Access.
  14. The Ultimate Guide to Amazon S3 Pricing 2025 - Glacier Classes.
  15. Optimize S3 Security & Data Management - Private by Default.
  16. Amazon S3 Security Changes - April 2023.
  17. Amazon S3 Security Features - Automatic Encryption.
  18. Optimize S3 Security & Data Management - S3 Versioning.
  19. Amazon S3 Metadata Now Generally Available.
  20. Amazon S3 Tables - Apache Iceberg Support.
  21. New Amazon S3 Encryption & Security Features.


You Might Also Like