Courseiva
Design for New SolutionshardMultiple ChoiceObjective-mapped

SAP-C02 Design for New Solutions Practice Question

A company is designing a serverless data processing pipeline using AWS Lambda to process messages from an Amazon SQS queue. The messages are generated by thousands of IoT devices. The architect needs to ensure that messages are processed in order within each device's stream and that failures are handled without data loss. Which combination of services should the architect use?

⚠ Common exam trap

Many exam-takers assume SQS FIFO queues are the only way to guarantee ordering, but they overlook the throughput limitations and the fact that Kinesis Data Streams is designed for high-throughput, ordered stream processing with Lambda, making it the better fit for IoT-scale workloads.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Use Amazon Kinesis Data Streams with Lambda function and a dead-letter queue

Amazon Kinesis Data Streams preserves the order of records within a shard, which maps to each device's stream when using a partition key like device ID. The Lambda function processes records from the stream, and a dead-letter queue captures any records that fail after the retry policy is exhausted, ensuring no data loss. This combination meets the requirements for ordered processing per device and fault tolerance without data loss.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Use Amazon Kinesis Data Firehose with Lambda function and an SQS queue for error handling

    Why it's wrong here

    Firehose is for delivery to destinations, not for real-time ordered processing.

  • Use Amazon SQS standard queues with Lambda function and a dead-letter queue

    Why it's wrong here

    Standard queues do not guarantee order.

  • Use Amazon SQS FIFO queues with Lambda function

    Why it's wrong here

    SQS FIFO provides ordering but Lambda processes messages in batches, potentially reordering if multiple message groups are used.

  • Use Amazon Kinesis Data Streams with Lambda function and a dead-letter queue

    Why this is correct

    Kinesis preserves order within shards; Lambda processes records sequentially; DLQ handles failures.

Quick reference

Cloud Service Model Comparison

ModelYou ManageProvider ManagesExamples
IaaSOS, runtime, apps, dataHardware, hypervisor, networkingEC2, Azure VMs, GCP Compute Engine
PaaSApps and dataOS, runtime, middleware, hardwareElastic Beanstalk, Azure App Service
SaaSData and settings onlyEverything elseMicrosoft 365, Salesforce, Workday
FaaS / ServerlessFunction code onlyInfra, scaling, runtimeLambda, Azure Functions, Cloud Run
CaaSContainers and appsKubernetes, OS, hardwareEKS, AKS, GKE

About these practice questions

One of 1,660 original SAP-C02 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This SAP-C02 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the SAP-C02 exam.