A company is migrating legacy internal applications to AWS. Leadership wants to rewrite the internal employee directory to use native AWS services. A developer needs to create a solution for storing employee contact details and high-resolution photos for use with the new application. Which solution will enable the search and retrieval of each employee's individual details and high-resolution photos using AWS APIs?
Show Answer & Explanation
Correct Answer: B. Store each employee's contact information in an Amazon DynamoDB table along with the object keys for the photos stored in Amazon S3.
The best architecture is to store structured contact information in DynamoDB while storing high-resolution photos in S3. DynamoDB is optimized for fast retrieval of structured data, while S3 is designed for object storage including large files like images. The DynamoDB record stores the S3 object key, allowing the application to retrieve the photo URL. Option A is problematic because DynamoDB has a 400KB item size limit, and Base64 encoding increases data size by 33%. Option C is for user authentication, not employee directories. Option D using RDS and EFS adds unnecessary complexity and cost.