Связать карту хранилища с чтением SQL и учебными заданиями #3

Closed
opened 2026-09-20 19:07:23 +03:00 by ddmitry · 1 comment
Owner

Part of #1
Blocked by: #2

Учебная цель

Менти переходит от найденной на карте таблицы к готовому SQL, понимает роль его основных частей и приступает к своему заданию, имея рядом нужный участок модели.

Что сделать

  1. Переработать docs/design/reading_the_pipeline.md в практический разбор «От карты к SQL загрузки». Использовать уже работающие примеры: простую загрузку справочника и сборку fact_flight_sales. Объяснить, как соотносятся объект на карте, источник, соединения, преобразования и запись результата.
  2. Связать разбор с конкретными объектами и связями интерактивной карты. Дать путь обратно к объяснению модели. Не дублировать весь каталог таблиц или полный загрузочный SQL.
  3. Обновить docs/assignment/README.md: ясно обозначить подготовку, готовый пример, самостоятельную работу и проверку. Для первого задания достаточно нужного ему примера; разбор всех паттернов ODS/DDS/DM не должен быть обязательным предварительным чтением.
  4. В соответствующих частях analyst_spec.md дать адресные ссылки на объекты карты и готовые примеры. Состав полей и правила задания остаются в ТЗ.
  5. Согласовать переходы с README и индексом документации, обновленными в предыдущей задаче.

Границы

Содержание и порядок заданий ODS → DDS → DM сохраняются. Не вводить дополнительные обязательные лабораторные, не выдавать решения студенческих SQL-файлов и не менять поведение стенда. Исправлять проверенные фактические ошибки в затронутом тексте. Неясное требование к студенческой реализации явно вынести на обсуждение.

Критерии готовности

  • Из руководства о структуре есть понятный переход к разбору SQL, затем к первому заданию.
  • Каждый разобранный пример связывает источник, преобразование и результат с реальными файлами текущей ветки.
  • Из каждого этапа ТЗ можно открыть соответствующий объект или участок карты.
  • Для первой самостоятельной загрузки названы нужные файлы, близкий готовый пример, порядок запуска и способ проверить результат.
  • Общая навигация различает материалы для знакомства, выполнения задания и точечного поиска деталей.
  • Исправлено неверное обозначение sql/stg/airports_load.sql как HWM-инкремента в ТЗ; фактический полный снимок подтвержден по SQL.
  • Ссылки и якоря работают, включая адресное открытие карты; существующие обязательные поля, преобразования и проверки задания сохранены.
  • Выполнен отдельный проход на сокращение текста и убраны ненужные повторения объяснений карты.

Сначала прочитать

Результат предыдущей задачи; чтение пайплайна, вход в задания, ТЗ, эталонные SQL sql/ods/airports_load.sql и sql/dds/fact_flight_sales_load.sql.

Part of #1 Blocked by: #2 ## Учебная цель Менти переходит от найденной на карте таблицы к готовому SQL, понимает роль его основных частей и приступает к своему заданию, имея рядом нужный участок модели. ## Что сделать 1. Переработать `docs/design/reading_the_pipeline.md` в практический разбор «От карты к SQL загрузки». Использовать уже работающие примеры: простую загрузку справочника и сборку `fact_flight_sales`. Объяснить, как соотносятся объект на карте, источник, соединения, преобразования и запись результата. 2. Связать разбор с конкретными объектами и связями интерактивной карты. Дать путь обратно к объяснению модели. Не дублировать весь каталог таблиц или полный загрузочный SQL. 3. Обновить `docs/assignment/README.md`: ясно обозначить подготовку, готовый пример, самостоятельную работу и проверку. Для первого задания достаточно нужного ему примера; разбор всех паттернов ODS/DDS/DM не должен быть обязательным предварительным чтением. 4. В соответствующих частях `analyst_spec.md` дать адресные ссылки на объекты карты и готовые примеры. Состав полей и правила задания остаются в ТЗ. 5. Согласовать переходы с README и индексом документации, обновленными в предыдущей задаче. ## Границы Содержание и порядок заданий ODS → DDS → DM сохраняются. Не вводить дополнительные обязательные лабораторные, не выдавать решения студенческих SQL-файлов и не менять поведение стенда. Исправлять проверенные фактические ошибки в затронутом тексте. Неясное требование к студенческой реализации явно вынести на обсуждение. ## Критерии готовности - [x] Из руководства о структуре есть понятный переход к разбору SQL, затем к первому заданию. - [x] Каждый разобранный пример связывает источник, преобразование и результат с реальными файлами текущей ветки. - [x] Из каждого этапа ТЗ можно открыть соответствующий объект или участок карты. - [x] Для первой самостоятельной загрузки названы нужные файлы, близкий готовый пример, порядок запуска и способ проверить результат. - [x] Общая навигация различает материалы для знакомства, выполнения задания и точечного поиска деталей. - [x] Исправлено неверное обозначение `sql/stg/airports_load.sql` как HWM-инкремента в ТЗ; фактический полный снимок подтвержден по SQL. - [x] Ссылки и якоря работают, включая адресное открытие карты; существующие обязательные поля, преобразования и проверки задания сохранены. - [x] Выполнен отдельный проход на сокращение текста и убраны ненужные повторения объяснений карты. ## Сначала прочитать Результат предыдущей задачи; [чтение пайплайна](https://git.dementev.space/ddmitry/airflow-greenplum/src/branch/main/docs/design/reading_the_pipeline.md), [вход в задания](https://git.dementev.space/ddmitry/airflow-greenplum/src/branch/main/docs/assignment/README.md), [ТЗ](https://git.dementev.space/ddmitry/airflow-greenplum/src/branch/main/docs/assignment/analyst_spec.md), эталонные SQL `sql/ods/airports_load.sql` и `sql/dds/fact_flight_sales_load.sql`.
ddmitry added the needs-triage label 2026-09-20 19:07:23 +03:00
ddmitry self-assigned this 2026-09-20 21:13:41 +03:00
Author
Owner

