100% Free Forever
AI-Powered Learning
Industry Expert Content
Certificates & Badges
Learn At Your Own Pace
Data Pipeline Orchestration
35 minintermediate

Writing DAGs — Operators, Sensors and TaskFlow API

Writing Airflow DAGs means choosing between two complementary APIs: the classic Operator-based API, where each task is an Operator instance configured with parameters; and the modern TaskFlow API introduced in Airflow 2.0, where tasks are Python functions decorated with `@task`. Both produce the same underlying DAG — TaskFlow is syntactic sugar that auto-generates Operator instances from decorated functions — but TaskFlow reduces boilerplate, makes dependencies implicit from function call syntax, and enables passing typed Python values between tasks rather than serialised XCom strings.

Sensors are a special category of Operator that wait for an external condition rather than performing computation. They are the event-driven building blocks of Airflow — a cron-scheduled DAG can wait for data to actually be available before starting heavy processing. The combination of a cron trigger and an early sensor is the most reliable production pattern: the DAG runs at a maximum-latency time if data never arrives, and runs earlier when data arrives on time.

Analogy🏏Cricket
🏏 Think of it like cricket: Migrating from Airflow to Prefect is like the same bowling coach shifting from traditional Test cricket notation to a modern T20 analytics dashboard — the underlying ball-by-ball data (the business logic) is exactly the same. What changes is how the data is recorded, displayed, and acted upon. The yorker that Bumrah bowls in over 20 is identical whether it is recorded in the old scorebook (Airflow DAG file) or the new analytics platform (Prefect flow). The migration is a transcription exercise, not a strategy change — and a wise coach verifies that the runs, wickets, and economies match exactly between the old and new system before decommissioning the scorebook. That verification step is the whole heart of the migration: because the yorker is unchanged, the only honest test is to run the same over through both systems and confirm the recorded runs, wickets and economies match to the last digit before the old scorebook is thrown away. Rushing to burn the scorebook the moment the shiny dashboard lights up is how teams lose a season of records to a silent transcription slip. The coach keeps both systems running in parallel for a while, reconciles their outputs ball by ball, and only when every figure agrees does he trust the new dashboard alone — a transcription is only complete when you have proven nothing was lost in the copying.
Lesson 8 of 35
0% complete