Подключение к базе данных Yandex Managed Service for Apache Airflow™
Статья создана
Обновлена 21 марта 2025 г.
Вы можете программно подключиться к базе данных Managed Service for Apache Airflow™ и обновить данные подключений с помощью направленного ациклического графа (DAG).
Подготовьте DAG-файл и запустите граф
-
Создайте локально файл с именем
update_connections.py
и скопируйте в него скрипт:import json from airflow.decorators import dag, task from airflow.settings import Session from airflow.models import Connection @dag(schedule=None) def update_connections(): @task def update_connections_task(): with Session() as session: connections = session.query(Connection) for conn in connections: extra = conn.extra_dejson print(f"extra: {extra}") update_count = extra.get('update_count', 0) extra['update_count'] = update_count + 1 conn.set_extra(json.dumps(extra)) session.add(conn) session.commit() update_connections_task() update_connections()
-
Загрузите DAG-файл
update_connections.py
в созданный ранее бакет. В результате одноименный граф появится в веб-интерфейсе Apache Airflow™ автоматически. -
Убедитесь, что в разделе DAGs появился новый граф
update_connections
.Загрузка DAG-файла из бакета может занять несколько минут.
-
Чтобы запустить граф, в строке с его именем нажмите кнопку
.
Проверьте результат
Чтобы проверить результат в веб-интерфейсе Apache Airflow™:
- В разделе DAGs откройте граф
update_connections
. - Перейдите в раздел Graph.
- Выберите задание update_connections_task.
- Перейдите в раздел Logs.
- Убедитесь, что в логах есть список обновленных подключений. Это значит, что запрос выполнен успешно.