feat(etl): добавлен дневной конвейер трансформаций
Зачем: - Один запуск должен одинаково работать из жизненного цикла, вручную после разгона и повторно после отказа. Что: - Добавлена последовательная сцепка DDS и DM с ожиданием каждого слоя. - DDS дожидается смещений Kafka и очереди доставки ClickHouse за общий срок. - ETL встроен в создание мира и живой день; документация приведена к новому графу. Проверка: - make config-test; make lint. - make smoke: 21/21; make check-clickhouse: 10/10; make check-services: 7/7. - make rebuild-storage, живой и пакетный дни, искусственный отказ и ручное восстановление ETL.
This commit is contained in:
1 parent
fb00bbe4c3
commit
12a5c109b2
10 files changed
+359
-43
No files matched your search
@@ -237,6 +237,33 @@ Kafka → STG → ODS, и живёт он в `make check-clickhouse`.
|
||||
|
||||
## Что проверено
|
||||
|
||||
**Приемка #156 27 августа 2026 года.** `make rebuild-storage` занял 7 минут.
|
||||
На чистом прикладном мире `world_initialize` сам довел позицию до `8`, дождался
|
||||
`etl_pipeline` и оставил заполненными DDS и обе витрины. После пересборки прошли
|
||||
`make smoke` 21/21 и `make check-clickhouse` 10/10.
|
||||
|
||||
Два прогона `world_next_day` не изменили слои; один ручной `etl_pipeline` без
|
||||
параметров догнал оба дня. Полный прогон `world_live_day` занял 27 м 2 с и
|
||||
завершился только после успешных DDS и DM.
|
||||
|
||||
Временная синтаксическая поломка `sql/dm/daily_traffic_rebuild.sql` дала
|
||||
красную цепочку: DDS завершился успешно, а `daily_traffic`, DM, `etl_pipeline`
|
||||
и `world_live_day` покраснели. После возврата исправного SQL ручной
|
||||
`etl_pipeline` без параметров завершился успешно на позиции `12` и восстановил
|
||||
слои.
|
||||
|
||||
Для проверки пакетного барьера `stg.hits_raw_mv` временно отсоединили командой
|
||||
`DETACH` на обеих нодах. После `world_next_day` отставание Kafka составило
|
||||
46 367 (19 128 + 27 239). Во время ожидания матвью вернули командой `ATTACH`.
|
||||
Журнал готовности записал повторные опросы с отставанием 46 367, затем 27 239
|
||||
и 0; после этого очередь `ods.event_dist` содержала 0 файлов на обеих нодах,
|
||||
и ETL завершился успешно. Проверка `EXISTS` снова дала `1` на обеих нодах,
|
||||
позиция равна `13`.
|
||||
|
||||
После пересборки `make check-services` дважды дал 5/1: только импорт Superset
|
||||
не уложился в существующий тайм-аут 30 с. Диагностический пробник импорта с
|
||||
ожиданием 90 с прошел 3/0. Финальный штатный повтор прошел 7/7 за 129 с.
|
||||
|
||||
**Перезамер 21 августа 2026 года при исполнении #124.** Образ Airflow собран с
|
||||
`apache-airflow-providers-clickhousedb==1.0.0`,
|
||||
`apache-airflow-providers-common-sql==2.0.1` и
|
||||
|
||||
Reference in new issue
Block a user