Which is correct?
Use SQS for passing job messages use Cloud Watch alarms to terminate EC2 worker instances when they become idle. Once data is processed, change the storage class of the S3 objects to Reduced Redundancy Storage.
Setup Auto-Scaled workers triggered by queue depth that use spot instances to process messages in SOS Once data is processed, change the storage class of the S3 objects to Reduced Redundancy Storage.
Setup Auto-Scaled workers triggered by queue depth that use spot instances to process messages in SQS Once data is processed, change the storage class of the S3 objects to Glacier.
Use SNS to pass job messages use Cloud Watch alarms to terminate spot worker instances when they become idle. Once data is processed, change the storage class of the S3 object to Glacier.
Explanations:
SQS is suitable for passing job messages, but using CloudWatch alarms to terminate EC2 instances when they become idle is not efficient as it may lead to resource underutilization. Moreover, Reduced Redundancy Storage (RRS) is not recommended for archiving data as it provides less durability compared to other storage classes.
While using auto-scaled workers triggered by queue depth and spot instances is a good approach for cost efficiency, changing the storage class to Reduced Redundancy Storage is not ideal for archiving purposes due to lower durability compared to Glacier or other classes.
This option correctly suggests using auto-scaled workers triggered by queue depth and spot instances for cost-effective processing. After processing, changing the storage class of S3 objects to Glacier is appropriate for archival storage, providing high durability at a lower cost.
Although SNS can pass job messages, using CloudWatch alarms to terminate spot worker instances when they become idle may not optimize costs effectively. Additionally, while changing the storage class to Glacier is correct, the use of SNS instead of SQS does not align with the design pattern of processing jobs in a queue effectively.