AWS Cloud Practitioner Study Notes · Part 11
Amazon S3 Storage: Objects, Buckets, and Storage Classes
AWS Cloud Practitioner study notes on Amazon S3 object storage, buckets, keys, durability, security, versioning, lifecycle rules, and events.
Amazon S3 is one of the most important AWS services to recognise in Cloud Practitioner questions. It stores objects such as images, documents, logs, backups, and data-lake files without requiring you to provision a traditional disk or file server.
This is Part 11 of the AWS Cloud Practitioner Study Notes series. Part 9 covered AWS cost concepts; this note focuses on S3 storage, access, resilience, and the features commonly associated with object storage.
What is Amazon S3?
Amazon S3 is an object storage service. An object contains the data itself, metadata, and a key that identifies it within a bucket.
Bucket: my-company-images
|
├── products/phone/image.jpg
├── invoices/2026/invoice-001.pdf
└── backups/database-2026-08-19.zip
The names above look like folders, but S3 uses object keys. Prefixes such as products/phone/ help organise and list objects; they are not directories in a traditional file system.
S3 terminology
| Term | Meaning |
|---|---|
| Bucket | A container for objects |
| Object | Data, metadata, and its key |
| Key | The unique object name within a bucket |
| Prefix | A folder-like part of a key used for organisation |
| Version ID | Identifies a particular object version when versioning is enabled |
| Region | The AWS Region associated with the bucket |
S3 removes the need to manage a fixed disk capacity for many object-storage use cases. You pay for the storage and requests you use according to the selected storage class and pricing rules.
S3 versus EBS and EFS
The most useful first decision is the type of storage the workload needs:
| Storage type | AWS service | Typical use |
|---|---|---|
| Object storage | Amazon S3 | Images, backups, logs, documents, media, and data lakes |
| Block storage | Amazon EBS | Disk volumes attached to EC2 instances |
| File storage | Amazon EFS | Shared file systems mounted by compute resources |
Choose S3 when applications work with complete objects through APIs. Choose EBS when an EC2 operating system or application needs a block device. Choose EFS when multiple compute resources need a shared file-system interface.
S3 Regions, durability, and availability
An S3 bucket is associated with an AWS Region. S3 is a globally available AWS service, but a bucket is not one undifferentiated global disk. You select a Region when creating the bucket, and that choice affects latency, data residency, replication design, and pricing.
For many S3 storage classes, AWS redundantly stores objects across multiple Availability Zones within the selected Region. S3 Standard is designed for 99.999999999% durability and 99.99% availability over a given year.
These terms are different:
- Durability: how unlikely it is that stored data will be lost.
- Availability: how often the data is expected to be accessible.
Eleven nines of durability does not mean that every request will always succeed or that an application cannot be denied access by an incorrect IAM policy, a disabled network path, or an outage in a dependent system. It describes the designed durability of the storage service.
Some storage classes have different resilience characteristics. For example, S3 One Zone-IA stores data in a single Availability Zone, so its lower storage price comes with a different resilience trade-off. Choose a class based on access pattern and recovery requirements, not price alone.
Strong consistency
Amazon S3 provides strong read-after-write consistency for object PUT and DELETE requests in all AWS Regions. After a successful write, a subsequent read or list operation reflects the latest result.
For example:
- An application uploads
photo.jpgsuccessfully. - The application immediately requests
photo.jpg. - The read returns the latest object version.
This is a frequent exam update because older learning material may describe eventual consistency for S3. For current S3 behaviour, use strong consistency.
S3 storage classes
S3 storage classes let you trade storage price, retrieval characteristics, availability design, and minimum-storage or retrieval considerations for the way data is accessed.
| Storage class | Typical fit |
|---|---|
| S3 Standard | Frequently accessed data requiring low-latency access |
| S3 Intelligent-Tiering | Access patterns are uncertain or change over time |
| S3 Standard-IA | Infrequently accessed data that still needs quick retrieval |
| S3 One Zone-IA | Infrequently accessed, re-creatable data where single-AZ storage is acceptable |
| S3 Glacier Instant Retrieval | Archive data that still needs rapid access |
| S3 Glacier Flexible Retrieval | Archive data where retrieval can take longer |
| S3 Glacier Deep Archive | Long-term archive accessed rarely |
The class is chosen per object and can be changed manually or through lifecycle rules. Pricing and retrieval conditions vary, so check the current S3 pricing documentation before selecting a class for a real workload.
S3 security
S3 security is a customer responsibility under the AWS Shared Responsibility Model. Access can involve:
- IAM identity-based policies
- S3 bucket policies
- Access point policies
- S3 Block Public Access settings
- Object Ownership and, in legacy scenarios, ACLs
- Encryption and key-management configuration
- Logging and monitoring
S3 Block Public Access provides controls at organisation, account, bucket, and access-point levels. The most restrictive applicable settings are enforced. For private data, keep public access blocked unless there is a clearly reviewed requirement for public delivery.
For example, payroll objects might be readable only by an IAM role used by the HR application. A bucket policy or IAM policy that grants public access can expose data even though AWS has secured the underlying storage infrastructure.
Encryption may be server-side, where AWS encrypts objects as part of the storage service, or client-side, where the application encrypts data before uploading it. The correct choice depends on the security and key-management requirements.
Versioning protects object history
Without versioning, an overwrite can replace the previous object value, and a delete can remove the current object from normal listings. With S3 Versioning enabled, S3 preserves versions and assigns version IDs.
Versioning can help recover from:
- Accidental deletion
- Accidental overwrite
- Application errors that write incorrect content
- Recovery operations that need an earlier object state
Versioning is not the same as a complete backup strategy. It can increase storage usage, and it does not automatically protect against every account, Region, or operational failure. Lifecycle rules, replication, Object Lock, and backups may be relevant depending on the recovery requirement.
Lifecycle rules automate storage transitions
Lifecycle configuration applies actions to objects based on age, prefix, tags, or other rule conditions. A policy might:
- Keep new objects in S3 Standard.
- Transition them to an infrequent-access class after a period.
- Move them to an S3 Glacier class for archive storage later.
- Expire objects or old versions after the retention period.
Lifecycle rules reduce manual work and can control storage cost, but the transition and expiration conditions must match the organisation’s retention, compliance, and retrieval requirements.
Replication and disaster recovery
S3 replication can copy objects between buckets, including across Regions for Cross-Region Replication. Replication is useful for geographic recovery, compliance designs, latency requirements, or keeping a secondary copy.
Replication does not automatically mean that every historical object, delete marker, permission, or dependent application configuration is recoverable in the exact way you need. Define the replication scope, destination permissions, encryption, retention, and recovery procedure, then test it.
S3 also supports features such as Object Lock for suitable retention and immutability requirements. Choose the protection mechanism based on the threat model: versioning helps with object history, while replication helps with geographic separation.
Event notifications
S3 can publish notifications when supported object events occur. Common targets include:
- AWS Lambda for processing
- Amazon SQS for durable asynchronous work queues
- Amazon SNS for fan-out notifications
A typical image workflow is:
User uploads image
|
v
Amazon S3 object created
|
v
S3 event notification
|
├── AWS Lambda creates a thumbnail
├── Amazon SQS queues image processing
└── Amazon SNS notifies subscribers
The processing function should be designed carefully so that retries or repeated events do not create incorrect results. Use object keys, metadata, and idempotent processing logic to avoid recursively triggering the same workflow when derived objects are written back to S3.
Common S3 use cases
S3 is often used for:
- Backup and restore data
- Application logs
- Images, videos, and documents
- Static website assets
- Software downloads
- Data lakes and analytics input
- Long-term archives
- Disaster-recovery copies
Other AWS services commonly work with S3. CloudFront can cache and deliver S3 content, Athena can query suitable data in S3, Glue can discover and transform data, Macie can help discover sensitive data, and CloudTrail can record API activity.
Exam-ready memory aid
- S3: object storage.
- Bucket: container associated with a Region.
- Key: unique object name within a bucket.
- Durability: designed for 11 nines for S3 Standard objects.
- Availability: S3 Standard is designed for 99.99% over a given year.
- Consistency: strong read-after-write consistency.
- Versioning: recover older object versions.
- Lifecycle: transition or expire objects automatically.
- Event notifications: trigger Lambda, SQS, or SNS workflows.
- EBS: block storage for EC2.
- EFS: shared file storage.
Conclusion
Amazon S3 is a scalable object-storage foundation for data that applications can upload, retrieve, analyse, archive, and replicate through APIs. The core exam decisions are to recognise object storage, distinguish durability from availability, understand that buckets are Regional, and select features such as Versioning, Lifecycle, replication, and event notifications for the workload’s needs.
When an exam question says “store millions of images,” “durable backup,” “archive objects automatically,” or “trigger processing after upload,” S3 is usually the starting point. Then identify the supporting feature: storage class, lifecycle rule, versioning, or event notification.