SAA-C03 - Design High-Performing Architectures - Section 3.9

Determine high-performing data ingestion and transformation solutions using Amazon Kinesis, AWS Glue and Amazon Athena.

Describe Amazon Kinesis Data Streams and Kinesis Data Firehose for real-time ingestion and delivery to storage or analytics destinations, and contrast them with AWS DataSync for scheduled bulk transfer from on-premises. Use AWS Glue as a serverless ETL service to catalogue and transform data, and Amazon Athena to run serverless SQL queries directly against data in S3.

Amazon KinesisAWS GlueAmazon AthenaAWS DataSync

Practice question for this objective

Free sampleDesign High-Performing Architecturesmedium

A data team must run a recurring job that reads several large catalogued data sets from Amazon S3, joins and cleanses them with Apache Spark, and writes the partitioned Parquet output back to S3 for analytics. The team wants a serverless service that scales Spark capacity automatically per run and integrates with the AWS Glue Data Catalog, so they neither size nor patch a cluster between runs. Which service best fits this transformation workload?

  • AProvision a long-running Amazon EMR cluster with Apache Spark, schedule the join and cleansing steps on it, and keep the cluster available between runs so the recurring transformation always has capacity.
  • BUse Amazon Athena CREATE TABLE AS SELECT statements to read the catalogued data, apply the joins and cleansing in SQL, and write partitioned Parquet results back into the analytics S3 location.
  • CUse an AWS Glue Spark ETL job that reads the catalogued sources, performs the join and cleansing transformations, and writes partitioned Parquet to S3, with Glue provisioning the Spark capacity per run. Correct
  • DBuild an AWS Lambda function that loads each S3 data set into memory, runs the join and cleansing in code on every schedule, and writes the partitioned Parquet output back to the analytics bucket.
Choose serverless AWS Glue Spark ETL for recurring multi-source transformations that join, cleanse, and write Parquet using the Glue Data Catalog. AWS Glue provides serverless Apache Spark ETL jobs that read catalogued sources from the Glue Data Catalog, run distributed join and cleansing transformations, and write partitioned output such as Parquet back to S3. Glue allocates and scales worker capacity for each job run and requires no cluster provisioning or patching, which fits a recurring large-scale transformation workload.

Why A is wrong: EMR with Spark can perform the transformation, but a long-running cluster means the team sizes, patches, and pays for idle capacity between runs, which is the operational overhead they want to avoid.

Why B is wrong: Athena CTAS can transform and write Parquet, but it is a SQL query engine without the Spark programming model the team specifies and is less suited to complex multi-source ETL pipelines.

Why C is correct: Glue runs serverless Spark ETL jobs that read from and write to the Glue Data Catalog and S3, scaling worker capacity per run, so the team performs the join and cleansing without sizing or patching any cluster.

Why D is wrong: Lambda has tight memory and runtime limits and no native Spark engine, so joining several large data sets in a single function is impractical and would not scale to the volumes described.

See more SAA-C03 practice questions, answers explained.

More in this domain

Back to all Design High-Performing Architectures objectives, or the SAA-C03 cert hub.

Examworthy is not affiliated with or endorsed by Amazon Web Services. Original, blueprint-aligned practice material only.