47 Commits
Author SHA1 Message Date
ddadmin ab1b61f396 docs(airflow): обновлены практические задания
- Зачем:
  - упражнения должны быть понятнее и соответствовать ожидаемому уровню сложности.
- Что:
  - добавлены подсказки и описания подводных камней.
  - упрощены задания по отчетам, мониторингу и логированию.
- Проверка:
  - git diff --check.
2026-07-26 23:58:10 +03:00
ddadmin eaea33e761 docs(airflow): выровнены формулировки для CSV и DQ сценариев
- Зачем:
  - убрать мелкие противоречия между спецификациями, учебным планом и заданиями.
  - сделать сценарий csv_to_postgres и csv_to_postgres_dq понятнее для студентов.
- Что:
  - уточнено, что csv_to_postgres отвечает за загрузку и предпросмотр данных, а DQ вынесен в отдельный DAG.
  - добавлены явные указания про каталог data/output и соединение postgres_training.
  - исправлены ссылки на задачу data_quality_summary в учебных заданиях.
- Проверка:
  - git diff -- airflow-docker/dag-specifications.md airflow-docker/educational-setup-plan.md airflow-docker/educational-tasks.md.
2026-03-08 21:44:16 +03:00
ddadmin af6b0a9fae refactor(manual): упрощение архитектуры учебного пайплайна и документации
- Зачем:
  - сделать примеры более доступными для начинающих, убрав лишнюю архитектурную сложность (хелперы, внешние SQL файлы).
  - сфокусировать обучение на самом Airflow, а не на структуре Python-проекта.
