ProgramGuru

Block, File and Object Storage

Choose where large bytes belong

Follow the responsibility

ApplicationNeeds specific read/write operations
Storage interfaceBlocks, paths or object keys
Physical storageDisks and network behind the service
RecoveryCopies, backups and restore tests
Application: Needs specific read/write operations → Storage interface: Blocks, paths or object keys → Physical storage: Disks and network behind the service → Recovery: Copies, backups and restore tests

A database volume, a shared folder and a photo bucket are all storage, but they expose different ways to read and change bytes. Selecting one by price alone can leave the application without the operations it needs.

Keep metadata, such as a photo’s owner and visibility, separate from the media bytes when that makes the access pattern clearer. Storage permissions and publication state still need to agree.

What you’ll learn

  • Distinguish block, file and object interfaces.
  • Choose storage from the operations and access pattern.
  • Account for durability, requests and transfer costs.

Three interfaces to stored bytes

Block storage presents addressable blocks to a host. A filesystem or database can organize those blocks; attaching a volume does not automatically make it safe for many writers. File storage presents paths, directories and file operations, often shared through NFS or SMB. Locking and filesystem semantics matter.

Object storage presents objects identified by keys, with metadata and an API. It suits media, exports and backups. Do not assume it provides ordinary filesystem rename, append or small in-place writes; the service contract determines available operations.

Measure the actual storage work

A 1 TB dataset is a size, not a speed requirement. Count reads and writes per second, their sizes, sequential versus random access, and acceptable delay. IOPS means input/output operations per second; bytes per second measures transfer volume. Both matter.

Assume 100 photo downloads per second at 2 MB each. That is 200 MB/s before protocol overhead and caching. A CDN can change origin traffic, while thumbnails change payload size. These are exercise numbers, not a storage-product benchmark.

Match storage to the application

Try the design choices

A database needs a supported persistent disk interface.
Visitors download immutable photo variants by key.

Compare the visible consequences. With JavaScript enabled, choose an option in each scenario to assemble your decision record.

This is an exploratory design exercise. It does not run infrastructure, measure capacity or replace the lesson’s quiz.

Select one option per situation. Every consequence remains visible; the record can be changed as you learn.

Choose a usable interface, then evaluate durability and operating cost.

Compare practical storage options

Local SSDs, Amazon EBS and Ceph RBD provide block-oriented options. NFS servers, Amazon EFS and CephFS provide file-oriented options. Amazon S3, Google Cloud Storage and Ceph’s object gateway provide object interfaces. Ceph is open-source software you operate; hosted cloud services charge for their service and usage.

Read Ceph’s interface architecture and provider documentation for the deployed version or storage class. Compare latency, operation limits, replication, access controls, recovery and lifecycle rules. Do not equate having replicas with having an independent backup.

Include operation charges, retrieval delays where applicable, inter-region transfer and deletion policy. A multi-part upload may leave incomplete pieces; expire abandoned uploads deliberately. See the photo service for publishing metadata and media safely.

Check your reasoning

Which interface naturally fits immutable photos fetched by key?
Choose one answer. You can try again.

Answer and explanation

Object storage.

Whole objects and keyed access fit this requirement.

Check your reasoning

Does “1 TB capacity” tell you how many random writes a database can serve?
Choose one answer. You can try again.

Answer and explanation

No; write size, IOPS, delay and configuration are also needed.

Stored size and request performance are different measurements.

Bring the decisions together

Select an interface the application can use correctly. Measure operations and bytes, then compare the complete durability and cost contract.

Reaching the recap and completing the quizzes are separate milestones.

    Next lesson: Relational vs NoSQL Databases: A Beginner’s Guide →