Type

File Storage

A tree-like hierarchy that consists of folders and subfolders. Each file has metadata such as file name, file size, and the date the file was created. The file also has a path. When you need to retrieve a file, your system can use the path to find it in the file hierarchy. This storage is mounted onto multiple hosts and requires file locking and integration with existing file system communication protocols.

File storage systems are often supported with a network attached storage (NAS) server.

Block Storage

While file storage treats files as a singular unit, block storage splits files into fixed-size chunks of data called blocks that have their own addresses. When data is requested, these addresses are used by the storage system to organize the blocks in the correct order to form a complete file to present back to the requestor. Outside of the address, there is no additional metadata associated with each block. when you want to change a character in a file, you just change the block.

Block storage is optimized for low-latency operations, it is used in databases or enterprise resource planning (ERP) systems.

Block storage in the cloud is analogous to direct-attached storage (DAS) or a storage area network (SAN).

Object Storage

Each file treated as a single unit of data when stored. However, unlike file storage, these objects are stored in a flat structure instead of a hierarchy. Each object is a file with a unique identifier. This identifier, along with any additional metadata, is bundled with the data and stored.

When you want to change one character in a file, the entire file must be updated. Useful when storing large data sets, unstructured files like media assets, and static assets, such as photos.

EC2 Instance Store

Amazon EC2 Instance Store provides temporary block-level storage for your instance. This storage is located on disks that are physically attached to the host computer. This ties the lifecycle of your EC2 instance. If you delete your instance, the instance store is deleted as well.

It’s buffers, caches, and scratch data. Instance store is ideal if you are hosting applications that replicate data to other EC2 instances, such as Hadoop clusters.

Elastic Block Storage (Amazon EBS)

Amazon EBS is a block-level storage device that you can attach to an Amazon EC2 instance. The external drive is separate from the computer. That means, if an accident happens and the computer goes down, you still have your data on your external drive.

Most EBS volumes have a one-to-one relationship with EC2 instances, so they cannot be shared by or attached to multiple instances at one time. But EC2 has a one-to-many relationship with EBS volumes.

Amazon EBS multi-attach feature enables volumes to be attached to multiple EC2 instances at one time, this feature is not available for all instance types and all instances must be in the same Availability Zone.

High availability: EBS volume can automatically replicate within its Availability Zone to prevent data loss from single points of failure.

Snapshots (Backups): EBS snapshots are incremental backups that only save the blocks on the volume that have changed after your most recent snapshot. When you take a snapshot of any of your EBS volumes, these backups are stored redundantly in multiple Availability Zones using Amazon S3. The backup in Amazon S3 will be handled by AWS, so you won’t need to interact with Amazon S3 to work with your EBS snapshots.