PERF 3: How do you select your storage solution?
The optimal storage solution for a system varies based on the kind of access method (block, file, or object), patterns of access (random or sequential), required throughput, frequency of access (online, offline, archival), frequency of update (WORM, dynamic), and availability and durability constraints. Well-architected systems use multiple storage solutions and enable different features to improve performance and use resources efficiently.
Resources
Cloud Storage with AWS
Deep dive on Amazon EBS (STG303-R1)
Optimize your storage performance with Amazon S3 (STG343)
Amazon EC2 Storage
Amazon EBS Volume Types
EBS I/O Characteristics
Amazon S3: Request Rate and Performance Considerations
Amazon Glacier: Amazon Glacier Documentation
Amazon EFS: Amazon EFS Performance
Amazon FSx for Lustre Performance
Amazon FSx for Windows File Server Performance
Best Practices:
-
Understand storage characteristics and requirements: Understand the different characteristics (for example, shareable, file size, cache size, access patterns, latency, throughput, and persistence of data) that are required to select the services that best fit your workload, such as object storage, block storage, file storage, or instance storage.
-
Evaluate available configuration options: Evaluate the various characteristics and configuration options and how they relate to storage. Understand where and how to use provisioned IOPS, SSDs, magnetic storage, object storage, archival storage, or ephemeral storage to optimize storage space and performance for your workload.
-
Make decisions based on access patterns and metrics: Choose storage systems based on your workload's access patterns and configure them by determining how the workload accesses data. Increase storage efficiency by choosing object storage over block storage. Configure the storage options you choose to match your data access patterns.
Improvement Plan
Understand storage characteristics and requirements
Evaluate available configuration options
Cloud Storage with AWS
Make decisions based on access patterns and metrics