docs: clarify learner workflow and resource requirements

This commit is contained in:
ddadmin committed 2026-10-19 09:48:24 +02:00
1 parent 78cf7b5fae
commit 21f3570b89
8 files changed
+399 -138

No files matched your search

+36 -7
View File
@@ -20,14 +20,17 @@
## Основные команды
Все команды выполняются из корня репозитория.
Все команды выполняются в терминале хоста из корня репозитория.
Для первого запуска и настройки прав используй [START_HERE](../START_HERE.md),
для продолжения работы — [памятку учащегося](./study_workflow.md).
### Сборка и запуск
```bash
docker compose pull minio minio-init postgres trino
docker compose build
docker compose up -d
docker compose ps
docker compose ps -a
```
### Логи
@@ -42,12 +45,36 @@ docker compose logs -f ide
### Остановка и reset
```bash
docker compose down
docker compose down -v
```
| Действие | Команда | Что происходит с данными |
| --- | --- | --- |
| Пауза до следующего занятия | `docker compose stop` | Контейнеры остановлены, файлы и volumes сохранены |
| Продолжение | `docker compose up -d` | Сервисы запускаются с прежними данными |
| Удаление контейнеров и сети | `docker compose down` | Volumes и файлы на хосте сохраняются, состояние внутри удаленных контейнеров теряется |
| Полный сброс учебных данных | См. [отдельную инструкцию](./study_workflow.md#начать-с-чистых-данных) | Удаляются MinIO volume и каталог PostgreSQL |
`down -v` удаляет volumes и возвращает стенд в чистое состояние.
Переменные Python и живые Spark-сессии после остановки нужно создать заново.
## Ресурсы и проверенная среда
Актуальный бюджет для учащегося приведен в
[системных требованиях](../START_HERE.md#системные-требования).
Он учитывает одновременную работу двух Spark worker-ов, драйвера в IDE, Trino,
MinIO и PostgreSQL. У каждого worker-а в Compose указаны 2 CPU и 2 ГБ для
приложений Spark; это не предел потребления всей JVM или контейнера.
Потребление при простое не показывает пик во время урока.
Проверка 19 октября 2026 года: Linux x86_64, Docker Engine, 6 CPU и около
11,1 ГиБ памяти, видимых Docker. Выполнены первый ноутбук в Chromium и проверка
Spark → Iceberg → Trino. Прогона всех восьми модулей с измерением пиков памяти
и диска не было; минимальный объем RAM не установлен. Docker Desktop и ARM64
в этой проверке не запускались.
Размеры локально собранных образов на этой машине: Spark — около 3,37 ГБ,
Jupyter — 3,72 ГБ, IDE — 4,90 ГБ. Jupyter включает слои Spark, IDE включает слои
Jupyter: складывать эти три числа для оценки места неправильно. IDE добавляет
около 1,18 ГБ. IDE вместе с отдельными образами Trino, PostgreSQL и MinIO дает
около 8,1 ГБ до учета кэша сборки, данных и особенностей хранилища Docker.
Поэтому перед первой сборкой нужен запас места сверх размера готовых образов.
## Доступ к сервисам
@@ -218,6 +245,7 @@ JupyterLab остаётся запасным интерфейсом. Он ред
| `ide/Dockerfile` | code-server и расширения на базе образа Jupyter |
| `ide/lakehouse.code-workspace` | папки рабочей области и настройки Python |
| `docs/network_access.md` | источники образов и зависимостей, резервный registry и диагностика сети |
| `docs/study_workflow.md` | повседневная работа, сохранение состояния и диагностика ошибок |
## Smoke-тесты
@@ -336,6 +364,7 @@ SELECT * FROM <table> FOR VERSION AS OF <snapshot_id>;
- `README.md` — чтобы понять, что это за репозиторий и куда идти дальше.
- `START_HERE.md` — чтобы впервые поднять стенд и пройти Модуль 1.
- `study_workflow.md` — чтобы продолжить занятие, сохранить результат и разобраться с ошибкой.
- `stack_reference.md` — чтобы быстро вспомнить порты, команды, точки доступа, шпаргалку и smoke-тесты.
- `course_program.md` — чтобы понять учебную траекторию дальше первого модуля.
- `glossary.md` — чтобы вернуться к определению термина (storage, catalog, compute, snapshot и др.).