SAA-C03 Practice Question 26: Kinesis Ordered Replay
AWS Certified Solutions Architect – Associate (SAA-C03) · Test 3 · question 6 of 10
A fleet-telematics company ingests GPS and engine readings from 50,000 trucks. Three independent applications consume the same readings: a live dashboard, an anomaly detector, and a billing calculator. Each must process a truck's readings in the exact order they were produced, and the applications must be able to read at different speeds without affecting one another.
Last month a bug in the anomaly detector went unnoticed for four days. After a fix, the team must be able to reprocess the last seven days of readings for that one application without the producers resending anything. Which design meets all the requirements?
Show answer and explanation
Answer:
Kinesis Data Streams meets all three requirements. The partition key decides which shard a record goes to, so every reading from one truck lands in the same shard, in the order it was written. There can be several applications on one stream, and each one reads it independently and at the same time, keeping its own position. Reading a record does not remove it. Records stay available for the retention period, which defaults to 24 hours and can be raised to as much as 365 days. With seven days of retention, the fixed anomaly detector simply starts reading from a point a week back, and the other two applications are unaffected.
Option A gives ordering per truck but not independent consumers. A queue message goes to the consumer that receives it and is gone once deleted, so the three applications would split the readings between them rather than each seeing all of them. Once a message is processed and deleted, it cannot be replayed.
Option B gets the fan-out right but loses both ordering and replay. Standard topics and standard queues make a best effort at ordering only, and a message deleted from a queue can't be read again.
Option C keeps the data for replay, but it batches records into S3 objects every few minutes. That adds latency the live dashboard can't accept, and it leaves each application to rebuild per-truck ordering itself from many objects.
Reference: Amazon Kinesis Data Streams terminology and concepts