Databricks Certified Data Engineer Associate 問題集

Databricks Certified Data Engineer Associate 試験対策公式 Exam Guide(2026年5月4日時点の試験の版)準拠

Databricks Certified Data Engineer Associateの日本語問題集。全163問に解説つき。

Databricks Certified Data Engineer Associate 無料問題 6 / 10 ・ 分野4: Working with Lakeflow Jobs

Lakeflow Jobs のジョブに、3つのタスクを直列に並べた。ingest(依存先なし)→ notify_failure(依存先は ingest だけ・Run if は At least one failed)→ archive(依存先は notify_failure だけ・Run if は既定の All succeeded)。ある日、ingest が成功した。この日の notify_failure と archive の結果として正しいものはどれか。

  1. notify_failure は条件を満たさず Upstream failed になり、archive も Upstream failed で実行されない
  2. notify_failure は条件を満たさず Excluded で飛ばされ、Excluded は成功として扱われるので archive は実行される
  3. notify_failure は条件を満たさず Excluded で飛ばされ、依存先がすべて Excluded の archive も Excluded で飛ばされる
  4. notify_failure は条件を満たさず Excluded で飛ばされ、archive は依存先がすべて成功ではなく Upstream failed になる
正解と解説を見る

正解: C

正解の理由
At least one failed は、依存先のどれかが失敗したときに動く条件で、満たされないとタスクは Excluded の印で飛ばされる。ingest が成功したので notify_failure は Excluded になる。archive の依存先は notify_failure だけで、それが Excluded である。公式は、依存先がすべて Excluded のタスクは Run if の条件にかかわらず Excluded になると書き、A → B → C の直列なら A の除外が C まで伝わる例を挙げている。

違う選択肢
「notify_failure は条件を満たさず Upstream failed になり、archive も Upstream failed で実行されない」… 失敗を扱う条件(At least one failed)が満たされないときの印は、Upstream failed ではなく Excluded である。notify_failure は Excluded になり、archive も依存先がすべて Excluded なので Excluded になる。
「notify_failure は条件を満たさず Excluded で飛ばされ、archive は依存先がすべて成功ではなく Upstream failed になる」… notify_failure が Excluded になるところまでは合っている。だが archive は依存先がすべて Excluded なので、All succeeded を満たすかを見る前に、Run if にかかわらず Excluded になる。
「notify_failure は条件を満たさず Excluded で飛ばされ、Excluded は成功として扱われるので archive は実行される」… 公式には「Run if を評価するとき、Excluded の上流は成功として扱う」という決まりも確かにある。ただし同じ注記の次の文が "If all of a task's dependencies are excluded, the task itself is also excluded, regardless of its Run if condition." である。archive の依存先は notify_failure だけで、それが Excluded なので、archive は Run if にかかわらず Excluded になり、実行されない。

設計の勘所
失敗の通知のような「失敗したときだけ動く」タスクの後ろに、毎回動いてほしいタスクを直列でつなぐと、成功した日にまとめて飛ばされる。archive を毎回動かしたいなら、依存先に ingest も入れて Run if を選び直すか、notify_failure と並べて ingest に直接つなぐ。DAG の線の引き方で結果が変わるので、成功の日と失敗の日の両方で、各タスクの印をたどって確かめる。

Databricks Certified Data Engineer Associateの演習アプリ(無料10問・全問は解錠で)へ

問題集(note)を見る