Выполнено в PR #6, влито в main коммитом a6fdd43.

Учебный путь теперь ведет от модели и карты к разбору готовой загрузки ods.airports, затем к первому заданию ODS. Разбор fact_flight_sales расположен на переходе к DDS. Во всех девяти заданиях есть адресные ссылки на карту и готовые примеры; для первой работы названы файлы, порядок запуска и проверки.

Два уточнения для прохождения заданий:

  • ODS-снимки сохраняют в _load_id идентификатор исходного STG-батча из resolve_stg_batch_id. ТЗ согласовано с готовым примером и существующей проверкой; DDS/DM используют текущий run_id.
  • После bookings_validate нужно дождаться завершения всего DAG и успешного validate_dds.scd2_restore перед новой загрузкой. Это уточнение добавлено по итогам саморевью: активный SCD2-тест восстанавливает таблицы из копии, поэтому одновременная загрузка может потерять свои изменения.

Проверены 157 локальных ссылок и якорей, 27 адресов карты и соответствие HTML исходникам. В Chromium проверены карточки объектов и связей, переключение видов, история переходов и сброс; после слияния отдельно проверены документы и переходы «разбор → первое задание → ТЗ» в Gitea на main.

make lint и git diff --check прошли. make test: 4 passed, 14 skipped (13 smoke-проверок DAG и один интеграционный тест); полный ETL не запускался. SQL, DDL, DAG, проверки и настройки стенда не изменены. Все восемь критериев задачи выполнены. Следующий этап серии — #4.

Выполнено в [PR #6](https://git.dementev.space/ddmitry/airflow-greenplum/pulls/6), влито в `main` коммитом `a6fdd43`. Учебный путь теперь ведет от модели и карты к разбору готовой загрузки `ods.airports`, затем к первому заданию ODS. Разбор `fact_flight_sales` расположен на переходе к DDS. Во всех девяти заданиях есть адресные ссылки на карту и готовые примеры; для первой работы названы файлы, порядок запуска и проверки. Два уточнения для прохождения заданий: - ODS-снимки сохраняют в `_load_id` идентификатор исходного STG-батча из `resolve_stg_batch_id`. ТЗ согласовано с готовым примером и существующей проверкой; DDS/DM используют текущий `run_id`. - После `bookings_validate` нужно дождаться завершения всего DAG и успешного `validate_dds.scd2_restore` перед новой загрузкой. Это уточнение добавлено по итогам саморевью: активный SCD2-тест восстанавливает таблицы из копии, поэтому одновременная загрузка может потерять свои изменения. Проверены 157 локальных ссылок и якорей, 27 адресов карты и соответствие HTML исходникам. В Chromium проверены карточки объектов и связей, переключение видов, история переходов и сброс; после слияния отдельно проверены документы и переходы «разбор → первое задание → ТЗ» в Gitea на `main`. `make lint` и `git diff --check` прошли. `make test`: 4 passed, 14 skipped (13 smoke-проверок DAG и один интеграционный тест); полный ETL не запускался. SQL, DDL, DAG, проверки и настройки стенда не изменены. Все восемь критериев задачи выполнены. Следующий этап серии — #4.
Sign in to join this conversation.