Files
clickstream-ch-kafka-supers…/docs/DE-task.md
T
ddadminandDmitry Dementiev cbc2f72871 docs(docs): актуализировано ТЗ и потоки ingest
- Зачем:
  - убрать рассинхрон между кратким ТЗ, архитектурой и планом генератора
- Что:
  - сокращен docs/DE-task.md до формата краткого ТЗ проекта
  - обновлены docs/ARCHITECTURE.md и README.md: bootstrap через kafka_load и steady-stream через generator-service
  - обновлен plans/generator_demo_stream_plan.md: режим steady-stream и тик-публикация
- Проверка:
  - просмотрен git diff по измененным файлам
  - в коммит включены только мои документационные изменения
2026-06-09 17:26:31 +03:00

44 lines
2.6 KiB
Markdown

# DE-task: краткое ТЗ проекта
Дата актуализации: 14 февраля 2026.
## Цель
Собрать учебный DE-стенд, который показывает полный путь данных:
`Kafka -> ClickHouse (STG/ODS/DDS/DM) -> BI`, с устойчивой обработкой "грязных" данных и понятной наблюдаемостью.
## Что нужно сделать
- Развернуть стек в `docker compose`: Kafka, ClickHouse, Airflow, Superset, Prometheus, Grafana.
- Организовать ingest в Kafka в двух режимах:
- `bootstrap`: загрузка JSONL через Airflow DAG `kafka_load`;
- `steady-stream`: автономный генератор, работающий независимо от потребителей.
- Построить слои хранилища `STG -> ODS -> DDS -> DM` в ClickHouse.
- Настроить регулярные трансформации в Airflow (`ddl_init`, `etl_pipeline`).
- Подготовить витрины и дашборд для первичного анализа.
## Ключевые требования
- "Грязные" записи не должны валить пайплайн: ошибки фиксируются в ODS/DQ-слое.
- Генератор работает отдельно от потребителей и Airflow-триггеров.
- Решение должно быть воспроизводимым и пригодным для учебной демонстрации.
## Границы MVP
- Один простой режим генератора (`steady-stream`) без сложных сценариев.
- Без production-гарантий уровня exactly-once.
- Фокус на рабочем end-to-end контуре, а не на полной симуляции реального продакшена.
## Критерии готовности
1. Стенд стабильно запускается и работает несколько часов.
2. Данные корректно проходят путь Kafka -> STG -> ODS -> DDS -> DM.
3. Поток событий в Kafka идёт постепенно малыми порциями, без искусственного минутного burst.
4. Есть базовый дашборд и метрики для разбора работы стенда.
## Где детали реализации
- Техническая архитектура: `docs/ARCHITECTURE.md`
- План по генератору: `plans/generator_demo_stream_plan.md`
- Эксплуатация и запуск: `docs/OPERATIONS.md`