nerdexam
Amazon

DEA-C01 · Question #157

A transportation company wants to track vehicle movements by capturing geolocation records. The records are 10 bytes in size. The company receives up to 10.000 records every second. Data…

The correct answer is B. Kinesis Producer Library (KPL). To reliably ingest high-volume, small records into Kinesis Data Streams and maximize shard throughput efficiency, especially under unreliable network conditions, a specialized producer library is most effective.

Data Ingestion and Transformation

Question

A transportation company wants to track vehicle movements by capturing geolocation records. The records are 10 bytes in size. The company receives up to 10.000 records every second. Data transmission delays of a few minutes are acceptable because of unreliable network conditions. The transportation company wants to use Amazon Kinesis Data Streams to ingest the geolocation data. The company needs a reliable mechanism to send data to Kinesis Data Streams. The company needs to maximize the throughput efficiency of the Kinesis shards. Which solution will meet these requirements in the MOST operationally efficient way?

Options

  • AKinesis Agent
  • BKinesis Producer Library (KPL)
  • CAmazon Kinesis Data Firehose
  • DKinesis SDK

How the community answered

(48 responses)
  • A
    17% (8)
  • B
    71% (34)
  • C
    8% (4)
  • D
    4% (2)

Why each option

To reliably ingest high-volume, small records into Kinesis Data Streams and maximize shard throughput efficiency, especially under unreliable network conditions, a specialized producer library is most effective.

AKinesis Agent

Kinesis Agent is primarily used for collecting and sending log files from EC2 instances or servers to Kinesis Streams or Firehose, not ideal for direct application integration with high-volume, small records from various sources.

BKinesis Producer Library (KPL)Correct

The Kinesis Producer Library (KPL) is designed to optimize data ingestion into Kinesis Data Streams by offering features such as automatic retries for reliability, data aggregation to maximize throughput by reducing API calls per record, and asynchronous sending, which makes it highly efficient and resilient to network fluctuations.

CAmazon Kinesis Data Firehose

Amazon Kinesis Data Firehose is used for delivering streaming data to destinations like S3, Redshift, or Splunk, not as the primary mechanism for sending data directly to Kinesis Data Streams while maximizing shard efficiency through client-side aggregation.

DKinesis SDK

Using the Kinesis SDK directly to call the PutRecord or PutRecords API operations would require significant custom development to implement features like automatic retries, record aggregation, and asynchronous processing that the KPL provides out-of-the-box for optimal efficiency.

Concept tested: Kinesis Producer Library (KPL) for efficient data ingestion

Source: https://docs.aws.amazon.com/kinesis/latest/dev/kinesis-kpl.html

Topics

#Kinesis Data Streams#Data Ingestion#Throughput Optimization#Kinesis Producer Library (KPL)

Community Discussion

No community discussion yet for this question.

Full DEA-C01 Practice