Which solution will meet these requirements?
Create an Amazon ElastiCache for Redis instance. Enable encryption of data in transit and at rest. Store frequently accessed data in the cache.
Create an Amazon ElastiCache for Memcached instance. Enable encryption of data in transit and at rest. Store frequently accessed data in the cache.
Create an Amazon RDS for MySQL read replica. Connect to the read replica by using SSL. Configure the read replica to store frequently accessed data.
Create an Amazon DynamoDB table and a DynamoDB Accelerator (DAX) cluster for the table. Store frequently accessed data in the DynamoDB table.
Explanations:
Amazon ElastiCache for Redis supports encryption in transit and at rest, allowing secure storage of frequently accessed data. It also provides features for data sorting and ranking, which meet the application’s requirements for performance enhancement.
While ElastiCache for Memcached can cache data and support encryption in transit, it does not support encryption at rest. Additionally, Memcached lacks the ability to sort or rank cached datasets, which is necessary for this use case.
An RDS read replica can improve read performance, but it does not inherently provide a caching layer or support sorting/ranking of data. Also, the read replica must still handle encryption at the database level, which does not fully meet the caching requirement.
Although DynamoDB and DAX can provide caching for frequently accessed data, using DynamoDB introduces complexity and may not directly support sorting/ranking in the way Redis does. Additionally, it may not fit within the PHI encryption requirements as neatly as Redis.