リトライの追加
特定のDAGで、あるデータソースからデータを取得するタスクが頻繁に失敗していることに気づきました。数分後に再実行すると問題なく動作することが多く、手動での再起動が煩わしい状況です。AirflowのDAGにおけるリトライ機能を学んだので、このタスクにリトライを実装してみましょう。
dag、task、および timedelta はすでにインポート済みです。
この演習はコースの一部です
Python で学ぶ Apache Airflow 入門
演習の手順
extract_dataタスクが失敗する前に3回リトライするよう設定してください。extract_dataタスクのリトライ間隔を10分に設定してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
@dag(schedule="@daily", start_date=datetime(2026, 5, 1))
def etl_pipeline():
# Set retries and retry delay on extract_data
@task(____=3, ____=____(minutes=10))
def extract_data():
print("Extracting data from source...")
@task()
def process_source_data():
print("Now processing data...")
extract_data() >> process_source_data()
etl_pipeline()