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.

Table of Contents

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