- Что:
  - консолидирована логика: DDL и вспомогательные функции перенесены из helpers/ и sql/ напрямую в csv_to_postgres.py и csv_to_postgres_dq.py.
  - удалена избыточная инфраструктура: папки sql/, tests/, helpers/ и файл requirements.txt больше не содержат специфичных для этого пайплайна файлов.
  - упрощена работа с БД: использование PostgresHook напрямую в задачах вместо кастомных оберток.
  - исправлен порт PostgreSQL для метаданных Airflow (5433 → 5434) в README.md и educational-setup-plan.md.
  - изменен путь генерации CSV на /opt/airflow/data/output в csv_to_postgres.py.
  - добавлен шаблон data/*.csv в .gitignore.
  - обновлен комментарий в sql_basic_dag.py о создании соединения.
  - исправлено описание практического задания в educational-tasks.md.
  - добавлены переводы строк в конце файлов csv_to_postgres.py и educational-setup-plan.md.
- Проверка:
  - запуск DAG-ов csv_to_postgres и csv_to_postgres_dq в Airflow UI.
2026-03-08 21:38:59 +03:00
ddadmin 24ee9f65f0 docs(manual): обновлена структура проекта и добавлены задания
- Зачем:
  - необходимо отразить в документации новый пайплайн загрузки CSV в PostgreSQL.
  - студентам нужны конкретные задания для закрепления навыков ETL и Data Quality.
- Что:
  - обновлен README.md: добавлено описание новых DAG-ов, папок sql/ и tests/, актуализирован путь обучения.
  - обновлен educational-tasks.md: добавлены 4 новых задания (ETL, PostgresOperator, DQ проверки, Trigger Rules) и обновлен блок оценки прогресса.
- Проверка:
  - визуальная проверка файлов README.md и educational-tasks.md в репозитории.
2026-03-08 20:31:08 +03:00
ddadmin 69c9532bb2 chore(gitignore): добавлен venv/ в .gitignore
- Зачем:
  - исключение локального виртуального окружения из git
- Что:
  - добавлена запись venv/ в .gitignore
- Проверка:
  - git status не должен показывать папку venv/
2026-03-08 20:19:02 +03:00
ddadmin 5a3e78c9b8 docs(dags): обновлена документация для csv_to_postgres пайплайна
- Зачем:
  - отражение изменений после миграции с Greenplum на PostgreSQL
  - добавление описания новых DAG-ов для обучения
- Что:
  - удалено устаревшее упоминание Greenplum в educational-setup-plan.md
  - добавлено описание csv_to_postgres.py в educational-setup-plan.md
  - добавлено описание csv_to_postgres.py и csv_to_postgres_dq.py в dag-specifications.md
  - обновлена нумерация DAG-ов в dag-specifications.md
- Проверка:
  - просмотр файлов dag-specifications.md и educational-setup-plan.md
2026-03-08 20:15:24 +03:00
ddadmin 8028711f0c refactor(dags): миграция CSV-пайплайна с Greenplum на PostgreSQL
- Зачем:
  - адаптация пайплайна для работы с чистым PostgreSQL вместо Greenplum
  - обеспечение совместимости с учебным стендом на базе Docker Compose
- Что:
  - переименованы файлы (greenplum -> postgres)
  - обновлены DAG-файлы: замена get_gp_conn на get_postgres_conn, адаптация DDL под PostgreSQL
  - обновлён helpers/postgres.py: замена функций и переменных окружения
  - добавлен pytest в requirements.txt для запуска тестов
  - создан tests/conftest.py с функцией patch_postgres_hook
  - обновлён tests/test_postgres_helpers.py: исправлены импорты
  - добавлено монтирование папки tests в docker-compose.yml
  - адаптирован sql/base/orders_ddl.sql под PostgreSQL
- Проверка:
  - docker-compose exec airflow-webserver pytest /opt/airflow/tests/test_postgres_helpers.py
2026-03-08 19:51:15 +03:00
ddadmin f703d8e96d feat(greenplum): добавлен CSV-пайплайн и проверки качества данных
- Зачем:
  - Необходим пример загрузки данных из CSV в Greenplum через Airflow
  - Добавлены проверки качества данных для валидации загруженных данных
- Что:
  - создан DAG csv_to_greenplum для генерации и загрузки CSV в таблицу orders
  - создан DAG csv_to_greenplum_dq для проверок качества данных
  - создан DAG ddl_greenplum_base для применения DDL таблицы orders
  - добавлен модуль helpers/greenplum с функциями подключения и валидации
  - добавлен SQL-скрипт sql/base/orders_ddl.sql для создания таблицы
  - добавлены unit-тесты test_greenplum_helpers.py
- Проверка:
  - запуск DAG csv_to_greenplum в Airflow UI
  - запуск тестов pytest tests/test_greenplum_helpers.py
2026-03-08 19:08:47 +03:00
ddadmin 7072f88e27 Merge branch 'feature/MermaidDiagrams' 2026-03-05 22:23:18 +03:00
ddadmin 88727de538 docs(concepts): добавлена наглядная Mermaid-диаграмма взаимосвязей компонентов
- Зачем:
  - старая ссылка на изображение была нерабочей, пользователю не хватало визуализации связей DAG, задач и операторов.
- Что:
  - добавлена Mermaid-диаграмма в стиле flowchart LR.
  - визуализирована структура DAG как контейнера с последовательностью задач.
  - показана связь каждой задачи с её технической реализацией (Operator/Sensor) через пунктирные линии.
- Проверка:
  - визуальный осмотр рендеринга Mermaid в Markdown-превью.
2026-03-05 22:22:17 +03:00
ddadmin 1eb2213d61 Обновлена архитектурная диаграмма 2025-12-06 22:12:36 +03:00
ddadmin 5bcb737c23 Удаление неиспользуемых файлов 2025-12-06 21:48:30 +03:00
ddadmin e5f8f00e42 Merge branch 'feature/MermaidDiagrams' 2025-12-06 21:44:50 +03:00
ddadmin 5a0e1ae6cc Новые задания по pool, xcom, taskgroup 2025-12-06 21:44:17 +03:00
ddadmin fc5b235279 Обновление метаданных для роботов 2025-12-06 21:39:30 +03:00
ddadmin eaae2e1beb Актуализация версии Ariflow 2025-12-06 21:36:35 +03:00
ddadmin 97241b5b03 Переименование раздела 2025-12-06 21:36:21 +03:00
ddadmin a2bbceaebc Добавлена пропущенная иллюстрация 2025-12-06 20:33:36 +03:00
ddadmin f84f08b50f Стилистические правки 2025-12-06 20:29:07 +03:00
ddadmin 093ab58d7d Мелкие правки/уточнения 2025-12-06 19:41:12 +03:00
ddadmin 06c731f0b6 Раздел 7 - переработка текста 2025-12-06 19:35:45 +03:00
ddadmin 306eec90e8 Стилевые правки 2025-12-06 19:13:19 +03:00
ddadmin 116134a85e Вычитка и переработка раздела 5 2025-12-06 18:29:06 +03:00
ddadmin 4e89c10c3e Обновленный раздел 4 - актуализация по версии 2025-12-06 17:43:45 +03:00
ddadmin e28ea045a2 Раздел 3 2025-12-06 16:30:16 +03:00
ddadmin 045132a088 Еще одна диаграмма 2025-12-06 14:51:28 +03:00
ddadmin f811226648 Первые 2 раздела 2025-12-06 14:50:13 +03:00
ddadmin 2d3eb8eab4 шаблон под idea 2025-12-06 13:56:29 +03:00
ddadmin 4a3d5e2423 В введении к учебнику рассказано о практическом стенде 2025-11-04 16:21:24 +03:00
ddadmin f12acc23d5 Добавление учебных заданий 2025-11-04 14:24:15 +03:00
ddadmin 399df8a941 Отключен автозапуск 2025-11-04 14:00:13 +03:00
ddadmin a84c4a599f Отмена автозапуска + комментарии 2025-11-04 13:57:33 +03:00
ddadmin e23918ab8a Правка оформления 2025-11-04 13:46:39 +03:00
ddadmin d193f61000 Отмена запуска по расписанию 2025-11-04 13:46:29 +03:00
ddadmin fee2382069 Стабилизация файловой системы 2025-11-04 13:43:43 +03:00
ddadmin ca9a32080d Сделана более реалистичная генерация демо данных по людям 2025-11-04 13:38:20 +03:00
ddadmin 52fb50441a Переименована таблица, фикс багов 2025-11-04 12:38:35 +03:00
ddadmin bfc2696057 Автосоздание connection в Airflow 2025-11-03 22:52:19 +03:00
ddadmin d8f0a58563 Зависимости запуска контейнеров
Влияение на стабильность запуска airflow после инициализации
2025-11-03 22:27:11 +03:00
ddadmin 88db7419e2 Правка ошибок 2025-11-03 22:12:57 +03:00
ddadmin 0ed1800523 Упрощение документации 2025-11-03 22:12:48 +03:00
ddadmin 23c8a8d78b Переименована устаревшая переменная 2025-11-03 22:12:31 +03:00
ddadmin 29df042271 Фикс сборки airflow 2025-11-03 21:51:51 +03:00
ddadmin 24a50da536 Установка зависимостей вынесена в отдельный контейнер 2025-10-19 20:30:54 +03:00
ddadmin a58670783c Документация 2025-10-19 20:17:29 +03:00
ddadmin 48911d7f62 Первоначальная реализация 2025-10-19 19:59:28 +03:00
ddadmin a493750341 Первый commit 2025-10-18 23:25:42 +03:00