AWS Certified Solutions Architect - Professional (#174)

You are the new IT architect in a company that operates a mobile sleep tracking application. When activated at night, the mobile app is sending collected data points of 1 kilobyte every 5 minutes to your backend. The backend takes care of authenticating the user and writing the data points into an Amazon DynamoDB table. Every morning, you scan the table to extract and aggregate last night's data on a per user basis, and store the results in Amazon S3. Users are notified via Amazon SNS mobile push notifications that new data is available, which is parsed and visualized by the mobile app. Currently you have around 100k users who are mostly based out of North America. You have been tasked to optimize the architecture of the backend system to lower cost. What would you recommend? (Choose 2)

Have the mobile app access Amazon DynamoDB directly Instead of JSON files stored on Amazon S3.
Write data directly into an Amazon Redshift cluster replacing both Amazon DynamoDB and Amazon S3.
Introduce an Amazon SQS queue to buffer writes to the Amazon DynamoDB table and reduce provisioned write throughput.
Introduce Amazon Elasticache to cache reads from the Amazon DynamoDB table and reduce provisioned read throughput.
Create a new Amazon DynamoDB table each day and drop the one for the previous day after its data is on Amazon S3.