BaşlayınÜcretsiz başlayın

Bir @task.branch tanımla

Airflow içinde koşullu mantığın gücünü öğrendikten sonra, @task.branch dekoratörünü denemek istiyorsun. Geçerli yürütme tarihi yeni bir yılı temsil ediyorsa (ör. 2026 vs 2025) farklı bir kod yolu çalıştırmak istiyorsun.

Dag ve ilgili görevler senin için tanımlandı. Şu anki görevin @task.branch'i uygulamak.

Bu egzersiz, kursun bir parçasıdır

Python ile Apache Airflow’a Giriş

Kursa Göz Atın

Egzersiz talimatları

  • Geçerli ve önceki yürütme yılını karşılaştırmak için uygun Airflow tarih şablonu değişkenlerini year_check fonksiyonuna parametre olarak ekle.
  • Her tarih parametresinin ilk 4 karakterini dilimleyerek current_year ve previous_year değerlerini ata.
  • current_year_task ve new_year_task için bağımlılıkları ayarla.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

@dag(start_date=datetime(2026,5,1), schedule='@monthly')
def process_yearly_expenses():
  # Create a function to determine if years are different
  @task.branch
  def year_check(____, ____):
      current_year = int(____[0:4])
      previous_year = int(____[0:4])
      if current_year == previous_year:
          return 'current_year_task'
      else:
          return 'new_year_task'

  # Define the dependencies
  branch_task __ current_year_task
  ____ >> new_year_task
Kodu Düzenle ve Çalıştır