DEA-C01 Data Ingestion and Transformation Practice Question
Network Topology
A CloudFormation template defines an AWS Glue job. The job fails during execution with the error 'Unable to locate script: s3://scripts-bucket/etl-script.py'. The S3 bucket 'scripts-bucket' exists and the script file is present. What is the most likely cause?
⚠ Common exam trap
Many exam-takers assume the error is about the script path or region mismatch, but the real cause is almost always missing IAM permissions for the Glue execution role to read the script from S3.
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
✓
The IAM role for the Glue job does not have s3:GetObject permission on the scripts bucket.
The Glue job fails to locate the script because the IAM role assigned to the job lacks the s3:GetObject permission on the scripts-bucket. Even though the bucket and object exist, AWS Glue requires the execution role to have explicit read access to the S3 object to download and execute the script. Without this permission, the job cannot retrieve the file, resulting in the 'Unable to locate script' error.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
The script location path is incorrect; it should include the bucket's region.
Why it's wrong here
S3 paths do not include region.
- ✓
The IAM role for the Glue job does not have s3:GetObject permission on the scripts bucket.
Why this is correct
Glue needs to read the script from S3.
- ✗
The Glue job requires Python version 2, but the script uses Python 3 syntax.
Why it's wrong here
PythonVersion is set to 3, so it's compatible.
- ✗
The S3 bucket is in a different AWS region than the Glue job.
Why it's wrong here
Cross-region access is possible; not the most likely cause.
Quick reference
AWS S3 Storage Class Comparison
| Storage Class | Min Duration | Retrieval | Use Case |
|---|---|---|---|
| S3 Standard | None | Immediate | Frequently accessed data |
| S3 Standard-IA | 30 days | Immediate | Infrequent access, rapid retrieval |
| S3 One Zone-IA | 30 days | Immediate | Non-critical infrequent data |
| S3 Intelligent-Tiering | None | Immediate–hours | Unknown or changing access patterns |
| S3 Glacier Instant | 90 days | Milliseconds | Archive with instant retrieval |
| S3 Glacier Flexible | 90 days | Minutes–hours | Archive, flexible retrieval |
| S3 Glacier Deep Archive | 180 days | Hours | Long-term compliance archive |
Go deeper
Related to this question
About these practice questions
One of 1,711 original DEA-C01 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 →
Same concept, more angles
1 more way this is tested on DEA-C01
These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.
Variation 1. Refer to the exhibit. A data engineer deploys this CloudFormation template to create an AWS Glue job. The job fails on the first run with an error: 'AccessDeniedException: User: arn:aws:sts::123456789012:assumed-role/GlueServiceRole/... is not authorized to perform: s3:GetObject on resource: s3://my-bucket/scripts/etl.py'. What is the most likely cause?
medium- A.The ExecutionProperty MaxConcurrentRuns is set to 1, preventing the job from running.
- ✓ B.The IAM role associated with the Glue job does not have an S3 GetObject permission for the script location.
- C.The MaxRetries is set to 0, so the job does not retry on failure.
- D.The script location is incorrectly specified; it should be an S3 URI with bucket and key.
Why B: The error message indicates that the IAM role 'GlueServiceRole' assumed by the AWS Glue job does not have the s3:GetObject permission for the script object at s3://my-bucket/scripts/etl.py. AWS Glue requires the execution role to have read access to the script location specified in the 'ScriptLocation' parameter. Without this permission, the job fails immediately on startup because it cannot download and execute the ETL script.
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This DEA-C01 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 DEA-C01 exam.