Mehrere BashOperators
Airflow-DAGs können viele Operatoren enthalten, die jeweils ihre definierten Aufgaben ausführen.
Du hast eines deiner Skripte erfolgreich als Airflow-Task implementiert und möchtest nun deine einzelnen Skripte vollständig in einen Airflow-DAG migrieren. Du willst weitere Komponenten zum Workflow hinzufügen. Zusätzlich zum cleanup.sh aus der vorherigen Übung hast du zwei weitere Skripte: consolidate_data.sh und push_data.sh. Diese verarbeiten deine Daten weiter und kopieren sie an ihren endgültigen Speicherort.
Der DAG analytics_dag ist bereits definiert (du musst also keine with DAG(...)-Anweisung hinzufügen), und dein cleanup-Task ist weiterhin vorhanden. Der BashOperator wurde bereits importiert.
Diese Übung ist Teil des Kurses
Einführung in Apache Airflow mit Python
Anleitung zur Übung
- Definiere einen
BashOperatornamensconsolidate, derconsolidate_data.shausführt, mit einertask_idvonconsolidate_task. - Füge einen abschließenden
BashOperatornamenspush_datahinzu, derpush_data.shausführt und einetask_idvonpushdata_taskhat.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Define a second operator to run the `consolidate_data.sh` script
consolidate = ____(
task_id='consolidate_task',
bash_command=____
)
# Define a final operator to execute the `push_data.sh` script
push_data = ____(
____=____,
____=____
)