docs(course): лабы 07 (next-day) и 08 (continue) + метадокументы (#22)

Зачем: два новых режима роста мира не имели уроков, а метадокументы
курса не знали о новом маршруте.

Что: лаба 07 «Следующий день и границы времени» — инкремент дня,
сверка manifest, переходящие визиты запросом в dds.event, включение
расписания на один запуск, цена роста full_refresh; лаба 08 «Живой
поток и свежесть данных» — расслоение свежести слоёв, стоп/продолжение
генератора, users < sessions, врезка про модельное время; LEARNING_PLAN
и README курса согласованы с маршрутом 0–8; в CONTEXT.md починена
ссылка «урок 7» (теперь ведёт на врезку лабы 08). Числа со стенда
помечены маркером «сверить-на-стенде».

Проверка: обе лабы по шаблону LESSON_STANDARD (6 секций, явный «верни
как было»); внутренние ссылки разрешаются; git diff --check чистый.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-23 13:36:30 +03:00
co-authored by Claude Opus 4.8
parent cc1cffe2f3
commit 1dd79a3287
5 changed files with 614 additions and 19 deletions
+16 -14
View File
@@ -1,9 +1,9 @@
# План обучения: курс «Кликстрим на ClickHouse»
> Дата: 2026-06-03 (аудит путей выполнен; середина расщеплена —
> один паттерн на урок, всего 7 уроков, см. §12).
> Поправка 2026-07-23: урок 6 стал обязательным; после него добавлены обязательные
> лабы 07–08 про следующий день и живое продолжение.
> один паттерн на урок, см. §1–2).
> Поправка 2026-07-23: весь маршрут стал обязательным. После урока 6 добавлены
> лабы 07–08 про следующий день и живое продолжение; обе лабы написаны.
> Назначение: высокоуровневый маршрут менти по курсу — карта уроков, порядок,
> результаты аудита эталонных путей. Рамка курса (зачем/что/скоуп) — в `PRD.md`;
> как устроен отдельный урок — в `LESSON_STANDARD.md`.
@@ -15,10 +15,11 @@
## 1. Маршрут
Порядок линейный уроки 1→4 повторяют сам пайплайн (STG → ODS → DDS → оркестрация),
а урок 0 — разминка перед ним. Мониторинг (5) и Superset (6) работают как надстройки
поверх готовых данных. Лабы 07–08 затем растят импортированный мир: сначала
детерминированным следующим днём, потом живым продолжением.
Порядок линейный, все уроки и лабы обязательны. Урок 0 — разминка, а уроки 1→4
повторяют сам пайплайн (STG → ODS → DDS → оркестрация). Мониторинг (5) и
Superset (6) работают как надстройки поверх готовых данных. Лабы 07–08 затем
растят импортированный мир: сначала детерминированным следующим днём, потом
живым продолжением.
Принцип нарезки — **один прод-паттерн на урок** (`LESSON_STANDARD` §2). Поэтому
середина пайплайна разнесена: типизация+DQ (ODS) и сборка сущностей (DDS) — разные
@@ -40,12 +41,12 @@ Kafka из роадмапа — оно даёт словарь терминов.
| 4 | Оркестрация в Airflow | `airflow/dags/etl_pipeline_dag.py` (зависимости, гейты, остановка при нарушениях) | обязательный | руки |
| 5 | Мониторинг | Prometheus + Grafana + экспортёры | обязательный | наблюдение |
| 6 | BI-витрина | Superset поверх ClickHouse | обязательный | руки |
| 7 | Лаба: следующий день | `airflow/dags/world_next_day_dag.py` | в работе, обязательный | руки |
| 8 | Лаба: живое продолжение | `make generator-continue` и `etl_pipeline` | в работе, обязательный | руки |
| 7 | Лаба: следующий день | `airflow/dags/world_next_day_dag.py` | написана, обязательная | руки |
| 8 | Лаба: живое продолжение | `make generator-continue` и `etl_pipeline` | написана, обязательная | руки |
Урок 0 — обязательная разминка (без правок кода, только наблюдение); уроки 14 —
с управляемыми правками; урок 5 ближе к наблюдению (глубину уточняем, см.
«Открытые вопросы» в `PRD.md`).
Урок 0 — обязательная разминка без правок кода. В уроках 16 и лабах 0708
менти запускает стенд или делает управляемую правку; каждый такой эксперимент
заканчивается явным возвратом к чистому состоянию.
**Где «MV vs батч»:** контраст из цели №2 PRD — это мост уроков 1→2. Урок 1 (STG)
заканчивается вопросом «мы приземлили поток через MV — почему дальше не MV?»; урок 2
@@ -146,8 +147,9 @@ Kafka из роадмапа — оно даёт словарь терминов.
## 4. Что дальше
Все уроки 0–6 написаны (`lessons/`), правки кода §3.1 применены в составе уроков —
чекбоксы выше сверены с реальным кодом 2026-06-06. Базовый контент курса собран.
Все уроки 06 и лабы 0708 написаны (`lessons/`). Правки кода §3.1 применены
в составе уроков; чекбоксы выше сверены с реальным кодом 2026-06-06. Маршрут
курса собран полностью.
Исходный план фазы написания (оставлен как контекст): пишем уроки по одному, по
шаблону из `LESSON_STANDARD.md`, начиная с урока 1 (Kafka→CH); урок 0 (разминка на