AWS provides a variety of storage solutions, each tailored for specific use cases. This guide summarizes key AWS storage services, their differences, and when to use them.
1. Object Storage: Amazon S3
- Amazon S3: Best for scalable object storage with a specific API, commonly used for AWS-related applications.
- S3 Glacier: Ideal for archiving objects at a lower cost while retaining accessibility for infrequent retrieval.
2. Block Storage: EBS & Instance Store
- Amazon EBS (Elastic Block Store):
- Attaches storage to a single EC2 instance.
- Types include GP3 (General Purpose), IO2 (High IOPS), and others.
- Supports Multi-Attach for IO1 & IO2 volumes, allowing multiple instances to access the same volume.
- EC2 Instance Store:
- Provides physical storage attached to an EC2 instance.
- Delivers ultra-high performance but is ephemeral (data is lost when the instance stops).
3. Network File Storage: EFS & FSx
- Amazon EFS (Elastic File System):
- A network file system (NFS) for Linux instances that spans multiple availability zones.
- Supports POSIX compliance for easy integration with applications.
- Amazon FSx (Managed File Systems):
- FSx for Windows: Fully managed Windows Server file system.
- FSx for Lustre: High-Performance Computing (HPC) Linux file system compatible with Lustre clients.
- FSx for NetApp ONTAP: Enterprise-grade network file system with strong OS compatibility.
- FSx for OpenZFS: Managed ZFS storage for performance-sensitive workloads.
4. Hybrid Cloud Storage: Bridging On-Premises & AWS
- AWS Storage Gateway (for hybrid storage solutions):
- File Gateway: Synchronizes files between on-premises & Amazon S3/FSx.
- Volume Gateway: Mounts on-premises volumes backed up in AWS.
- Tape Gateway: Creates virtual tape backups for cost-effective archival storage.
- AWS Transfer Family: Provides FTP, FTPS, or SFTP access for S3 and EFS storage.
- AWS DataSync: Schedules and automates data synchronization between on-premises and AWS (or AWS-to-AWS).
5. Large-Scale Data Migration: Snow Family