How should a solutions architect design the architecture on AWS?
Provision an Amazon RDS for MySQL DB instance with Provisioned IOPS SSD storage. Monitor write operation metrics by using Amazon CloudWatch. Adjust the provisioned IOPS if necessary.
Provision an Amazon RDS for MySQL DB instance with General Purpose SSD storage. Place an Amazon ElastiCache cluster in front of the DB instance. Configure the application to query ElastiCache instead.
Provision an Amazon DocumentDB (with MongoDB compatibility) instance with a memory optimized instance type. Monitor Amazon CloudWatch for performance-related issues. Change the instance class if necessary.
Provision an Amazon Elastic File System (Amazon EFS) file system in General Purpose performance mode. Monitor Amazon CloudWatch for IOPS bottlenecks. Change to Provisioned Throughput performance mode if necessary.
Explanations:
Provisioning an Amazon RDS for MySQL with Provisioned IOPS SSD storage provides high performance for write-heavy workloads. This setup is optimized for I/O-intensive operations, and monitoring metrics through Amazon CloudWatch allows for adjustments in provisioned IOPS based on actual usage. This option directly addresses the concern of performance issues due to high write operations.
While using General Purpose SSD storage for an Amazon RDS for MySQL instance is a valid option, placing an ElastiCache cluster in front of the database primarily benefits read-heavy workloads. In this scenario, since the application has a high volume of write operations, this option does not effectively address the performance concerns related to writes.
Amazon DocumentDB is designed for document-based data storage and not as a direct replacement for MySQL. Migrating to DocumentDB may not be suitable for applications that rely on MySQL features and behavior. Additionally, performance optimization for write-heavy workloads is not guaranteed with DocumentDB.
Amazon Elastic File System (EFS) is a scalable file storage service for use with AWS Cloud services and on-premises resources, but it is not suitable for direct database use like MySQL. EFS is designed for file storage rather than high-performance database operations, making it an inadequate choice for a high write operation scenario.