Definieren einer BashOperator Aufgabe
Unter BashOperator
kannst du einen beliebigen Shell-Befehl oder ein Skript angeben und zu einem Airflow-Workflow hinzufügen. Das kann ein guter Anfang für die Implementierung von Airflow in deiner Umgebung sein.
Daher hast du einige Skripte manuell ausgeführt, um die Daten zu bereinigen (mit einem Skript namens cleanup.sh
), bevor sie an deine Kollegen in der Datenanalysegruppe weitergeleitet werden. Je mehr Aufgaben du zugewiesen bekommst, desto schwieriger wird es, alles manuell zu erledigen, ganz zu schweigen von Fehlern oder Wiederholungen. Du möchtest ein einfaches Skript als Airflow-Operator implementieren.
Der Airflow DAG analytics_dag
ist bereits für dich definiert und verfügt über die entsprechenden Konfigurationen.
Diese Übung ist Teil des Kurses
Einführung in Apache Airflow in Python
Anleitung zur Übung
- Importiere das Objekt
BashOperator
. - Definiere ein
BashOperator
namenscleanup
mit demtask_id
voncleanup_task
. - Verwende den Befehl
cleanup.sh
.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Import the BashOperator
from airflow.operators.bash import ____
with DAG(dag_id="test_dag", default_args={"start_date": "2024-01-01"}) as analytics_dag:
# Define the BashOperator
cleanup = ____(
task_id=____,
# Define the bash_command
bash_command=____,
)