Files
ddadminandClaude Opus 4.6 0ae83cecdb docs(course): добавлены glossary, mentor notes, шпаргалка и переписан README
- Зачем:
  - закрыты 3 вспомогательных артефакта из course_program.md §3.3: glossary, cheat sheet, mentor notes.
  - README переписан с фокусом на ценность для студента.
- Что:
  - создан docs/glossary.md (16 терминов, сгруппированных по темам с параллелями к DWH).
  - создан docs/mentor_notes.md (тайминг, типичные вопросы, checkpoint-ы, формат «менти работает сам»).
  - добавлена секция «Краткая шпаргалка» в docs/stack_reference.md (S3-пути, таблицы, SQL-команды, маунты).
  - README.md переписан: лид с навыками, убрано дублирование со stack_reference.
  - обновлены перекрёстные ссылки в AGENTS.md, course_program.md, maintainer_guide.md.
- Проверка:
  - все ссылки между документами валидны (glossary.md, mentor_notes.md существуют).
  - термины glossary и команды шпаргалки верифицированы по содержимому ноутбуков.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 01:04:26 +03:00

4.7 KiB
Executable File
Raw Permalink Blame History

Lakehouse без магии

Практический курс, после которого ты будешь уверенно работать с Lakehouse-стеком: поднимать стенд, строить пайплайн raw -> bronze -> silver, читать одну таблицу из двух движков и не бояться изменений в данных.

Что ты получишь

После прохождения 8 модулей ты умеешь:

  1. Поднимать и диагностировать локальный Lakehouse-стенд — не по инструкции, а с пониманием, что и зачем работает.
  2. Объяснять архитектуру storage + catalog + compute — и видеть, как знакомые концепции из PostgreSQL/Greenplum ложатся на новый стек.
  3. Строить пайплайн raw -> bronze -> silver на реальном датасете NYC Taxi — с проверками качества и воспроизводимостью.
  4. Работать с двумя движками — записывать данные через Spark, читать через Trino, и понимать, почему это работает без копирования.
  5. Безопасно менять таблицы — schema evolution, time travel, rollback к предыдущему состоянию вместо паники.
  6. Обслуживать таблицы — compaction и expire_snapshots, с пониманием параллелей к VACUUM/REORGANIZE.

Курс рассчитан на ~12-15 часов самостоятельной работы. Каждый модуль: объяснение, демонстрация, самостоятельное задание, checkpoint.

Стек

Всё работает локально в Docker. Никаких облаков, внешних зависимостей и регистраций.

graph TB
    U[Student / engineer]

    subgraph Access
        J[JupyterLab<br/>notebooks / PySpark]
        Q[Trino UI / CLI<br/>ad hoc SQL]
    end

    subgraph Compute
        S[Spark cluster<br/>master + workers]
        T[Trino 478<br/>Iceberg connector]
    end

    subgraph Shared Services
        P[(PostgreSQL<br/>Iceberg JDBC catalog)]
        M[(MinIO<br/>S3-compatible)]
    end

    U --> J
    U --> Q
    J --> S
    Q --> T
    S --> P
    S --> M
    T --> P
    T --> M
Компонент Роль в стенде
MinIO Storage — хранит данные и служебные файлы Iceberg
PostgreSQL Catalog — метаданные JDBC-каталога lakehouse
Spark Compute — ETL, запись и чтение Iceberg-таблиц
Trino Compute — ad hoc SQL, чтение тех же таблиц
JupyterLab Точка входа — практические ноутбуки курса

С чего начать

  1. Открой START_HERE.md — запуск стенда, диагностика, первый ноутбук.
  2. Пройди notebooks/01_environment_and_smoke_test.ipynb.
  3. Дальше по порядку: docs/course_program.md.

Краткий запуск из корня репозитория:

docker compose build
docker compose up -d
docker compose ps

После старта:

UI Адрес
JupyterLab http://localhost:8888
Spark Master http://localhost:8080
Trino http://localhost:8090
MinIO Console http://localhost:9001

Документы для прохождения

  • START_HERE.md — первый маршрут: prerequisites, запуск, диагностика.
  • docs/course_program.md — модульная структура и состав учебных материалов.
  • docs/stack_reference.md — порты, команды, конфиги, шпаргалка.
  • docs/glossary.md — справочник терминов (storage, catalog, compute, snapshot и др.).

Менторство

Курс рассчитан на самостоятельное прохождение, но если хочешь разобрать темы глубже с ментором по Data Engineering — напиши: @dementev_dev.

Лицензия

Материалы этого репозитория лицензированы на условиях Creative Commons Attribution 4.0 International (CC BY 4.0). См. LICENSE.