Definindo o DAG
Nos exercícios anteriores, você concluiu as fases de extração, transformação e carregamento separadamente. Agora, tudo isso está reunido em uma função etl()
bem organizada que você pode descobrir no console.
A função etl()
extrai dados brutos de cursos e classificações de bancos de dados relevantes, limpa os dados corrompidos e preenche os valores ausentes, calcula a classificação média por curso e cria recomendações com base nas regras de decisão para produzir recomendações e, por fim, carrega as recomendações em um banco de dados.
Como você deve se lembrar do vídeo, o etl()
aceita um único argumento: db_engines
. Você pode passar isso para a tarefa usando op_kwargs
no site PythonOperator
. Você pode passar a ele um dicionário que será preenchido como kwargs no callable.
Este exercício faz parte do curso
Introdução à engenharia de dados
Instruções de exercício
- Conclua a definição do site DAG, para que ele seja executado diariamente. Certifique-se de usar a notação cron.
- Complete o site
PythonOperator()
passando os argumentos corretos. Além deetl
,db_engines
também está disponível em seu espaço de trabalho.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# Define the DAG so it runs on a daily basis
dag = DAG(dag_id="recommendations",
schedule_interval="____")
# Make sure `etl()` is called in the operator. Pass the correct kwargs.
task_recommendations = PythonOperator(
task_id="recommendations_task",
python_callable=____,
op_kwargs={"____": ____},
)