Cloud10 min readJun 2026 Last verified Jun 2026

Cloud Storage: Object vs Block vs File

S3, EBS, EFS, three storage types that beginners constantly mix up, then use the wrong one and pay for it. The difference is simpler than it sounds, and choosing right is mostly common sense.

AWSS3StorageEBSFoundations
SB

Sri Balaji

Founder ยท TheSimplifiedTech

On this page

TL;DR

Object, block, and file storage map to S3, EBS, and EFS, and picking the right one is mostly common sense once you see what each is for. Get it right and stop paying for the wrong tool.

Three kinds of storage, and why it matters

"Just store the file" turns out to have three very different answers in the cloud, and picking the wrong one is a classic, and expensive, beginner mistake. People put a database on the wrong storage and it's slow; or they store millions of images on a disk that can only attach to one server. The three types are object, block, and file storage. Each is built for a different shape of data.

Who this is for

Beginners. If you've wondered when to use S3 vs an EBS volume vs a shared file system, this clears it up for good.

The everyday analogy

๐Ÿ“ฆ A self-storage warehouseObject storage (S3)
๐Ÿ’ฝ A hard drive in one PCBlock storage (EBS)
๐Ÿ—„๏ธ A shared office filing cabinetFile storage (EFS)
Three different ways to keep your stuff, each suited to different things.

Object storage is a vast warehouse: you drop in items (objects), each with a label (key) and a receipt (metadata), and retrieve them by name over the web. Practically infinite, cheap, but you replace whole items rather than editing in place. Block storage is a hard drive attached to one machine, fast, editable byte-by-byte, perfect for an OS or database, but tied to a single server. File storage is a shared filing cabinet many machines open at once, organised in familiar folders.

The differences that actually decide it

Object (S3)Block (EBS)File (EFS)
Mental modelWeb warehouseA single diskShared folder
Accessed byAnything, over HTTPOne instance at a timeMany instances at once
Edit in place?No, replace the objectYes, byte levelYes, file level
Best forImages, backups, static sites, data lakesOS disks, databasesShared app data, CMS uploads
CostCheapest per GBMidHighest per GB
Pick by access pattern: web-accessible blobs โ†’ object; one fast disk โ†’ block; shared folders โ†’ file.

Choosing right (it's mostly common sense)

  • Storing user uploads, images, videos, backups, or hosting a static site? Object storage (S3). Cheap, durable, web-accessible.
  • Need a disk for a server's OS or a database that wants fast, low-latency, byte-level access? Block storage (EBS).
  • Multiple servers need to read/write the same files at once? File storage (EFS).

Pro tip

When in doubt, default to object storage (S3). It's the cheapest, the most durable, and the right answer for the majority of "where do I put this file?" questions, anything that doesn't need to be a live disk.

It really is this simple to use

Object storage is just an API call away, no disk to provision, no server to attach to:

s3-basics.sh
bash
# Create a bucket (your warehouse)
aws s3 mb s3://my-app-uploads

# Put an object in, and get it back out, by name, over the web
aws s3 cp ./photo.jpg s3://my-app-uploads/users/42/photo.jpg
aws s3 cp s3://my-app-uploads/users/42/photo.jpg ./downloaded.jpg

# List what's in there
aws s3 ls s3://my-app-uploads/users/42/

The headline-making mistake

Making an S3 bucket public when it holds private data. "Open to the world" buckets are behind countless data leaks. Keep buckets private by default and grant access deliberately.

Common mistakes that cost people money

  1. 1Storing millions of files on a block volume. A disk attaches to one server and has a size cap. Use object storage for bulk blobs.
  2. 2Running a database on object storage. Databases need fast, in-place, byte-level writes, that's block storage. S3 isn't a disk.
  3. 3Leaving buckets public. Default to private; this is the most common cloud data leak.
  4. 4Ignoring storage tiers. Rarely-accessed data left on the hot tier wastes money, lifecycle it to cheaper cold/archive tiers.
  5. 5Forgetting durability โ‰  backup. S3 is extremely durable, but a bad deploy can still delete objects. Enable versioning for anything important.

Where to go next

The whole article in 4 lines

  • Object (S3) = a web warehouse for blobs, cheap, durable, the default for files.
  • Block (EBS) = a fast disk for one server, use it for OS volumes and databases.
  • File (EFS) = a shared folder many servers open at once.
  • Default to S3 for "where do I put this file?"; keep buckets private.

You need to store some data in the cloud. Which storage type should you pick?

Check your understanding

1. Which description correctly matches block storage?

2. What does the article recommend as the default "where do I put this file?" answer, and why?

Frequently asked questions

What is the difference between object, block, and file storage?

Object storage is like a vast warehouse where you drop in items by key and retrieve them over the web, practically infinite and cheap but you replace whole items rather than editing in place. Block storage is a fast, byte-editable drive attached to a single machine, ideal for an OS or database, while file storage is a shared filing cabinet that many machines can open at once in familiar folders.

Which storage type should I default to when unsure?

When in doubt, default to object storage such as S3. It is the cheapest, the most durable, and the right answer for the majority of where do I put this file questions, as long as the data does not need to behave like a live disk.

Why is putting a database on the wrong storage a problem?

A database needs fast, byte-by-byte editing, which is what block storage provides, so placing it on the wrong type leads to poor performance. Likewise, storing millions of images on a disk that can only attach to one server is a classic and expensive mismatch.

What is the most common dangerous mistake with object storage?

Making a bucket public when it holds private data is behind countless data leaks. Keep buckets private by default and grant access deliberately rather than opening them to the world.

Was this article helpful?

Want to go deeper?

This article covers concepts taught hands-on in the Cloud Engineer and DevOps career paths, with real terminal labs, production scenarios, and structured lessons.