Much like how Amazon Web Services (AWS) defined the world of cloud compute with its pioneering services, so too has it been a pioneer in cloud storage.
The ability to provide elastic storage that can scale on demand to meet user requirements is a foundational component of the AWS cloud. After all, virtual compute without storage isn’t all that useful. While supporting compute was an initial use case, what the low cost of AWS cloud storage has enabled now goes beyond simple enabling storage to support compute efforts. Concepts such as the cloud data lake, where organizations store massive amounts of ‘Big Data’ in a low cost object storage pool have been born and enabled thanks to AWS storage.
Like other services on Amazon’s cloud, all storage services can be provisioned and managed via the AWS console. Account settings for storage provisioning can be defined by an organization Identity and Access Management (IAM) policy rules, which can also define default security rules for storage buckets.
AWS Classes of Storage
AWS has multiple cloud storage services with the core offering providing object, block and file storage capabilities.
Object Storage:
Simple Storage Service (S3). The Amazon Simple Storage Service, better known by the acronym S3 is perhaps the most widely used cloud storage service on the internet today. S3 introduced the concept of elastic cloud storage and AWS aggressively and regularly updates the service with new capabilities, while lowering prices.
While S3 is an object storage service, AWS has positioned it to be a good general purpose storage facility for storing any type of unstructured data. By combining S3 with other AWS services, such as Amazon DynamoDB or Amazon RDS databases services to index S3 data into a structured data approach.
S3 has three core performance tiers. Standard provides general purpose access, Standard-Infrequent Access (Standard-IA) for less frequently accessed data, and S3 Glacier which is intended for archival data.
Block Storage:
The Elastic Block Storage (EBS) service provides block level storage that is primarily focused on usage by Virtual Machines on the AWS EC2 elastic compute service. While EBS volumes are typically attached to EC2 instances, they also persist independently acting like Network Attached Storage (NAS). Backups and snapshots of EBS images are generally stored in S3, meaning users will often use both EBS and S3 together in support of EC2 virtual compute services.
Within the EBS service users can choose from a range of different storage volume types, each of which has its own performance characteristics and associated pricing. At the lower cost and performance end are Hard Disk Drive (HDD) volumes, while the higher cost and performance volumes make use of Solid State Storage (SSD) hardware.
File Storage:
The Elastic File System (EFS) is AWS’ file storage service supporting the industry standard Network File System (NFS) protocol, specifically NFSv4 and NFSv4.1. EFS volumes are also used to support enterprise applications that run as EC2 virtual compute instances
There are two primary storage classes for EFS, including Standard and the Infrequent Access storage class (EFS IA). The difference between the two is lower cost and performance for the infrequent access tier. What’s particularly useful for EFS is the Lifecycle Management capabilities that are accessible via the AWS storage console by which AWS can automatically manage the storage class based on actual usage and a configurable policy.
Specialized Storage Classes
Amazon FSx
AWS also offers highly optimized cloud storage for High Performance Computing (HPC) and Windows File Server deployments under the Amazon FSx banner.
Amazon FSx for Lustre is a purpose built managed operating system for HPC workloads that can benefit from Lustre filesystem. The Lustre filesystem is widely used in supercomputing systems and is optimized for high-throughput parallel operations.
Amazon FSx for Windows File Server provides users with a managed native file system supporting Windows NTFS. The service supports the Server Message Block (SMB) protocol for file sharing as well as Microsoft’s Active Directory for security and access control.
Snowball
AWS Snowball is Amazon’s approach for helping organizations to get large volume of on-premises data into the cloud. There are multiple Snowball sizes including 50 and 80 Terabyte models. Data from a physical Snowball appliance is initially transferred into S3 in the cloud and from there an organization can move as needed.
Pricing and Tools
AWS Storage Gateway is a hybrid storage service that provides connectivity between on-premises applications and AWS storage services. While AWS cloud storage was initially all about supporting cloud applications, with Storage Gateway cloud storage can be useful for nearly any type of application and it’s particularly well suited to enable data backups.
Pricing across AWS storage services is a calculation that is based on a few factors including region, class of service and redundancy options. AWS is very aggressive on pricing and has been known to lower prices multiple times a year, as well as offering other incentives that keep costs low.
To accurately estimate costs, the best and most up-to-date information is available in the AWS calculator tool (https://calculator.aws/) which provides visibility into all expected costs, including data storage and transfer. AWS also offers one of the most generous Free Tiers in the cloud, which provides users with up to a year of free services and is a great way to try out storage to see how it works.