Middle
Čo je DAG v Airflow?
sobes.tech AI
Odpoveď od AI
DAG (Directed Acyclic Graph) v Apache Airflow je struktúra, ktorá opisuje sled úloh (tasks) a ich závislosti vo forme smerovaného acyklického grafu.
Každý vrchol grafu predstavuje úlohu a hrany ukazujú poradie vykonávania: úloha B môže začať až po úspešnom ukončení úlohy A, ak medzi nimi existuje hrana z A do B.
Hlavné vlastnosti DAG v Airflow:
- Smerovaný — úlohy nasledujú určitý smer, odrážajúc tok dát alebo procesov.
- Acyklický — neexistujú cykly, aby sa zabránilo nekonečným opakovaniam.
Príklad jednoduchého DAG v Pythone v Airflow:
from airflow import DAG
from airflow.operators.bash import BashOperator
from datetime import datetime
default_args = {'start_date': datetime(2024, 1, 1)}
dag = DAG('priklad_dag', default_args=default_args, schedule_interval='@daily')
# Definovanie úloh
start = BashOperator(task_id='start', bash_command='echo Start', dag=dag)
process = BashOperator(task_id='process', bash_command='echo Processing', dag=dag)
end = BashOperator(task_id='end', bash_command='echo End', dag=dag)
# Definovanie závislostí
start >> process >> end
Takto je DAG v Airflow spôso, ako popísať a automatizovať zložité pracovné procesy s jasne stanoveným poradím vykonávania.