AWS Certified Developer – Associate (DVA-C02)Development with AWS ServicesHard

A developer is designing a serverless application that processes a high volume of real-time clickstream data from a website. The data needs to be ingested continuously, and multiple downstream applications (e.g., real-time analytics, archival to S3, and a dashboard) need to consume this data concurrently and independently. The solution must support ordering of records and allow for replay of data for a limited time. Which AWS service should the developer use as the ingestion and streaming layer?

  1. AAmazon SQS (Simple Queue Service)
  2. BAmazon SNS (Simple Notification Service)
  3. CAmazon Kinesis Data Streams
  4. DAmazon DynamoDB Streams
Show answer & explanation

Correct answer: C. Amazon Kinesis Data Streams

Amazon Kinesis Data Streams is a highly scalable and durable real-time data streaming service. It can continuously capture gigabytes of data per second from hundreds of thousands of sources. It supports multiple consumers, ordered records within a shard, and retention of data for up to 365 days, enabling data replay for various downstream applications.

Why the other options are wrong

  • A. Amazon SQS is a message queuing service for decoupling, not for real-time streaming of high-volume data to multiple concurrent consumers with data replay capabilities.
  • B. Amazon SNS is a pub/sub notification service, not designed for continuous, ordered, high-volume data streaming with replay capabilities.
  • D. Amazon DynamoDB Streams captures changes to DynamoDB tables for real-time events, but it's specific to DynamoDB data, not for general clickstream ingestion.

Amazon Kinesis Data Streams

A real-time data streaming service that can continuously capture and store terabytes of data per hour from hundreds of thousands of sources.

  • Supports high-throughput, low-latency data ingestion.
  • Allows multiple consumers to process the same stream concurrently.
  • Maintains the order of records within a shard.
  • Retains data for up to 365 days for replay.

Memory trick: When data 'flows' like a 'river' for 'streams' of analysis, 'Kinesis' is the powerful 'stream' engine.

More Development with AWS Services questions