docs(handbook): упрощен язык путеводителя
Зачем: начинающим ученикам трудно читать главы без пояснений терминов и ожидаемого результата примеров. Что: уточнены заголовки и объяснения в пяти главах и вводной, добавлена сверка графика с SQL, обновлены ссылки из заданий и документации генератора. Проверка: SQL и команды сохранены, локальные ссылки проверены; git diff --check пройден. Ревью смысла Sol 6.1 high замечаний не выявило, новые пояснения дополнительно сверены с кодом и настройками.
This commit is contained in:
1 parent
9394b789e5
commit
453a1d6ddf
13 files changed
+98
-75
No files matched your search
@@ -1,19 +1,20 @@
|
||||
# Потоки Airflow и даги модельного времени
|
||||
# Генерация и обработка данных в Airflow
|
||||
|
||||
Airflow управляет генерацией данных и их обработкой в хранилище. Это разные
|
||||
этапы: сначала в Kafka поступают события и заказы за день работы магазина,
|
||||
затем по ним рассчитываются данные DDS и витрины DM.
|
||||
Даг описывает задачи Airflow и порядок их выполнения.
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
world_initialize --> etl_pipeline
|
||||
world_live_day --> etl_pipeline
|
||||
manual[запуск рукой] --> etl_pipeline
|
||||
manual[ручной запуск] --> etl_pipeline
|
||||
etl_pipeline --> dds_transform --> dm_transform --> dq_check
|
||||
world_next_day --> sources[источники без ETL]
|
||||
```
|
||||
|
||||
## Два потока входят по-разному
|
||||
## Загрузка событий и заказов
|
||||
|
||||
События поступают в топик `hits` и обрабатываются по мере поступления:
|
||||
материализованные представления переносят строки из STG в ODS без участия
|
||||
@@ -24,7 +25,7 @@ Airflow.
|
||||
Даг `orders_ingest` загружает ее целиком. Такой способ приема называется
|
||||
[пакетным](../../CONTEXT.md).
|
||||
|
||||
## Даги мира
|
||||
## Генерация модельных дней
|
||||
|
||||
В документации миром называется учебный магазин с его посетителями,
|
||||
товарами и заказами. Время в нем идет отдельно от календарного.
|
||||
@@ -54,7 +55,7 @@ Airflow.
|
||||
номер дня остается прежним. Подробности — в [справочнике генератора
|
||||
и модельного времени](../architecture/world.md#даги-модельного-времени).
|
||||
|
||||
## Дневной конвейер
|
||||
## Обработка данных в хранилище
|
||||
|
||||
Даг `etl_pipeline` по очереди запускает `dds_transform`, `dm_transform`
|
||||
и `dq_check`, дожидаясь завершения каждого. Они рассчитывают данные DDS,
|
||||
@@ -84,20 +85,21 @@ Airflow.
|
||||
проверок описан в [разделе «Звено DQ
|
||||
конвейера»](../architecture/dm.md#звено-dq-конвейера).
|
||||
|
||||
## Как найти в интерфейсе
|
||||
## Поиск дагов в Airflow
|
||||
|
||||
Даги мира ищите по тегам «модельное время» и «жизненный цикл мира». Остальные
|
||||
даги ищите по тегам «заказы», `etl`, `dds`, `dm` и `dq`. `homework_check` с
|
||||
тегами `dm` и `labs` проверяет домашние работы; о нем рассказано в учебных
|
||||
заданиях.
|
||||
|
||||
## Посмотрите сами
|
||||
## Один день от генерации до витрин
|
||||
|
||||
Откройте Airflow по адресу из раздела [«Адреса и
|
||||
пароли»](../../README.md#адреса-и-пароли). В Admin → Variables найдите
|
||||
`world_position`. Затем запустите `world_next_day` на один день по [инструкции
|
||||
из README](../../README.md#добавить-данные-за-следующие-дни). Убедитесь, что
|
||||
`world_position` и запомните его значение. Затем запустите `world_next_day`
|
||||
на один день по [инструкции из README](../../README.md#добавить-данные-за-следующие-дни). Убедитесь, что
|
||||
`orders_ingest` завершился успешно, а в витринах нового дня еще нет.
|
||||
Значение `world_position` должно увеличиться на один.
|
||||
Запустите `etl_pipeline` вручную и дождитесь его завершения.
|
||||
|
||||
В DBeaver, подключенном по
|
||||
@@ -121,8 +123,8 @@ LIMIT 3;
|
||||
приходит слепок за день D−1. Выручка дня D появится после генерации
|
||||
дня D+1 и запуска конвейера.
|
||||
|
||||
## Куда дальше
|
||||
## Следующая глава и справочники
|
||||
|
||||
Детали — в справочниках [конвейера](../architecture/etl.md) и
|
||||
[мира](../architecture/world.md). Следующая глава — [«Мониторинг: куда
|
||||
смотреть»](monitoring.md).
|
||||
[мира](../architecture/world.md). Следующая глава —
|
||||
[«Мониторинг в Grafana»](monitoring.md).
|
||||
Reference in new issue
Block a user