AWS storage types: S3, EFS, and EBS

Tags: ACG

Lets talk about AWS Storage for a moment.

There have been a number of questions about the different storage types, which are Block storage which are Object storage and where EFS fits into the mix. Below I hope toshed some light on the importantdifferences so that you can make wise choices between them.

Storage

Ultimately all storage has "block storage" at he lowest level (even SSDs which emulate disk blocks). The terminology used is not as important as understanding the distinctions in how the storage is interacted with. Rather than trying to memorize that this service has this title, or that service has that title, it is more useful to understand how they are used and the advantages and limitations that imposes.

  • S3, files on S3 can only be addressed as objects. You cannot interact with the contents of the object until you have extracted the object from S3 (GET). It cannot be edited in-place, you must extract it, change it, and them put it back to replace the original (PUT). What this comes down to is that here is no user "locking" functionality as might be offered by a 'file system' This is why it is called "Object storage".

  • EFS is basically NFS (Network File System) which is an old and still viable Unix technology. As the title implies it is a "File System" and offers more capabilities than "Object Storage" . The key to these is grades of 'File Locking' which makes it suitable for shared use. This is what makes it suitable for a share NETWORK file system. It is important to note that like Object Stores, you are still restricted to handling the file as a complete object. You can lock it so that you can write back to it, but you are restricted in the extent that you do partial content updates based on blocks. This gets a bit grey as there are ways to do partial updates, but they are limited.

  • EBS is closer to locally attached disk whether that be IDE, SAS, SCSI (or it's close cousin iSCSI/Fibre Channel, which is in reality just SCSI over a pipe). With Locally attached disk you have better responsiveness and addressing. This allows you to use File Systems that can address the disk at a block level. This includes part reads, part writes, read ahead, delayed writes, file system maintenance where you swap block under the file, block level cloning, thin provisioning, deduplication etc. As noted above, Block Storage sits underneath both NFS and Object stores, but as a consumer you are abstracted away and cannot make direct use of them.

Do take time to do more reading into the subtleties of Storage technology. It is not so relevant for the associate exams, but understanding the pros and cons is important for a practicing Professional Solution Architect and for the Pro exams.

back to top


If you need help, please contact Pluralsight Support.