
Explore Apache Airflow, an open source platform to author, schedule, and monitor workflows, with DAGs, dynamic pipelines, and extensible operators for scalable data orchestration.
Explore the code view in the Airflow UI to view and verify the dag's Python code, with line numbers and syntax highlighting for debugging and maintainability.
Trigger a dag run in airflow to execute all tasks, and monitor status, execution date, and duration in the UI graph view alongside task states and operators.
Define dag schedules in Apache Airflow with cron expressions, presets, and time delta, covering minute through day of week fields and examples like midnight daily and weekdays at 2:30 pm.
Explore task instances in Apache Airflow as dag runs, capturing execution date, state, and logs, and trace their life cycle from none to queued, running, and final success or failure.
Explore how the time sensor operator in Airflow uses poke mode to wait for the specified time of day and trigger the downstream task.
Hello and welcome to the Apache Airflow Bootcamp: Hands-On Workflow Automation with Practical Examples!
Throughout my career, I’ve built and managed countless workflows using Apache Airflow, and I’m excited to share my knowledge with you.
This course is designed to take you from a complete beginner to a confident user of Apache Airflow. We’ll cover everything from installation to advanced features, and you'll get hands-on experience through practical examples and real-world projects
What's included in the course ?
Introduction to Airflow
Understanding the purpose and benefits of using Apache Airflow.
Pros and cons of adopting Airflow in your projects.
Airflow Architecture
A detailed look into the components that make up Airflow.
Key terminology used in Airflow.
Configuration and Installation
Step-by-step guide to installing Airflow.
The role and configuration of the airflow.cfg file.
Airflow Web UI Views
Launching and navigating the Airflow Web UI.
DAG View
Grid View
Graph View
Calendar View
Task Duration View
Code View
Variable View
Gantt View
DAGs (Directed Acyclic Graphs)
What is a DAG?
Creating a DAG definition file.
Different methods for DAG creation.
Understanding DAG Run, default_arguments, and DAG arguments.
Using parameters in DAGs and passing parameters through TriggerDagRunOperator.
Scheduling concepts including depends_on_past, wait_for_downstream, catchup, and backfill.
Airflow CLI and Cheatsheet
Utilizing the Airflow CLI for various operations.
Handy cheatsheet for quick reference.
Tasks in Airflow
What are tasks and task instances?
The lifecycle of a task.
Operators in Airflow
Detailed exploration of operators including BashOperator, PostgresOperator, PythonOperator, SqliteOperator, and EmailOperator.
Sensors
Using sensors like FileSensor, SQLSensor, TimeDeltaSensor, and TimeSensor.
Branching
Implementing branching logic with BranchSQLOperator, BranchPythonOperator, BranchDayOfWeekOperator, BranchDateTimeOperator, and ShortCircuitOperator.
DAG Dependencies and TaskGroups
Managing DAG dependencies and using TaskGroups.
Using TriggerDagRunOperator and ExternalTaskSensor.
Hooks
Understanding and using hooks such as PostgresHook and SHook.
Resource Management
Managing resources with pools and task priorities.
Executors in Airflow
Different types of executors: SequentialExecutor and LocalExecutor.
Transitioning from SequentialExecutor to LocalExecutor.
Airflow Metadata Database and Roles
Understanding the Airflow metadata database.
Managing roles: creating users with different roles, including admin, public, user, and operator roles.
Creating custom roles and modifying existing ones.
SLA (Service Level Agreement)
Setting and managing task-level and DAG-level SLAs.
Handling SLA misses.
Advanced Concepts
Using XComs for inter-task communication.
Retrieving context parameters and using callback functions.
Dealing with zombie tasks, SIGTERM, and SIGKILL errors.
I believe that mastering workflow automation with Airflow can open up incredible opportunities in the field of data engineering. I’ve seen firsthand how it can transform the way we handle data, and I can’t wait to see what you’ll achieve with these skills.
So, whether you’re looking to advance your career, work on more efficient data pipelines, or just curious about Airflow, you’re in the right place. Let’s dive in and start creating some amazing workflows together. Are you ready? Let’s get started!
I wish you a great success!