After reviewing the last quarter’s monthly bills, management has noticed an increase in the overall bill from Amazon. After
researching this increase in cost, you discovered that one of your new services is doing a lot of GET Bucket API calls to
Amazon S3 to build a metadata cache of all objects in the applications bucket. Your boss has asked you to come up with
a new cost-effective way to help reduce the amount of these new GET Bucket API calls. What process should you use
to help mitigate the cost?
Update your Amazon S3 buckets’ lifecycle policies to automatically push a list of objects to a new bucket, and use this list to view
objects associated with the application’s bucket.
Create a new DynamoDB table. Use the new DynamoDB table to store all metadata about all objects uploaded to Amazon S3.
Any time a new object is uploaded, update the application’s internal Amazon S3 object metadata cache from DynamoDB.
Using Amazon SNS, create a notification on any new Amazon S3 objects that automatically updates a new DynamoDB table to store
all metadata about the new object.
Subscribe the application to the Amazon SNS topic to update its internal Amazon S3 object metadata cache from the DynamoDB table.
Upload all images to Amazon SQS, set up SQS lifecycles to move all images to Amazon S3, and initiate an Amazon SNS notification
to your application to update the application’s Internal Amazon S3 object metadata cache.
Upload all images to an ElastiCache filecache server. Update your application to now read all file metadata from the ElastiCache
filecache server, and configure the ElastiCache policies to push all files to Amazon S3 for long-term storage.