AWS Core Storage Services. Without them, every website and app would need to build its own physical file servers in a basement somewhere. For the CLF-C02 exam, you must understand the three main block-and-file services S3, EBS, and EFS and when to choose each one.
Jump to a section
18 boxes of holiday decorations fill your living room. You need to store them safely for a year. Your options are a single plastic bin in a friend's garage, a stack of boxes in a storage unit, or a climate-controlled warehouse with a loading dock. Each option costs differently and serves a different purpose.
Amazon S3 is like that climate-controlled warehouse. You can store any number of boxes (objects) and retrieve them from anywhere using a unique address (a URL). The warehouse never runs out of space, and you pay only for the cubic metres you use. EBS is like an external hard drive plugged directly into your laptop. It works only when the laptop is on, and if the laptop breaks, you can extract the drive and plug it into a new one. EFS is like a shared network drive on an office server. Multiple people can open, edit, and save the same file at the same time without emailing copies. S3 Glacier is like a deep-freeze storage locker where the doors do not open quickly. You could store archived tax documents there, but retrieving them takes hours. Each storage service maps to a real-world physical storage problem anyone has faced.
AWS offers several storage services, each designed for a different type of data and access pattern. The three core ones you need to know for the exam are Amazon S3, Amazon EBS, and Amazon EFS. Think of them as three different tools in a toolbox: a sledgehammer, a precision screwdriver, and a glue gun. Each has a specific job.
Amazon S3 (Simple Storage Service) is object storage. Objects are files like photos, videos, PDFs, or backup archives. Each object gets a unique key (like a file name) and sits inside a bucket (a container). You can store any number of objects in any bucket, and you access them over the internet via a URL. S3 is designed for 99.999999999% durability, meaning if you store 10 million objects, on average you will lose exactly one every 10,000 years. It is highly available and can serve data to millions of users simultaneously. S3 replaced the need to run your own FTP servers or network attached storage (NAS) devices on premises. Common use cases include hosting static website files, storing backups, and serving user-uploaded content.
Amazon EBS (Elastic Block Store) is block storage. Imagine a hard drive inside your computer. It is a raw block device that an operating system can format with a file system (like NTFS or ext4) and install applications on. EBS volumes are attached to a specific EC2 instance (a virtual server). They cannot be shared between multiple instances at the same time (though you can detach and reattach them). EBS replaced physical hard drives (HDDs and SSDs) in data centres. You must specify the size and performance (IOPS input/output operations per second) when you create a volume. EBS is ideal for databases, operating system disks, and applications that need low-latency, consistent performance.
Amazon EFS (Elastic File System) is file storage. It is similar to a shared network drive (like a Windows shared folder or an NFS mount). Multiple EC2 instances can mount the same EFS file system simultaneously and read/write files. It automatically scales its size up and down as you add or remove files, so you never need to provision capacity in advance. EFS replaced traditional network-attached storage (NAS) appliances like NetApp or Dell EMC. It is a good choice for content management systems, web serving, and any workload that needs shared access to files from many servers.
There are also specialised storage services. Amazon S3 Glacier is a very low-cost archival storage class inside S3. You store data that you access rarely (maybe once a year) like old financial records or medical images. Retrieving data from Glacier takes from 1 minute to 12 hours, depending on the retrieval speed you choose. Amazon S3 Intelligent-Tiering automatically moves objects between frequent and infrequent access tiers to save you money without manual intervention.
Each storage service has a specific cost model. S3 charges per gigabyte stored per month and per request (GET, PUT, DELETE). EBS charges per provisioned GB per month (whether you use it or not) and per number of IOPS you provision. EFS charges per GB per month of data actually stored (like S3) but has no upfront provisioning.
To pass the exam, you must match the service to the scenario. If a question says a company needs to store photo files accessed by millions of users worldwide, choose S3. If it says a single EC2 instance needs a high-speed disk for a database, choose EBS. If it says hundreds of EC2 instances need a shared file system that grows automatically, choose EFS.
Choose the Storage Service
For an online photo gallery (SnapshotHub), you decide that photographs uploaded by users are best stored in Amazon S3 because they can be accessed via URLs from any device. You do not choose EBS because EBS cannot serve files over the internet directly, and you do not choose EFS because you do not need multiple servers to edit the same photo files simultaneously.
Create an S3 Bucket
You log into the AWS Management Console, navigate to S3, and create a bucket named 'snapshothub-user-photos'. You choose a region close to your users (e.g., us-east-1). You configure the bucket to block all public access by default, then later grant access only to your application using an IAM role.
Upload an Object to S3
When a user uploads a photo from the web app, your application code calls the AWS SDK to PUT the photo file into the bucket with a unique key (e.g., 'uploads/2025/03/photo1234.jpg'). S3 stores the object with metadata (content type, upload date) and returns a success response.
Attach an EBS Volume to the Database Server
You launch an EC2 instance to run the PostgreSQL database. You create a 100 GB gp3 EBS volume and attach it to the instance. You then SSH into the instance, format the volume with ext4, and mount it at /data/db. The database stores records on this volume, which persists even if the instance reboots.
Set Up an EFS File System for Shared Logs
You have 10 EC2 instances running microservices. You create an EFS file system in the same VPC and mount it on each instance using the NFS mount command. The file system automatically grows from 0 GB to 500 GB as log files are written. All instances can read each other's logs instantly.
Imagine you are the IT administrator for a small online photo gallery called SnapshotHub. Users upload their holiday photos, browse albums, and share links with friends. You need to decide which AWS storage services to use and how to set them up.
First, you store all uploaded photos in Amazon S3. You create a bucket called 'snapshothub-user-photos' and configure it to be publicly readable but only writable by your application. Each photo gets a unique key like '/2025/03/alice-beach.jpg'. When a user uploads a photo, your application (running on an EC2 instance) calls the AWS SDK to PUT the object into S3. S3 immediately stores the object across multiple data centres (Availability Zones) to ensure durability. Millions of users can then view the photo simultaneously because S3 scales automatically. You never worry about running out of disk space.
Second, you need a database to store user profiles and album metadata. You launch an EC2 instance and attach an EBS volume (say a 100 GB gp3 volume with 3000 IOPS). You install PostgreSQL on that volume. The database reads and writes to the EBS volume as if it were a local hard drive. You take daily snapshots of the EBS volume (point-in-time backups stored in S3). If the EC2 instance fails, you can launch a new instance and attach the same EBS volume (or a restored copy from a snapshot) within minutes.
Third, you have a fleet of 10 EC2 instances running a microservices architecture. Each instance needs to read shared configuration files and logs. You create an EFS file system and mount it on all instances. When one instance writes a log entry, the other instances can read it immediately. When you add more instances, they all mount the same EFS system. As log files accumulate, EFS automatically grows from 100 GB to 500 GB without you doing anything.
If a user uploads an old holiday video and never watches it again, you might let S3 automatically move it to S3 Glacier Deep Archive after 90 days, reducing storage costs by 90%. You set up a lifecycle policy in the S3 bucket: after 30 days move to S3 Standard-Infrequent Access, after 90 days move to Glacier Deep Archive. This is a hands-off cost-saving strategy.
As an IT professional, you would also set up the following:
Bucket policies and IAM roles to control access (who can read/write)
S3 versioning to protect against accidental deletions
Cross-region replication to copy data to another AWS region for disaster recovery
Encryption at rest using S3 managed keys (SSE-S3) or AWS KMS
Monitoring with CloudWatch metrics (bucket size, request count)
Lifecycle policies to save money automatically
The CLF-C02 exam tests your ability to distinguish between S3, EBS, and EFS and to know the characteristics of each. You will see scenario-based questions where you must pick the correct storage service for a given use case. The exam does not ask for deep configuration details (e.g., specific API calls or mount commands). It tests high-level knowledge.
Common exam topics include:
S3 is object storage. It is accessible over the internet via URLs. It is not a file system (you cannot 'mount' S3 like a drive without third-party tools). It offers unlimited storage. Durability is 99.999999999% (eleven 9s).
EBS is block storage. It is attached to a single EC2 instance. It behaves like a hard drive. It cannot be shared between instances (except as a multi-attach EBS, which is an advanced feature tested at associate level, not at CLF-C02). It must be in the same Availability Zone as the EC2 instance.
EFS is file storage. It can be mounted by many EC2 instances simultaneously across multiple Availability Zones. It scales automatically. It uses NFS protocol.
S3 Glacier is for archival storage. Retrieval times are minutes to hours. It is the cheapest S3 storage class.
Lifecycle policies can move objects between storage classes automatically (e.g., from S3 Standard to S3 Infrequent Access to Glacier).
S3 is a global service, but bucket names must be globally unique. Buckets are created in a specific region.
EBS snapshots are stored in S3 and are incremental (only changed blocks are saved).
Traps the exam sets:
A question might describe a scenario where multiple servers need to share the same data. If the data is a single file that updates frequently, EFS is correct, not S3 (because updating an S3 object requires rewriting the entire object, which is inefficient for small, frequent updates).
A question might say 'database' and 'lowest latency'. EBS is the answer, not EFS (EFS has higher latency than EBS because it is network file system).
A question might say 'cheapest storage for archival data'. S3 Glacier Deep Archive is correct. Do not pick S3 Standard.
A question might say 'storing video files for a website'. S3 is correct because files are served over HTTP/HTTPS.
A question might mix up 'instance store' (temporary, attached to EC2 but lost on stop/terminate) with EBS (persistent). Instance store is ephemeral, EBS is durable.
Memorise the following key definitions:
Object storage: stores data as objects with metadata and a unique identifier
Block storage: stores data in fixed-size blocks, like a hard drive
File storage: organises data in a hierarchical file system, accessed via NFS
Durability: how likely data is to be lost (S3 = eleven 9s)
Availability: how often data is accessible when needed (S3 = 99.99%)
IOPS: input/output operations per second, a measure of storage performance
Amazon S3 stores objects (files) in buckets and is accessed via URLs, making it ideal for web content, backups, and static assets.
Amazon EBS provides block storage volumes that attach to a single EC2 instance and behave like a traditional hard drive.
Amazon EFS is a fully managed file system that multiple EC2 instances can mount simultaneously and scales automatically.
S3 Glacier storage classes are the cheapest option for archival data that you access rarely, with retrieval times from minutes to hours.
EBS volumes must be in the same Availability Zone as the EC2 instance they are attached to.
Lifecycle policies in S3 can automatically move objects between storage classes to optimise cost without manual intervention.
S3 offers 99.999999999% durability, meaning data loss is extremely unlikely even at massive scale.
EBS snapshots are incremental backups stored in S3 and can be used to restore volumes in a different Availability Zone.
These come up on the exam all the time. Here's how to tell them apart.
Amazon S3 (Object Storage)
Unlimited storage capacity; pay per GB stored
Accessed via HTTP/HTTPS URLs over the internet
Sharable across multiple instances and regions via URLs
Amazon EBS (Block Storage)
Provisioned storage up to 16 TB per volume
Attached as a block device directly to one EC2 instance
Cannot be shared with other instances (single-attach)
Amazon EBS (Block Storage)
Provides consistent low latency (sub-millisecond)
Must be in the same Availability Zone as the EC2 instance
You pay for provisioned capacity (GB and IOPS) whether used or not
Amazon EFS (File Storage)
Slightly higher latency due to network-based access (NFS)
Can be mounted across multiple Availability Zones in a region
Pay only for the storage you actually use (no provisioning)
Amazon S3 Standard
Low latency (milliseconds) for frequent access
Costs about $0.023 per GB per month
Designed for data accessed multiple times per month
Amazon S3 Glacier Deep Archive
Retrieval takes 12 hours (not for frequent access)
Costs about $0.00099 per GB per month (cheapest)
Designed for long-term archival data accessed once a year or less
Mistake
S3 is a file system that you can mount like a network drive.
Correct
S3 is object storage, not a file system. You access objects via HTTP/HTTPS URLs. To make S3 look like a file system, you need third-party tools like S3FS, but they are not recommended for most applications.
People confuse 'storage' with 'file system' because their only experience is using Windows File Explorer or Finder. S3 works differently and uses a flat key-value store.
Mistake
EBS volumes can be attached to multiple EC2 instances at the same time.
Correct
Standard EBS volumes can be attached to only one EC2 instance at a time. There is a multi-attach feature for specific use cases (Xen-based instances), but it is rarely used and not part of CLF-C02. The exam expects you to know EBS is single-attach.
Beginners assume that because EBS is a 'disk' it should be shareable, like a USB drive. The reality is that block devices cannot be safely written to by multiple operating systems without a cluster file system.
Mistake
Amazon S3 Glacier is a separate service from S3.
Correct
Amazon S3 Glacier is actually a storage class within Amazon S3, not a separate service. There is also a 'S3 Glacier' service name, but the storage classes (S3 Glacier Flexible Retrieval, S3 Glacier Deep Archive) are part of S3.
AWS historically had two separate products (Amazon S3 and Amazon Glacier). They merged them in 2018. The exam uses the current naming, but old blog posts and videos cause confusion.
Mistake
You must provision EBS volumes in advance and pay even if you do not use the space.
Correct
Correct. EBS requires you to specify a size in GB and a performance level (IOPS) upfront. You pay for that provisioned capacity whether you use it or not. This differs from S3 and EFS, which are pay-per-use.
Many cloud services are 'pay as you go' for compute, so beginners assume all storage is pay-as-you-go. EBS is an exception it is provisioned capacity, similar to renting a physical hard drive.
Mistake
EFS is more expensive than EBS for all use cases.
Correct
EFS can be cheaper than EBS for workloads with automatically scaling storage because you pay only for what you use. EBS charges for provisioned GB even if empty. For large, infrequently accessed data, EFS often costs less.
Beginners see 'managed' = expensive. Actually, EFS automatic scaling saves money for spiky or unpredictable storage needs. EBS is cheaper for steady-state workloads with predictable capacity.
Reveal each answer, then mark whether you got it right. Score 60%+ to unlock the next chapter.
Object storage (S3) saves data as objects with unique keys and metadata, accessible via URLs. Block storage (EBS) saves data in fixed-size blocks on a virtual hard drive attached to one server. File storage (EFS) organises data in a hierarchy with folders and files, shared by many servers.
Not natively. There are third-party tools like S3FS or Rclone that let you mount S3 as a drive, but AWS does not support this officially. S3 is accessed via HTTP/HTTPS requests, not file system protocols.
Yes, for most workloads. EBS volumes are directly attached via the hypervisor and offer very low latency (sub-millisecond). EFS is a network file system, so it adds network latency. For databases, use EBS. For shared file access where lower performance is acceptable, use EFS.
Standard EBS volumes can be attached to only one instance at a time. There is a multi-attach feature for specific configurations, but it requires a cluster-aware file system and is not commonly used. It is not tested on CLF-C02.
The cheapest storage is Amazon S3 Glacier Deep Archive. It costs about $0.00099 per GB per month, but retrieval takes 12 hours. For frequently accessed data, use S3 Standard or S3 Intelligent-Tiering.
The EBS volume persists. When you stop the EC2 instance, the volume stays attached and the data remains. When you start the instance again, the volume is available. However, instance store volumes (ephemeral storage) lose their data when the instance stops.
You've just covered AWS Core Storage Services — now see how well it sticks with free CLF-C02 practice questions. Full explanations included, no account needed.
Done with this chapter?