ÎncepețiÎncepe gratuit

Decorarea unui task

Ai decis să implementezi un task specific în Airflow folosind Python. Acest task trebuie să descarce și să salveze un fișier în sistem, în cadrul Airflow, utilizând funcția pull_file. Funcția este deja definită pentru tine.

Biblioteca requests este deja importată, la fel și obiectul dag din Airflow.

Acest exercițiu face parte din cursul

Introducere în Apache Airflow în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Importă obiectul necesar din biblioteca Airflow.
  • Configurează funcția pull_file să fie un task Airflow.
  • Apelează obiectul task.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Import the task decorator
from ____ import ____

@dag(dag_id='file_update')
def file_update():
  # Decorate the function as a task
  ____
  def pull_file(URL, savepath):
    r = requests.get(URL)
    with open(savepath, 'wb') as f:
      f.write(r.content)   
    print(f"File pulled from {URL} and saved to {savepath}")
  # Call the task
  ____('http://dataserver/sales.json', 'latestsales.json')

file_update()
Editează și rulează codul