‹ All DEA-C01 questions

DEA-C01 Practice Question 47: Firehose Error Output Prefix

AWS Certified Data Engineer – Associate (DEA-C01) · Test 5 · question 7 of 10

Data Operations and Supportmedium

An Amazon Data Firehose stream applies an AWS Lambda transformation and converts records to Parquet before writing to Amazon S3. Analysts report that a small percentage of events are missing from the Athena table. The stream's CloudWatch metrics show a non-zero ExecuteProcessingSuccess-failure count on some days, and the DeliveryToS3.Success metric is below 1 for those intervals.

Where are the missing records, and what should the engineer do?

Select one answer
Show answer and explanation

Answer:

  • B. Records whose Lambda transformation or record format conversion failed were written under the stream's S3 error output prefix; read them from there, fix the transformation, and reprocess

Firehose's failure handling for an S3 destination is specific: "Amazon Data Firehose delivers failed records to a S3 error bucket only when Lambda processing or parquet conversion fails." This stream does both, and the metrics point at processing failures, so the missing events were written to the configured error output prefix (with subprefixes such as processing-failed/ and format-conversion-failed/) rather than lost. Each record there is wrapped in an envelope carrying the error code, message and the raw data, which is exactly what is needed to diagnose the transformation bug and replay the affected records once it is fixed.

Option A misdescribes buffering. Buffer size and interval control when Firehose flushes a batch to S3, whichever condition is met first, not whether records are kept. A short interval produces more, smaller objects; it never discards data.

Option C describes the other failure path and applies it to the wrong case. Firehose does retry S3 delivery failures (up to 24 hours for DirectPut sources, and for the stream's retention period when the source is Kinesis Data Streams or MSK), but processing and conversion failures are not that category; they are routed to the error prefix, so the data is recoverable.

Option D is doubly wrong. A Firehose stream has no shards to configure, and the symptom is not lag: the records were consumed and processed, and the processing step is what failed.

Reference: Handle data delivery failures in Amazon Data Firehose

Practice Test 5 ›

Study guides for DEA-C01