- Зачем: - Формализовать цели, аудиторию и структуру учебного курса для плавного погружения джунов в Lakehouse-архитектуру. - Что: - Создан docs/PRD_Course.md с описанием JTBD, "Aha-moments" и метрик успеха. - Создан docs/COURSE_PLAN.md с детальной программой из 10 интерактивных уроков. - Проверка: - Файлы присутствуют в директории docs и корректно ссылаются друг на друга.
44 lines
2.8 KiB
Markdown
44 lines
2.8 KiB
Markdown
# Программа учебного курса: Введение в Lakehouse
|
|
|
|
Ориентировочная разбивка на 10 интерактивных уроков (Jupyter Notebooks).
|
|
Каждый урок рассчитан на 1-1.5 часа вдумчивой работы (теория + самостоятельная практика).
|
|
|
|
## Блок I. Основы Lakehouse (Storage + Format)
|
|
|
|
* **01_intro_and_storage.ipynb**
|
|
* Что такое Lakehouse. Разделение хранения и вычислений.
|
|
* Загрузка сырых файлов (CSV/JSON) в MinIO (S3).
|
|
* **02_first_iceberg_table.ipynb**
|
|
* Создание первой Iceberg-таблицы через Spark.
|
|
* Изучение структуры файлов (data, metadata, manifests) в MinIO.
|
|
|
|
## Блок II. Единая точка правды (Catalog + Compute)
|
|
|
|
* **03_the_catalog.ipynb**
|
|
* Роль JDBC-каталога (PostgreSQL).
|
|
* Как разные движки находят таблицы.
|
|
* **04_spark_meets_trino.ipynb**
|
|
* Разделение ролей (Spark пишет, Trino читает).
|
|
* Выполнение SQL-запросов к Iceberg-таблицам через Trino (интеграция вызовов Trino прямо в Jupyter).
|
|
|
|
## Блок III. Инженерия данных (Data Pipelines)
|
|
|
|
* **05_bronze_layer.ipynb**
|
|
* Чтение сырых данных Spark'ом и инжест "как есть" (Raw to Bronze).
|
|
* **06_silver_layer_and_schema_evolution.ipynb**
|
|
* Очистка данных.
|
|
* *Практика:* самостоятельное применение Schema Evolution (добавление/изменение колонок).
|
|
* **07_gold_layer_and_partitioning.ipynb**
|
|
* Агрегации бизнес-метрик.
|
|
* *Практика:* самостоятельное партиционирование таблиц для ускорения запросов (Partition Pruning).
|
|
|
|
## Блок IV. Продвинутые фичи Lakehouse
|
|
|
|
* **08_time_travel_and_snapshots.ipynb**
|
|
* Работа со снапшотами (Snapshots).
|
|
* *Практика:* восстановление таблицы после ошибочных `DELETE`/`UPDATE`, чтение "исторических" данных.
|
|
* **09_lakehouse_maintenance.ipynb**
|
|
* Проблема мелких файлов.
|
|
* Компактизация (Compaction) и очистка старых версий (Vacuum).
|
|
* **10_final_pipeline.ipynb**
|
|
* *Практика:* самостоятельный финальный end-to-end мини-пайплайн (Bronze -> Silver -> Gold), объединяющий все пройденные концепции. |