AWS Certified Solutions Architect – Associate (SAA-C03) — Question 364
A company wants to migrate an Oracle database to AWS. The database consists of a single table that contains millions of geographic information systems (GIS) images that are high resolution and are identified by a geographic code.
When a natural disaster occurs, tens of thousands of images get updated every few minutes. Each geographic code has a single image or row that is associated with it. The company wants a solution that is highly available and scalable during such events.
Which solution meets these requirements MOST cost-effectively?
Answer options
- A. Store the images and geographic codes in a database table. Use Oracle running on an Amazon RDS Multi-AZ DB instance.
- B. Store the images in Amazon S3 buckets. Use Amazon DynamoDB with the geographic code as the key and the image S3 URL as the value.
- C. Store the images and geographic codes in an Amazon DynamoDB table. Configure DynamoDB Accelerator (DAX) during times of high load.
- D. Store the images in Amazon S3 buckets. Store geographic codes and image S3 URLs in a database table. Use Oracle running on an Amazon RDS Multi-AZ DB instance.
Correct answer: B
Explanation
Storing large binary objects like high-resolution images directly in databases (such as Oracle or DynamoDB) is expensive and inefficient, which rules out options A and C. Amazon S3 is the most cost-effective and highly scalable service for storing image files, while Amazon DynamoDB provides a serverless, low-latency key-value store to map geographic codes to S3 URLs. Using Oracle on Amazon RDS (Option D) is significantly more expensive and less scalable for simple key-value lookups compared to Amazon DynamoDB.