AWS ML: Data Engineering — Free Practice Questions

18 free AWS ML: Data Engineering practice questions with the correct answers marked. Covers all exam domains, no signup needed.

18 questions · answers explained · free to practise · AWS AI & ML certification hub

⚠️ This exam has retired

AWS Certified Machine Learning – Specialty (MLS-C01) retired on 31 March 2026. These questions remain useful AWS machine-learning study material, but they no longer map to a bookable exam. Candidates certifying today should look at AWS Certified Machine Learning Engineer – Associate or AWS Certified Generative AI Developer – Professional.

▶️ Start the interactive quiz

Topics covered

Sample questions with answers

8 of the 18 questions in this set, with the correct answer marked and explained.

1. You are a data scientist that has been tasked with setting up an Amazon Elastic Map Reduce (EMR) cluster to host your organization's data lake. You also need to setup this cluster for machine learning processes and it has been decided to use Amazon SageMaker libraries as the machine learning platform. What steps do you need to take to start using SageMaker with your EMR cluster data lake?

  • Ensure the EMR cluster and SageMaker hosted model are in the same region to make successful inferences
  • Convert EMR DataFrame to CSV and use that to train and infer your model
  • Run your SageMaker Spark application on EMR by submitting your Spark application jar and any additional dependencies your Spark application uses
    SageMaker Spark is an open source Spark library for Amazon SageMaker. With SageMaker Spark you can construct Spark ML Pipelines using Amazon SageMaker stages. These pipelines interleave native Spark ML stages and stages that interact with SageMaker training and model hosting. With SageMaker Spark, you can train on Amazon SageMaker from Spark DataFrames using Amazon-provided ML algorithms or using your own algorithms -- all at Spark scale
  • Download the aws-sagemaker-spark-sdk component along with Spark on your EMR cluster

2. You have been tasked with transforming data that is stored in Amazon Relational Database Service (RDS) into Amazon S3. Currently you have Multi-AZ RDS enabled and setup inside a private VPC subnet with no access to the outside internet. You have setup an AWS Glue job to run using JDBC connection running in the same private VPC. Which of the following steps will occur or be applied to enable your transformation job to run successfully and securely?

  • Setup a Network Address Translation (NAT) gateway inside the VPC.
  • Setup a routing table enabling RDS instance inside the private VPC to access S3 as data destination
  • AWS Glue sets up elastic network interfaces that enable your jobs to connect securely to RDS within your VPC
    AWS Glue must be able to access your data stores to run your extract, transform, and load (ETL) jobs. If a job doesn't need to run in your virtual private cloud (VPC) subnet—for example, transforming data from Amazon S3 to Amazon S3—no additional configuration is needed. If a job needs to run in your VPC subnet—for example, transforming data from a JDBC data store in a private subnet—AWS Glue sets up elastic network interfaces that enable your jobs to connect securely to other resources within your VPC. Each elastic network interface is assigned a private IP address from the IP address range within the subnet you specified. No public IP addresses are assigned. Security groups specified in the AWS Glue connection are applied on each of the elastic network interfaces. All JDBC data stores that are accessed by the job must be available from the VPC subnet. To access Amazon S3 from within your VPC, a VPC Gateway Endpoint is required. If your job needs to access both VPC resources and the public internet, the VPC needs to have a Network Address Translation (NAT) gateway inside the VPC
  • Setup a VPC Gateway Endpoint to access S3 as your data destination

3. You need to implement transformations for data that is hosted in Amazon S3 and an Amazon RDS MySQL instance. Which of the following needs to occur to achieve this?

  • Define an AWS Glue Crawler to populate the AWS Glue Data Catalog with tables.
    AWS Glue uses a crawler to populate the Data Catalog in AWS Glue. Once the Data Catalog is populated, you can then run your AWS Glue Job to transform the data. To access S3 data you must ensure the role passed to the crawler has permission to access Amazon S3 paths. For the JDBC connection, the username and password is used to connect to the RDS instance.
  • Ensure that the JDBC connection the crawler uses has the correct username and password credentials to access the RDS instance
  • You must create two separate transformation jobs. AWS Glue only processes one data store at a time.
  • Ensure that the role you pass to the crawler has permission to access Amazon S3 paths.

4. You are working for an online shopping platform that records actions made by its users. This information is captured in multiple JSON files stored in S3. You have been tasked with moving this data into Amazon Redshift database tables as part of a data lake migration process. Which of the following needs to occur to achieve this in the most efficient way?

  • Troubleshoot load errors and modify your COPY commands to correct the errors.
    You can add data to your Amazon Redshift tables either by using an INSERT command or by using a COPY command. At the scale and speed of an Amazon Redshift data warehouse, the COPY command is many times faster and more efficient than INSERT commands. You can load data from an Amazon DynamoDB table, or from files on Amazon S3, Amazon EMR, or any remote host through a Secure Shell (SSH) connection. When loading data from S3, you can load table data from a single file, or you can split the data for each table into multiple files. The COPY command can load data from multiple files in parallel.
  • Use COPY commands to load the tables from the data files on Amazon S3.
  • Launch an Amazon Redshift cluster and create database tables.
  • Use COPY commands to load the tables from the data files on DynamoDB.

