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 anAmazon S3 bucket for business intelligence (BI) processing.The company observes that Amazon S3 is not receiving all the data that the application sends toKinesis Data Streams.
What should a solutions architect do to resolve this issue?
Update the Kinesis Data Streams default settings by modifying the data retention period.
Update the application to use the Kinesis Producer Library (KPL) to send the data to Kinesis Data Streams.
Update the number of Kinesis shards to handle the throughput of the data that is sent to Kinesis Data Streams.
Turn on S3 Versioning within the S3 bucket to preserve every version of every object that is ingested in the S3 bucket.