DP-700 · Question #123
You need to modify the DAG definition to meet the following requirements: Ensure that notebook_01 and notebook_02 run in parallel. Ensure that notebook_03 only runs after the execution of…
The correct answer is C. Create two stages in the DAG definition. Add notebook_03 to the first stage. Add notebook_01 and notebook_02 to the second stage. The question asks how to define dependencies in a DAG (Directed Acyclic Graph) to make two notebooks run in parallel and a third run only after both complete.
Question
- Ensure that notebook_01 and notebook_02 run in parallel.
- Ensure that notebook_03 only runs after the execution of notebook_01 and notebook_02 is complete.
Options
- ACreate a second DAG definition. Move notebook_03 and notebook_02 to the new DAG definition.
- BMove the notebook_03 declaration to the top of the DAG definition. Add a concurrency to notebook_02 and notebook_01.
- CCreate two stages in the DAG definition. Add notebook_03 to the first stage. Add notebook_01 and notebook_02 to the second stage.
- DPlace the declaration of notebook_03 to the top of the DAG definition. Add a new stage that contains notebook_01 and notebook_02.
How the community answered
(41 responses)- A5% (2)
- B17% (7)
- C73% (30)
- D5% (2)
Why each option
The question asks how to define dependencies in a DAG (Directed Acyclic Graph) to make two notebooks run in parallel and a third run only after both complete.
Creating a second DAG definition would result in two independent execution flows and would not ensure the required sequential dependency between all three notebooks.
Merely moving a declaration to the top or adding a 'concurrency' parameter does not define the explicit parallel-then-sequential dependency required by the problem; dependencies dictate execution order, not declaration order.
To execute notebook_01 and notebook_02 concurrently and then notebook_03 sequentially after their completion, a DAG definition should structure these tasks into distinct stages. By logically grouping notebook_01 and notebook_02 into one stage for parallel execution and defining notebook_03 as a dependent task in a subsequent stage, the required execution flow is achieved, even if the specific phrasing of which stage is 'first' or 'second' in the option might be misleadingly reversed.
Placing a declaration at the top and creating a new stage without explicit dependency definitions does not ensure the required parallel and sequential execution order.
Concept tested: DAG task orchestration, parallel and sequential execution
Source: https://learn.microsoft.com/fabric/data-factory/create-pipelines
Topics
Community Discussion
No community discussion yet for this question.