Why NoSQL db is the correct answer?
With these questions, you to break them down into their constituent parts.
- Firstly you are asked to implement a solution for both tiers as in you must change something about each of those tiers. This rules out adding another layer into the architecture, i.e. SWF and CloudFront.
This means that the loadbalancer answer is the only remaining answer for the front end tier. It’s correct since it will scale in response to demand. - you got that one.
Also, you are not asked to implement two solutions for the front end, therefore the last two options together must be incorrect. - For the database you are told that the load “has predictable growth patterns”. Therefore you don’t need to handle “all loads at all times”. The Dynamo answer explicitly states “predictable traffic patterns”, therefore it is the correct answer.
Final answer - EC2 autoscaling with DynamoDB backend.
But RDS and DynamoDB seem to be parallel to each other where one is for SQL and another for NOSQL
Question is not about how much work it would be to refactor the backend from SQL to NoSQL.