Answer - D
If the database is going to be used for a minimum of one year at least, it is better to get Reserved Instances. You can save on costs if you use partial upfront options.
For more information on AWS Reserved Instances, please visit the Link:
https://aws.amazon.com/ec2/pricing/reserved-instances/
A is incorrect. Spot instances can be terminated with fluctuations in market prices. Unless the question specifies a use case where high availability is not a requirement, this cannot be assumed.
B is incorrect. On-Demand is not the most cost-efficient solution.
C is incorrect. No upfront payment is required. However, it`s a costlier option than Partial/All upfront payment.
For more information on the Reserved Instances Payment option, please check below AWS Docs:
https://docs.aws.amazon.com/aws-technical-content/latest/cost-optimization-reservation-models/reserved-instance-payment-options.html
Note:
Reserved Instances do not renew automatically. When they expire, you can continue using the EC2 instance without interruption. But you are charged On-Demand rates. In the above example, when the Reserved Instances that cover the T2 and C4 instances expire, you go back to paying the On-Demand rates until you terminate the instances or purchase new Reserved Instances that match the instance attributes.
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-reserved-instances.html