Skip to Content

DVA-C02: How to Build a Web Application on AWS with Report Generation and Deletion Features

Learn how to build a web application on AWS that can generate reports for customers within one hour and delete them after two days. Find out the best solution for this scenario with the least operational overhead.

Question

A company is building a web application on AWS. When a customer sends a request, the application will generate reports and then make the reports available to the customer within one hour. Reports should be accessible to the customer for 8 hours. Some reports are larger than 1 MB. Each report is unique to the customer. The application should delete all reports that are older than 2 days.

Which solution will meet these requirements with the LEAST operational overhead?

A. Generate the reports and then store the reports as Amazon DynamoDB items that have a specified TTL. Generate a URL that retrieves the reports from DynamoDB. Provide the URL to customers through the web application.

B. Generate the reports and then store the reports in an Amazon S3 bucket that uses server-side encryption. Attach the reports to an Amazon Simple Notification Service (Amazon SNS) message. Subscribe the customer to email notifications from Amazon SNS.

C. Generate the reports and then store the reports in an Amazon S3 bucket that uses server-side encryption. Generate a presigned URL that contains an expiration date Provide the URL to customers through the web application. Add S3 Lifecycle configuration rules to the S3 bucket to delete old reports.

D. Generate the reports and then store the reports in an Amazon RDS database with a date stamp. Generate an URL that retrieves the reports from the RDS database. Provide the URL to customers through the web application. Schedule an hourly AWS Lambda function to delete database records that have expired date stamps.

Answer

C. Generate the reports and then store the reports in an Amazon S3 bucket that uses server-side encryption. Generate a presigned URL that contains an expiration date Provide the URL to customers through the web application. Add S3 Lifecycle configuration rules to the S3 bucket to delete old reports.

Explanation

The correct answer is C. Generate the reports and then store the reports in an Amazon S3 bucket that uses server-side encryption. Generate a presigned URL that contains an expiration date. Provide the URL to customers through the web application. Add S3 Lifecycle configuration rules to the S3 bucket to delete old reports.

Here is a detailed explanation:

  • Option A is not a valid solution because it uses Amazon DynamoDB to store the reports, which is not suitable for large objects. Amazon DynamoDB is a service that provides fast and flexible NoSQL database for various applications. However, it has a limit of 400 KB for each item, which means that some reports that are larger than 1 MB cannot be stored as DynamoDB items. Moreover, using DynamoDB for this purpose may introduce complexity and overhead, such as managing the database schema and capacity, and ensuring data consistency and durability.
  • Option B is not a valid solution because it uses Amazon Simple Notification Service (Amazon SNS) to deliver the reports, which is not suitable for large objects. Amazon SNS is a service that provides pub/sub messaging and mobile notifications for various applications. However, it has a limit of 256 KB for each message, which means that some reports that are larger than 1 MB cannot be attached to SNS messages. Moreover, using SNS for this purpose may introduce latency and unreliability, as the delivery of email notifications may depend on factors such as network conditions, spam filters, and user preferences.
  • Option C is the best solution because it meets all the requirements with the least operational overhead. By using Amazon S3 to store the reports, the solution can handle large objects with server-side encryption, which provides security for the data at rest. By using presigned URLs to provide access to the reports, the solution can control the expiration date of the URLs, which provides security for the data in transit. By using S3 Lifecycle configuration rules to delete old reports, the solution can automate the cleanup process and reduce storage costs.
  • Option D is not a valid solution because it uses Amazon RDS to store the reports, which is not suitable for large objects. Amazon RDS is a service that provides relational database for various applications. However, it is not designed for storing and managing binary objects such as files or images. Using RDS for this purpose may introduce complexity and overhead, such as managing the database schema and capacity, ensuring data consistency and durability, and encrypting and decrypting the data on the application side.

Therefore, option C is the best solution that meets these requirements with the least operational overhead.

The latest AWS Certified Developer – Associate DVA-C02 certification actual real practice exam question and answer (Q&A) dumps are available free, which are helpful for you to pass the AWS Certified Developer – Associate DVA-C02 exam and earn AWS Certified Developer – Associate DVA-C02 certification.

AWS Certified Developer - Associate DVA-C02 Exam Questions and Answers

Alex Lim is a certified IT Technical Support Architect with over 15 years of experience in designing, implementing, and troubleshooting complex IT systems and networks. He has worked for leading IT companies, such as Microsoft, IBM, and Cisco, providing technical support and solutions to clients across various industries and sectors. Alex has a bachelor’s degree in computer science from the National University of Singapore and a master’s degree in information security from the Massachusetts Institute of Technology. He is also the author of several best-selling books on IT technical support, such as The IT Technical Support Handbook and Troubleshooting IT Systems and Networks. Alex lives in Bandar, Johore, Malaysia with his wife and two chilrdren. You can reach him at [email protected] or follow him on Website | Twitter | Facebook

    Ads Blocker Image Powered by Code Help Pro

    Your Support Matters...

    We run an independent site that is committed to delivering valuable content, but it comes with its challenges. Many of our readers use ad blockers, causing our advertising revenue to decline. Unlike some websites, we have not implemented paywalls to restrict access. Your support can make a significant difference. If you find this website useful and choose to support us, it would greatly secure our future. We appreciate your help. If you are currently using an ad blocker, please consider disabling it for our site. Thank you for your understanding and support.