Definindo a DAG
Nos exercícios anteriores, você concluiu separadamente as fases de extração, transformação e carga. Agora tudo isso está reunido em uma única função etl() que você pode explorar no console.
A função etl() extrai os dados brutos de cursos e avaliações dos bancos de dados relevantes, limpa dados corrompidos e preenche valores ausentes, calcula a avaliação média por curso e cria recomendações com base nas regras de decisão para gerar recomendações e, por fim, carrega essas recomendações em um banco de dados.
Como você deve se lembrar do vídeo, etl() aceita um único argumento: db_engines. Você pode passá-lo para a tarefa usando op_kwargs no PythonOperator. Você pode passar um dicionário que será preenchido como kwargs na função chamável.
Este exercício faz parte do curso
Introdução à Engenharia de Dados
Instruções do exercício
- Complete a definição da DAG para que ela seja executada diariamente. Use a notação cron.
- Complete o
PythonOperator()passando os argumentos corretos. Além deetl,db_enginestambém está disponível no seu ambiente de trabalho.
Exercício interativo prático
Experimente este exercício completando 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={"____": ____},
)