What should the solutions architect recommend to meet these requirements at the LOWEST cost?
Use S3 batch operations to replace object tags. Expire the objects based on the modified tags.
Configure an S3 Lifecycle policy to transition older versions of objects to S3 Glacier. Expire the objects after 2 years.
Enable S3 Event Notifications on the bucket that sends older objects to the Amazon Simple Queue Service (Amazon SQS) queue for further processing.
Replicate older object versions to a new bucket. Use an S3 Lifecycle policy to expire the objects in the new bucket after 2 years.
Explanations:
While S3 batch operations can be used to manage object tags, this option does not directly address the requirement for deleting older versions after 2 years. Additionally, modifying tags does not automatically manage the lifecycle of versions; a lifecycle policy would be more appropriate for expiring objects.
This option meets the requirements effectively by using an S3 Lifecycle policy to transition older versions to S3 Glacier, which is a cost-effective storage solution for infrequently accessed data. The policy can then be configured to expire (delete) the objects after 2 years, ensuring compliance and cost efficiency.
Enabling S3 Event Notifications to send older objects to an Amazon SQS queue does not provide a method for deleting or managing the lifecycle of the object versions. This approach would add complexity without addressing the requirement to automatically delete objects after 2 years, making it an inefficient solution for cost management.
While replicating older object versions to a new bucket could allow for different lifecycle policies, this option adds unnecessary complexity and cost. Managing two buckets incurs additional storage costs and overhead, and it does not provide a more effective solution for the specified requirement of deleting objects after 2 years.