Работал ли с Apache Airflow
Python
Middle
СБЕР
Работал ли с Apache Airflow
Ответы
Да, работал с Apache Airflow — это мощный инструмент для оркестрации и планирования задач. Основные моменты:
- **DAG (Directed Acyclic Graph)**: Основная единица работы. Определяется в Python-скрипте, где задачи (операторы) связываются в граф зависимостей.
- **Операторы**: `BashOperator`, `PythonOperator`, `PostgresOperator` и др. для выполнения задач.
- **Планировщик**: Запускает задачи по расписанию или вручную через UI.
Пример простого DAG:
```
from airflow import DAG
from airflow.operators.bash import BashOperator
from datetime import datetime
with DAG(
dag_id="example_dag",
start_date=datetime(2023, 1, 1),
schedule_interval="@daily",
) as dag:
task1 = BashOperator(task_id="print_date", bash_command="date")
task2 = BashOperator(task_id="echo", bash_command="echo 'Hello Airflow'")
task1 >> task2 # Определение порядка выполнения
```
Также знаком с **XCom** для обмена данными между задачами, **Hooks** для подключений к внешним системам и настройкой **Executor** (Local, Celery, Kubernetes).