5. You work for a manufacturing company who has hundreds of conveyor belts with built-in IoT sensors. These sensors stream data into AWS using Kinesis Data Streams. The features associated with the data is belt_id, building_number, belt_temp, outside_temp, and power_consumption. During the processing of the data, you need to transform the data and store it in a data store. Which combination of services can you use to achieve this?

  • Immediately send the data to Lambda from Kinesis Data Streams. Transform the data in Lambda and write the transformed data into S3
    Kinesis Data Streams and Kinesis Data Analytics cannot write data directly to S3. Kinesis Data Firehose is used as the main delivery mechanism for outputting data into S3. You can also use Lambda to write data into S3.
  • Setup Kinesis Firehose to ingest data from Kinesis Data Streams, then send data to Lambda. Transform the data in Lambda and write the transformed data into S3
  • Use Kinesis Data Streams to immediately write the data into S3. Next, setup a Lambda function that fires anytime an object is PUT onto S3. Transform the data from the Lambda function, then write the transformed data into S3
  • Setup Kinesis Data Analytics to ingest the data from Kinesis Data Stream, then run real-time SQL queries on the data to transform it. After the data is transformed, ingest the data with Kinesis Data Firehose and write the data into S3

6. A machine learning model is being created using Amazon's Factorization Machines algorithm to help make click predictions and item recommendations for new customers. Which of the following would be candidates during the training process?

  • Using sparse data in recordIO-protobuf format with Float32 tensors as training data.
    The factorization machine algorithm can be run in either in binary classification mode or regression mode. In regression mode, the testing dataset is scored using Root Mean Square Error (RMSE). In binary classification mode, the test dataset is scored using Binary Cross Entropy (Log Loss), Accuracy (at threshold=0.5) and F1 Score (at threshold =0.5). For training, the factorization machines algorithm currently supports only the recordIO-protobuf format with Float32 tensors. CSV format is not a good candidate. For inference, factorization machines support the application/json and x-recordio-protobuf formats.
  • Creating a binary classification model where the testing dataset is scored using Binary Cross Entropy (Log Loss), Accuracy, and F1 Score.
  • Creating a regression model where the testing dataset is scored using Root Mean Square Error (RMSE).
  • Making inferences to the model in application/csv format.

7. You are in charge of training a deep learning (DL) model at scale using massively large datasets. These datasets are too large to load into memory on your Notebook instances. What are some best practices to use to solve this problem and still have fast training times?

  • Use a fleet of RAM intensive ml.m5 EC2 instances with MapReduce and Hadoop installed onto them. Load the data in parallel to the cluster to distribute across multiple machines.
  • Once the data is loaded onto the instances, split the data into a small number of files and partitioned, then the preparation job can be parallelized and thus run faster.
  • Once the data is split into a small number of files and partitioned, the preparation job can be parallelized and thus run faster.
    When you perform deep learning (DL) at scale, for example, datasets are commonly too large to fit into memory and therefore require pre-processing steps to partition the datasets. In general, a best practice is to pack the data in parallel, distributed across multiple machines. You should do this in a single run, and split the data into a small number of files with a uniform number of partitions. When the data is partitioned, it is readily accessible and easily fed in as batches across multiple machines. When the data is split into a small number of files, the preparation job can be parallelized and thus run faster. You can do all of this using frameworks such as MapReduce and Apache Spark. Running an Apache Spark cluster on Amazon EMR provides a managed framework that can process massive quantities of data.
  • Pack the data in parallel, distributed across multiple machines and split the data into a small number of files with a uniform number of partitions.

8. Your company has decided to use the Amazon Machine Learning service to classify social media posts mentioning your company into two categories: posts requiring a response and posts that do not. You have access to a training dataset of 20,000 posts that each contain things like the timestamp, author, and the full text of the post. You are missing the target labels required for training. How can you effectively create valid target label data?

  • Use the Amazon Mechanical Turk web service to publish Human Intelligence Tasks that ask Turk workers to label the posts.
    This would be one great way to make sure the data is labeled correctly without worrying about possible compounding of errors with the machine learning.
  • Using the a priori probability distribution of the two classes, use Monte-Carlo simulation to generate the labels.
  • Use the sentiment analysis NLP library to determine whether a post requires a response.
  • Ask the social media handling team to review each post and provide the label.

10 more questions in the app

Practise the full 18-question set with a timer, scoring and progress tracking.

Start the free quiz
Get the ad-free PRO app

More practice sets

Browse every quiz, tutorial and interactive AI tool on the All Tutorials & Tools page, or jump to a certification hub: AWS, Azure AI, Google Cloud, AWS Data Engineer.