AWS Certified Solutions Architect – Associate (SAA-C02) — Question 455
A company needs to ingest and handle large amounts of streaming data that its application generates. The application runs on Amazon EC2 instances and sends data to Amazon Kinesis Data Streams, which is configured with default settings. Every other day, the application consumes the data and writes the data to an
Amazon S3 bucket for business intelligence (BI) processing. The company observes that Amazon S3 is not receiving all the data that the application sends to
Kinesis Data Streams.
What should a solutions architect do to resolve this issue?
Answer options
- A. Update the Kinesis Data Streams default settings by modifying the data retention period.
- B. Update the application to use the Kinesis Producer Library (KPL) to send the data to Kinesis Data Streams.
- C. Update the number of Kinesis shards to handle the throughput of the data that is sent to Kinesis Data Streams.
- D. Turn on S3 Versioning within the S3 bucket to preserve every version of every object that is ingested in the S3 bucket.
Correct answer: A
Explanation
By default, Amazon Kinesis Data Streams retains data for 24 hours. Since the consumer application only retrieves data every other day (48 hours), data older than 24 hours is deleted before it can be processed and saved to Amazon S3. Modifying the retention period to a longer duration resolves the issue, whereas changing shard counts, using KPL, or enabling S3 Versioning do not prevent the expiration of unconsumed stream data.