- Зачем: модули 2–8 в новом процессе выбирали local[*] вместо Spark-кластера.
- Что: master перенесён в общий spark-defaults.conf, smoke требует точный адрес кластера, документация и планы синхронизированы.
- Проверка: фактическая инициализация всех восьми ноутбуков, повторный getOrCreate, распределённые вычисления, Iceberg/MinIO write-read-cleanup и docker compose config прошли.
- Зачем: объяснения CREATE OR REPLACE и rollback расходились с поведением Iceberg 1.10.0 и ломали повторный запуск упражнений.
- Что: исправлены материалы и планы модулей 2, 4, 5, 7 и 8; одноразовые таблицы сбрасываются через DROP TABLE PURGE.
- Проверка: JSON и Python AST валидны; на Spark 3.5.1, Iceberg 1.10.0, JDBC/MinIO и Trino 478 подтверждены rollback, replace, time travel и повторный сброс до одного snapshot-а.
- Зачем:
- обучение студентов безопасным изменениям таблиц и механизмам отката Iceberg.
- Что:
- создан notebooks/07_safe_table_changes.ipynb с демонстрацией ALTER TABLE, VERSION AS OF и rollback.
- в ноутбук добавлена самостоятельная работа на демо-таблице и чекпоинт для самопроверки.
- статус модуля 7 в планах обновлен до Ready for validation.
- Проверка:
- ручная верификация структуры ноутбука и синтаксиса Spark SQL/trino_query.
- Зачем:
- нужно продемонстрировать возможности Iceberg по schema evolution и time travel.
- Что:
- создан файл plans/module-07-safe-table-changes.md с планом модуля.
- обновлен plans/README.md с записью о новом модуле в таблицу содержания.
- Проверка:
- проверка согласованности ссылок и структуры документации.