Skip to content

Chapter 5 of 8

Storage on AWS

Amazon S3 is the object storage workhorse of AWS. It provides strong read-after-write consistency for all GET, PUT, LIST, and DELETE operations, so applications no longer need to handle eventual consistency for object listings or updates. Files larger than 100 MB should use multipart upload, which splits the object into parts of 5 MB to 5 GB, up to 10,000 parts, enabling parallel uploads, resumability, and objects up to 5 TB. Pre-signed URLs, generated with IAM credentials, grant temporary access to download or upload specific objects and inherit the permissions of the creating principal, with a configurable expiration.

For lifecycle and compliance, S3 versioning keeps multiple variants of objects in the same bucket and cannot be disabled once enabled, only suspended, at which point deletes become reversible delete markers. Lifecycle rules automatically transition objects to other storage classes or expire them based on age, prefix, or tag. Available storage classes include STANDARD, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_INSTANT_RETRIEVAL, GLACIER_FLEXIBLE_RETRIEVAL, GLACIER_DEEP_ARCHIVE, and EXPRESS_ONEZONE, each balancing cost, durability, and retrieval latency. Object Lock enforces WORM semantics through retention periods or legal holds, must be enabled at bucket creation, and complies with SEC 17a-4. Cross-Region Replication (CRR) or Same-Region Replication (SRR) copies new and optionally existing objects to a destination bucket and requires versioning plus an IAM role with s3:Replicate permissions. S3 Transfer Acceleration speeds long-distance uploads and downloads by routing data through CloudFront edge locations onto the AWS backbone.

For cold archives, Amazon S3 Glacier offers retrieval options from minutes (Expedited) to many hours (Bulk), with Glacier Deep Archive providing the lowest cost at the price of 12–48 hour retrieval. Glacier Instant Retrieval is the archive class to reach for when millisecond retrieval is required.

Block and shared file storage are covered by EBS, EFS, and FSx. An EBS volume is durable block storage that attaches to a single EC2 instance in one AZ; snapshots are stored incrementally in S3 and are AZ-independent. For general SSD workloads, gp3 offers a baseline of 3,000 IOPS and 125 MB/s, scalable to 16,000 IOPS and 1,000 MB/s, while io1/io2 provisioned-IOPS volumes are tuned for high-I/O databases and io2 Block Express reaches 256,000 IOPS per volume on Nitro instances. Throughput-optimized st1 and cold sc1 volumes serve throughput and cold HDD needs. Amazon EFS provides a fully managed elastic NFS file system for Linux that scales automatically, while FSx offers managed file systems with options for Windows File Server (SMB), Lustre (HPC), NetApp ONTAP, and OpenZFS.

All chapters
  1. 1AWS Foundations and the Shared Responsibility Model
  2. 2Identity, Access, and Authentication
  3. 3Compute, Containers, and Deployment
  4. 4Serverless with Lambda
  5. 5Storage on AWS
  6. 6Networking and Application Delivery
  7. 7Databases, Messaging, and Event-Driven Integration
  8. 8Observability, Security, and DevOps Practices

Drill it

Reading is not remembering. These come from the AWS Developer Associate Dva C02 deck:

Q

What does the AWS shared responsibility model define?

The division of security responsibilities between AWS (security OF the cloud: infrastructure, hardware, regions, services) and the customer (security IN the clo...

Q

Which AWS service is required to launch an EC2 instance?

An AMI (Amazon Machine Image), an instance type, a VPC with subnet, a security group, an IAM role/credentials, and optionally key pair and EBS volume.

Q

What is an IAM role vs an IAM user?

An IAM user is a permanent identity with long-lived credentials. An IAM role is an identity with no long-lived credentials that is assumed temporarily by users,...

Q

What is the maximum size of an IAM policy?

5,120 characters for managed policies attached to a user/group/role; service-specific quotas apply (e.g. inline user policy up to 2,048 chars, group 5,120, role...