Which solution will meet this requirement with the LEAST operational overhead?
Modify the DB instance to be a Multi-AZ deployment.
Create a read replica of the database. Configure the script to query only the read replica.
Instruct the development team to manually export the entries in the database at the end of each day.
Use Amazon ElastiCache to cache the common queries that the script runs against the database.
Explanations:
Modifying the DB instance to a Multi-AZ deployment enhances availability and failover capabilities, but it does not directly address performance issues for development tasks during script execution. Additionally, it may involve higher operational overhead due to the complexity of managing Multi-AZ deployments.
Creating a read replica allows the script to query the replica instead of the main database, thereby reducing the load on the primary instance. This solution meets the performance requirements during script execution while minimizing operational overhead, as read replicas are straightforward to set up and maintain.
Instructing the development team to manually export entries introduces additional manual workload and operational overhead. It is also not a scalable or efficient solution, especially for frequent data queries, and does not resolve the performance issues during the script execution.
Using Amazon ElastiCache to cache common queries may help improve performance by reducing the load on the database. However, it adds complexity and operational overhead in terms of managing the caching layer and ensuring cache consistency, making it less ideal compared to simply using a read replica.