Mulai sekarangMulai gratis

Mendefinisikan DAG

Pada latihan sebelumnya, Anda telah menyelesaikan fase extract, transform, dan load secara terpisah. Sekarang semuanya digabungkan dalam satu fungsi etl() yang rapi, yang dapat Anda lihat di konsol.

Fungsi etl() mengekstrak data kursus dan rating mentah dari basis data terkait, membersihkan data yang korup dan mengisi nilai yang hilang, menghitung rata-rata rating per kursus dan membuat rekomendasi berdasarkan aturan keputusan untuk menghasilkan rekomendasi, dan akhirnya memuat rekomendasi tersebut ke dalam basis data.

Seperti yang mungkin Anda ingat dari video, etl() menerima satu argumen: db_engines. Baik etl maupun db_engines tersedia di workspace Anda, sehingga task yang Anda definisikan hanya perlu memanggil yang satu dengan yang lain.

Latihan ini merupakan bagian dari kursus

Pengantar Data Engineering

Lihat Kursus

Instruksi latihan

  • Lengkapi definisi DAG agar berjalan setiap hari. Pastikan menggunakan notasi cron.
  • Lengkapi task agar memanggil fungsi etl() dengan database engines.

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

# Define the DAG so it runs on a daily basis
@dag(dag_id="recommendations",
     start_date=datetime(2024, 1, 1),
     schedule="____")
def recommendations():
    # Make sure the task calls etl() with the database engines
    @task(task_id="recommendations_task")
    def recommendations_task():
        ____(____)

    recommendations_task()

# Run the DAG
recommendations()
Edit dan Jalankan Kode