DEA-C01 Question 309
Select 2You are designing a data processing pipeline on AWS for a retail application that processes orders in real-time. The pipeline needs to invoke different services for specific tasks like data validation, enrichment, and transformation. Each service is exposed via a REST API, and you want to ensure that these APIs are called efficiently and reliably as part of the pipeline. Which of the following AWS services or features should you use to orchestrate and manage these API calls?
- A
AWS Step Functions
- B
Amazon SQS
- C
Amazon API Gateway
- D
AWS Lambda
- E
Amazon EventBridge
Show answer and explanation
Correct answers: A, C
Explanation
To efficiently and reliably call APIs in a data processing pipeline, AWS Step Functions is ideal for orchestrating and managing workflows, including API calls, with features like retries, parallel processing, and error handling. Amazon API Gateway is useful for exposing and managing the APIs securely. Together, these services provide a robust solution for managing API-based workflows in a pipeline.
- A. Correct.
AWS Step Functions is correct because it allows you to orchestrate multiple API calls in a reliable and fault-tolerant manner. It can coordinate calls to different services and handle retries, timeouts, and error handling.
- B. Incorrect.
Amazon SQS is incorrect because it is primarily a queuing service used for decoupling components of a distributed application, not for managing or orchestrating API calls.
- C. Correct.
Amazon API Gateway is correct because it acts as a managed service for creating and managing REST APIs. It can front these APIs and integrate with AWS Step Functions for orchestration.
- D. Incorrect.
AWS Lambda is incorrect because, while it can invoke APIs, it is not an orchestration tool. It is better suited for executing serverless compute functions in response to events.
- E. Incorrect.
Amazon EventBridge is incorrect because it is designed for event-driven architectures and routing events between services, not for orchestrating API calls in a pipeline.