Дневной конвейер трансформаций: etl_pipeline рождается этапом 4 #146

Merged
ddmitry merged 2 commits from 134-etl-pipeline into main 2026-08-25 10:26:55 +03:00
2 changed files with 9 additions and 8 deletions
Showing only changes of commit d1aad3b143 - Show all commits

No files matched your search

+2 -2
View File
@@ -137,8 +137,8 @@
`etl_pipeline` этапа 5 получает готовую обвязку `DockerOperator` и готовое
правило позиции. Позднее резолюция #134 родила `etl_pipeline` этапом 4 —
[дневным конвейером трансформаций](../architecture/etl.md) без генераторных
шагов: обвязка и правило позиции остаются работникам, а конвейер живой день
дёргает после установки позиции.
шагов: обвязка и правило позиции остаются работникам, а живой день дёргает
конвейер после установки позиции.
Расхождения, внесённые тем же коммитом: раздел 8 спеки генератора (позицию
двигал «только даг `next_day`»; теперь — всякий, кто сыграл день, значением
+7 -6
View File
@@ -12,7 +12,7 @@
## Форма
Дневной конвейер — даг `etl_pipeline`, единственный на стенде. Своей работы
Дневной конвейер на стенде один — даг `etl_pipeline`. Своей работы
у него нет: он дёргает слойные даги последовательно и ждёт каждый —
`dds_transform`, затем `dm_transform`. Контур DQ этапа 4 встанет его же
звеном после DM; состав звена — предмет развилки витрин (#135) и нарезки.
@@ -24,9 +24,10 @@
## Три пути запуска
- **Живой день.** `world_live_day` дёргает конвейер с ожиданием — последним
шагом, после установки позиции. День сыгран — факт, упавшая трансформация
его не отменяет, поэтому позиция уже стоит; но зеленеть, не узнав,
разложился ли день, работник не должен ([ADR 0003](../adr/0003-dag-run-state.md)).
шагом, после установки позиции. Порядок несёт смысл: день сыгран — факт,
упавшая трансформация его не отменяет, поэтому позиция ставится раньше; но
зеленеть, не узнав, разложился ли день, работник не должен
([ADR 0003](../adr/0003-dag-run-state.md)).
Такой отказ чинится перезапуском `etl_pipeline` рукой — перезапуску ничего
не нужно помнить, см. «Объём прогона».
- **Разгон пачкой.** `world_next_day` конвейер не дёргает: пульт управляет
@@ -91,8 +92,8 @@
- [ADR 0003](../adr/0003-dag-run-state.md) — зелёный конец графа не
переживает отказ выше: отсюда ожидания в триггерах.
- [ADR 0009](../adr/0009-world-control.md) — пульт мира: работники, которые
дёргают конвейер живого дня.
- [ADR 0009](../adr/0009-world-control.md) — пульт мира: его работник
живого дня и дёргает конвейер.
- [ADR 0013](../adr/0013-world-lifecycle.md) — жизненный цикл мира: почему
прикладным процессом владеет Airflow и почему `world_initialize` кончается
собранными слоями.