Объяснены зерно таблиц, связи и путь бронирования до витрины. Добавлена автономная карта с двумя видами связей и адресами объектов. Состояние заглушек сверено с DDL и ТЗ; SQL и DAG не изменялись. Проверки: сборка и ссылки, make lint, pytest (4 passed, 14 skipped), Chromium file:// offline: выбор, связи, сброс, история и узкий экран. Refs #2
4.5 KiB
Исходники карты DWH
Готовый файл - ../architecture-map.html. Откройте его локально в браузере. Сервер и интернет не требуются; SQL и Markdown открываются из соседних каталогов репозитория. Учебный маршрут находится в руководстве о структуре.
Редактирование и сборка
map.json- единственный каталог объектов, полей, связей и текстов карточек.template.html- интерфейс. SVG, карточки, постоянная раскладка и выделение адаптированы изclickstream-data-platform/docs/handbook/architecture-map/template.html.render.py- сборка автономного HTML и статические проверки. Нужны uv и Python 3.11 или новее; пакеты Python и JavaScript не требуются. JSON заменяет YAML образца, чтобы сборка обходилась стандартной библиотекой.
Из корня репозитория:
uv run docs/design/architecture-map/render.py
uv run docs/design/architecture-map/render.py --check
Правьте исходники, затем пересобирайте HTML. --check сверяет:
имена объектов с DDL/PXF, важные поля и поля связей, статусы загрузок и DQ,
входы готовых SQL со стрелками потока, файлы и разделы по ссылкам,
уникальность идентификаторов и позиций, свежесть HTML.
Проверка входов учитывает именованные таблицы в FROM/JOIN;
смысл соединений нужно сверять при изменении SQL вручную.
Внешние stg.*_ext представлены в карточках STG, поскольку это входы чтения,
а не еще одна копия данных. Поля источника сверяются с контрактом PXF.
Для заглушек используются DDL и docs/assignment/analyst_spec.md.
Новые предположения о поведении загрузок в карточки не добавляйте.
Адреса объектов
../architecture-map.html#node=ods.airplanes выбирает таблицу.
Дополнение &view=keys включает связи по ключам; без него показан поток данных.
Идентификатор равен полному имени таблицы и не зависит от позиции в карте.
Неизвестный адрес возвращает обзор с сообщением. Назад/вперед в браузере
восстанавливают предыдущий выбор и вид связей.
Проверка в браузере
Статические проверки не заменяют этот проход:
- Откройте готовый HTML с диска. Убедитесь, что видны пять слоев, имена таблиц и пометки заданий; ошибок JavaScript нет.
- Выберите
bookings.tickets, затемods.segmentsиdds.fact_flight_sales. Проверьте источники, потребителей и карточки связей. Снимите выделение повторным выбором, кнопкой "Общий вид" и клавишей Esc. - Для выбранных билета, факта и
dds.dim_airplanesпереключите оба вида: выбор, позиции и прокрутка карты должны сохраниться. - У факта откройте обе роли
dim_airports, путь черезods.routesи выбор версииdim_routes. Проверьте отдельные карточки связей. - Откройте адрес объекта, обновите страницу, проверьте назад/вперед. Откройте DDL, загрузку, DQ и пункт задания из карточки.
- Проверьте выбор клавишами Enter/пробел и вид на узком экране. На узком экране карта прокручивается, карточка находится под ней.