Files
airflow-greenplum/docs/internal/bookings_tz.md
T

2.9 KiB

Временное ТЗ по блоку bookings (для текущей разработки)

Этот файл внутренний, удалить перед итоговой сдачей.

  • Контейнер bookings-db — отдельный сервис Postgres из docker-compose.yml, база по умолчанию demo (из upstream demodb), без переименований.
  • Доступ снаружи не блокируем (порт 5434 по умолчанию), чтобы позже читать через PXF и подключаться из Greenplum.
  • Инициализация (make bookings-init): поднимает контейнер, клонирует demodb (без автопатчей), запускает install.sql как есть; генерация стартовых данных должна проходить штатными generate/continue.
  • Генерация следующего дня: либо make bookings-generate-day вызывает CALL continue(...), либо ручной вызов; скрипт generate_next_day.sql опционален и не должен менять upstream SQL (только тонкая обертка при желании).
  • Исходники demodb: клонировать по требованию с закрепленным коммитом (чтобы не ловить неожиданные изменения). Добавить в .gitignore, если не коммитим. Завендорить в репо можно позже, если лицензия позволит.
  • Документация: в README описать шаги (bookings-init, проверка данных, генерация дня), параметры .env, и что настройка PXF/ETL — следующий этап.

Текущее состояние

  • Makefile очищен: убраны автопатчи demodb; добавлены DEMODB_REPO/DEMODB_COMMIT с фиксированным хешем d68de1…, таргет снова исполняется. BOOKINGS_JOBS задаёт число джобов генерации (по умолчанию 1).
  • .gitignore дополнен bookings/demodb/ (клонируем по требованию, не коммитим).
  • bookings-init теперь после установки сразу генерирует 1 день (дата из BOOKINGS_START_DATE, по умолчанию 2017-01-01), используя обертку generate_next_day.sql.
  • generate_next_day.sql принимает :jobs и ожидает завершения busy(), закрывая dblink.
  • Генерация через make надо подтвердить повторно (в DBeaver генерация работает, но медленно на больших окнах; по умолчанию делаем сутки, далее — по одному дню через bookings-generate-day).