Динамическая структура воздушного потока DAG
Я искал решение, в котором я мог бы определить структуру dag при запуске dag, поскольку я не уверен в количестве операторов, которые мне придется запустить.
Ниже приведена последовательность выполнения, которую я планирую создать.
|-- Task B.1 --| |-- Task C.1 --|
|-- Task B.2 --| |-- Task C.2 --|
Task A --|-- Task B.3 --|---> Task B ---> |-- Task C.3 --|
| .... | | .... |
|-- Task B.N --| |-- Task C.N --|
Я не уверен в значении N.
Возможно ли это в потоке воздуха? Если да, то как мне этого добиться.
Заранее спасибо
1 ответ
В прошлом мне приходилось делать что-то похожее, я написал группу обеспечения доступности баз данных, которая считывала файл YAML, в котором определялось, какие задачи создавать.
Моя ситуация заключалась в том, что число таблиц, из которых я извлекал данные, могло изменяться каждую неделю, вместо того, чтобы повторно развертывать DAG в рабочей среде каждый раз, когда мне нужно было добавить новую таблицу, я указывал DAG на файл YAML, в котором описывалось, какие таблицы извлечь. Каждый раз, когда появлялась новая таблица, я просто редактировал файл YAML с новыми деталями таблицы.
Я думаю, что становится немного сложнее, если сначала нужно запустить задачу вверх по течению, которая затем определяет, сколько задач внизу нужно запустить, как в следующем, но похожем вопросе:
Генерация динамических задач в потоке воздуха на основе выходных данных восходящей задачи