feat(stand): переведён аналитический путь на стартовую историю

- Зачем:
  - чистый стенд должен строить аналитику из генерации, а не из архивного JSONL-сида.
- Что:
  - добавлены команды generated-history-analytics и generated-history-check.
  - обновлены README, operations и Superset-документы под путь generator backfill -> DM -> Superset.
  - создан follow-up на миграцию учебных материалов с архивного сида.
- Проверка:
  - make generated-history-analytics.
  - make generated-history-check.
  - reviewer gate issue 06 пройден без блокирующих находок.
This commit is contained in:
2026-06-14 20:22:17 +03:00
parent d5408f28e9
commit d35254ead6
11 changed files with 909 additions and 118 deletions
+26 -3
View File
@@ -1,6 +1,7 @@
# Генератор событий (MVP rev5)
# Генератор событий
Автономный генератор событий для Kafka с режимом `steady-stream`.
Автономный генератор событий для Kafka. В штатном стенде он создаёт стартовую
историю через `backfill`, а затем может продолжить поток в режиме `live`.
Генератор строит поток по иерархии `пользователь → визит → событие`: один
`click_id` живёт весь визит, события визита идут по страницам воронки с
@@ -34,7 +35,7 @@ generator-service -> Kafka topics -> (потребители отдельно)
| `src/clickstream_generator/service.py` | основной цикл сервиса |
| `generator.py` | запуск сервиса и совместимый фасад |
## Режим работы: `steady-stream`
## Режим работы: `live`
- Публикуем постепенно, **короткими тиками** (по умолчанию каждые 5 секунд)
- На каждом тике отправляем небольшую порцию сообщений
@@ -110,6 +111,25 @@ restart policy.
Контейнерные значения `KAFKA_BOOTSTRAP_SERVERS` и `GEN_DATA_DIR` в compose
оставлены безопасными внутренними значениями `kafka:29092` и `/data`.
Штатный чистый путь всего стенда запускается из корня репозитория:
```bash
make generated-history-analytics
```
Эта команда очищает ClickHouse, Kafka-топики данных, state и manifest
генератора, создаёт стартовую историю, прогоняет STG -> ODS -> DDS -> DM и
проверяет Superset metadata. Файлы `data/*.jsonl` при этом не грузятся в Kafka:
они пока используются только как фактура для генератора.
По умолчанию используется быстрый проверочный профиль на 6 часов модельного
времени (`GEN_MODEL_T_END=2026-01-01T06:00:00+00:00`). Суточный прогон доступен
явно:
```bash
GEN_MODEL_T_END=2026-01-02T00:00:00+00:00 make generated-history-analytics
```
### Режим "раз в минуту" (для демо)
Для контролируемых демо можно установить:
@@ -141,6 +161,9 @@ make generator-restart
# Запуск тестов
make generator-test
# Чистый аналитический прогон всего стенда
make generated-history-analytics
```
## Метрики Prometheus