Welcome to ExamTopics
ExamTopics Logo
- Expert Verified, Online, Free.

Unlimited Access

Get Unlimited Contributor Access to the all ExamTopics Exams!
Take advantage of PDF Files for 1000+ Exams along with community discussions and pass IT Certification Exams Easily.

Exam AWS Certified Solutions Architect - Associate SAA-C03 topic 1 question 402 discussion

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?

  • 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.
Show Suggested Answer Hide Answer
Suggested Answer: A 🗳️

Comments

Chosen Answer:
This is a voting comment (?) , you can switch to a simple comment.
Switch to a voting comment New
WherecanIstart
Highly Voted 1 year, 3 months ago
Selected Answer: A
"A Kinesis data stream stores records from 24 hours by default, up to 8760 hours (365 days)." https://docs.aws.amazon.com/streams/latest/dev/kinesis-extended-retention.html The question mentioned Kinesis data stream default settings and "every other day". After 24hrs, the data isn't in the Data stream if the default settings is not modified to store data more than 24hrs.
upvoted 24 times
...
cegama543
Highly Voted 1 year, 3 months ago
Selected Answer: C
C. Update the number of Kinesis shards to handle the throughput of the data that is sent to Kinesis Data Streams. The best option is to update the number of Kinesis shards to handle the throughput of the data that is sent to Kinesis Data Streams. Kinesis Data Streams scales horizontally by increasing or decreasing the number of shards, which controls the throughput capacity of the stream. By increasing the number of shards, the application will be able to send more data to Kinesis Data Streams, which can help ensure that S3 receives all the data.
upvoted 16 times
Buruguduystunstugudunstuy
1 year, 3 months ago
Answer C: C. Update the number of Kinesis shards to handle the throughput of the data that is sent to Kinesis Data Streams. - Answer C updates the number of Kinesis shards to handle the throughput of the data that is sent to Kinesis Data Streams. By increasing the number of shards, the data is distributed across multiple shards, which allows for increased throughput and ensures that all data is ingested and processed by Kinesis Data Streams. - Monitoring the Kinesis Data Streams and adjusting the number of shards as needed to handle changes in data throughput can ensure that the application can handle large amounts of streaming data.
upvoted 2 times
Buruguduystunstugudunstuy
1 year, 3 months ago
@cegama543, my apologies. Moderator if you can disapprove of the post above? I made a mistake. It is supposed to be intended on the post that I submitted. Thanks.
upvoted 2 times
...
...
CapJackSparrow
1 year, 3 months ago
lets say you had infinity shards... if the retention period is 24 hours and you get the data every 48 hours, you will lose 24 hours of data no matter the amount of shards no?
upvoted 14 times
enzomv
1 year, 3 months ago
Amazon Kinesis Data Streams supports changes to the data record retention period of your data stream. A Kinesis data stream is an ordered sequence of data records meant to be written to and read from in real time. Data records are therefore stored in shards in your stream temporarily. The time period from when a record is added to when it is no longer accessible is called the retention period. A Kinesis data stream stores records from 24 hours by default, up to 8760 hours (365 days).
upvoted 4 times
...
...
...
awsgeek75
Most Recent 5 months, 2 weeks ago
Selected Answer: A
Every other day, = 48 hours Default settings = 24 hours B: Development library so won't help C: More shards may retain more data but they will have same limitation of 24 hours retention D: Irrelevant A: Increase the default limit from 24 hours to 48 hours
upvoted 5 times
...
pentium75
6 months, 1 week ago
Selected Answer: A
"Default settings" = 24 hour retention
upvoted 4 times
...
Murtadhaceit
7 months ago
Selected Answer: A
KDS has two modes: 1. Provisioned Mode: Answer C would be correct if KDS runs in this mode. We need to increase the number of shards. 2. On-Demand: Scales automatically, which means it doesn't need to adjust the number of shards based on observed throughput. And since the question does not mention which type, I would go with On-demand. Therefore, A is the correct answer.
upvoted 2 times
...
TariqKipkemei
8 months, 2 weeks ago
Selected Answer: A
Data records are stored in shards in a kinesis data stream temporarily. The time period from when a record is added, to when it is no longer accessible is called the retention period. This time period is 24 hours by default, but could be adjusted to 365 days. Kinesis Data Streams automatically scales the number of shards in response to changes in data volume and traffic, so this rules out option C. https://docs.aws.amazon.com/streams/latest/dev/service-sizes-and-limits.html#:~:text=the%20number%20of-,shards,-in%20response%20to
upvoted 1 times
...
Ramdi1
9 months, 2 weeks ago
Selected Answer: A
I have only voted A because it mentions the default setting in Kinesis, if it did not mention that then I would look to increase the Shards. By default it is 24 hours and can go to 365 days. I think the question should be rephrased slightly. I had trouble deciding between A & C. Also apparently the most voted answer is the correct answer as per some advice I was given.
upvoted 2 times
...
BrijMohan08
10 months, 1 week ago
Selected Answer: A
Default retention is 24 hrs, but the data read is every other day, so the S3 will never receive the data, Change the default retention period to 48 hours.
upvoted 2 times
...
Guru4Cloud
10 months, 1 week ago
Selected Answer: C
By default, a Kinesis data stream is created with one shard. If the data throughput to the stream is higher than the capacity of the single shard, the data stream may not be able to handle all the incoming data, and some data may be lost. Therefore, to handle the high volume of data that the application sends to Kinesis Data Streams, the number of Kinesis shards should be increased to handle the required throughput. Kinesis Data Streams shards are the basic units of scalability and availability. Each shard can process up to 1,000 records per second with a maximum of 1 MB of data per second. If the application is sending more data to Kinesis Data Streams than the shards can handle, then some of the data will be dropped.
upvoted 1 times
Guru4Cloud
10 months, 1 week ago
If you have doubts, Please read about Kinesis Data Streams shards. Ans: A is not the correct answer here
upvoted 1 times
...
...
Amycert
10 months, 4 weeks ago
Selected Answer: A
the default retention period is 24 hours "The default retention period of 24 hours covers scenarios where intermittent lags in processing require catch-up with the real-time data. " so we should increment this
upvoted 1 times
...
hsinchang
11 months, 2 weeks ago
Selected Answer: A
As "Default settings" is mentioned here, I vote for A.
upvoted 1 times
...
jaydesai8
12 months ago
Selected Answer: A
keyword here is - default settings and every other day and since "A Kinesis data stream stores records from 24 hours by default, up to 8760 hours (365 days)." https://docs.aws.amazon.com/streams/latest/dev/kinesis-extended-retention.html Will go with A
upvoted 1 times
...
jayce5
1 year, 1 month ago
Selected Answer: A
C is wrong because even if you update the number of Kinesis shards, you still need to change the default data retention period first. Otherwise, you would lose data after 24 hours.
upvoted 2 times
...
antropaws
1 year, 1 month ago
Selected Answer: C
A is unrelated to the issue. The correct answer is C.
upvoted 1 times
...
omoakin
1 year, 1 month ago
Correct Ans. is B
upvoted 1 times
...
smd_
1 year, 2 months ago
By default, a Kinesis data stream is created with one shard. If the data throughput to the stream is higher than the capacity of the single shard, the data stream may not be able to handle all the incoming data, and some data may be lost. Therefore, to handle the high volume of data that the application sends to Kinesis Data Streams, the number of Kinesis shards should be increased to handle the required throughput
upvoted 2 times
...
arjundevops
1 year, 2 months ago
both Option A and Option C could be valid solutions to resolving the issue of data loss, depending on the root cause of the problem. It would be best to analyze the root cause of the data loss issue to determine which solution is most appropriate for this specific scenario.
upvoted 1 times
...
Community vote distribution
A (35%)
C (25%)
B (20%)
Other
Most Voted
A voting comment increases the vote count for the chosen answer by one.

Upvoting a comment with a selected answer will also increase the vote count towards that answer by one. So if you see a comment that you already agree with, you can upvote it instead of posting a new comment.

SaveCancel
Loading ...
ex Want to SAVE BIG on Certification Exam Prep?
close
ex Unlock All Exams with ExamTopics Pro 75% Off
  • arrow Choose From 1000+ Exams
  • arrow Access to 10 Exams per Month
  • arrow PDF Format Available
  • arrow Inline Discussions
  • arrow No Captcha/Robot Checks
Limited Time Offer
Ends in