Apache Airflow Fundamentals · 35% of the exam

Authoring and Scheduling DAGs: free practice questions

5 sample questions from our 15-question bank for this domain — answers and explanations included. These are the same scenario-based style as the real Astronomer exam.

1. Which schedule value causes a DAG to have NO automatic schedule (only manual/triggered runs)?

  • A. schedule=None✓ Correct
  • B. schedule='@daily'
  • C. schedule='* * * * *'
  • D. schedule='@hourly'
Explanation

schedule=None means the DAG is only run when manually triggered (or triggered by another DAG), with no automatic schedule. @daily (B), '* * * * *' (C, every minute), and @hourly (D) all define automatic schedules.

2. You want task_a and task_b to both run before task_c. Which dependency expression is correct?

  • A. [task_a, task_b] >> task_c✓ Correct
  • B. task_c >> [task_a, task_b]
  • C. task_a >> task_b >> task_c only
  • D. task_a << task_b << task_c
Explanation

[task_a, task_b] >> task_c sets both task_a and task_b as upstream of task_c, so task_c runs after both complete. Option B reverses the direction, option C makes them sequential (a→b→c, not both before c independently), and option D sets reverse dependencies.

3. What does the cron expression '0 6 * * 1' mean as a DAG schedule?

  • A. Run at 06:00 every Monday✓ Correct
  • B. Run every 6 minutes
  • C. Run at midnight on the 6th of every month
  • D. Run once per year in June
Explanation

Cron fields are minute hour day-of-month month day-of-week: '0 6 * * 1' = minute 0, hour 6, any day, any month, day-of-week 1 (Monday) — so 06:00 every Monday. The other readings misinterpret the fields.

4. What is the purpose of a DAG's start_date?

  • A. It defines the logical date from which the DAG's scheduling begins (the earliest run the scheduler will consider)✓ Correct
  • B. It is the exact wall-clock time the DAG file was created
  • C. It sets the task timeout
  • D. It determines the DAG's color in the UI
Explanation

start_date establishes the point from which Airflow begins scheduling DAG runs (the first logical date considered). It's not the file creation time (B), a task timeout (C), or a UI color setting (D).

5. A DAG has schedule='@hourly' and start_date of yesterday with catchup=True. What happens when enabled?

  • A. Airflow backfills an hourly run for each hour from the start_date to now✓ Correct
  • B. It runs exactly once
  • C. It runs every minute
  • D. It never runs
Explanation

With @hourly, a start_date yesterday, and catchup=True, Airflow schedules a run for each hourly interval from the start_date to the present (backfill). It doesn't run once (B), every minute (C), or never (D).

10 more questions in this domain

Practice the full bank with instant grading, flashcards, and a timed mock exam.

Start practicing free
Authoring and Scheduling DAGs — Free Apache Airflow Fundamentals Practice Questions | DataCertPrep — Certification Prep