Apache Airflow | Data Engineering | Data Pipelines | Data Workflow / ETL using Apache Airflow and Python / PySpark

11 videos • 28,680 views • by Rajesh Jakhotia Airflow is a platform to programmatically author, schedule, and monitor workflows. It is used to orchestrate the Data Pipelines / ETL Processes. Data Engineering with Airflow Content: 1) Getting started with Airflow 2) Creating a Simple ETL DAG using DummyOperator 3) Creating a Simple ETL DAG using PythonOperator 4) Using XCOMs for Cross-Communication between Tasks 5) Passing DataFrame Object from Extract to Transform to Load Function 6) Connections and Hooks, airflow.hooks.postgres_hook, PostgresHook (pip install apache-airflow-providers-postgres) 7) SubDAGs, TaskGroups, Parallel Processing 8) Airflow Variables and Password Management 9) Trigger DAG with Config Parameters 10) TriggerDagRunOperator to configure DAG dependencies at ease Connect with us on Whatsapp: + 91 8939694874 Website Blog: https://k2analytics.co.in/blog Write to me at: ar.jakhotia@k2analytics.co.in Use Airflow to author workflows as Directed Acyclic Graphs (DAGs) of tasks. The Airflow scheduler executes your tasks on an array of workers while following the specified dependencies. Rich command line utilities make performing complex surgeries on DAGs a snap. The rich user interface makes it easy to visualize pipelines running in production, monitor progress, and troubleshoot issues when needed. Dynamic: Airflow pipelines are configuration as code (Python), allowing for dynamic pipeline generation. This allows for writing code that instantiates pipelines dynamically. Extensible: Easily define your own operators, executors and extend the library so that it fits the level of abstraction that suits your environment. Elegant: Airflow pipelines are lean and explicit. Parameterizing your scripts is built into the core of Airflow using the powerful Jinja templating engine. Scalable: Airflow has a modular architecture and uses a message queue to orchestrate an arbitrary number of workers. Airflow is ready to scale to infinity. Challenges handled by Airflow: Failures: retry if failure happens(how many times? how often?) Monitoring: success or failure status, how long does the process runs? Dependencies: Data dependencies: upstream data is missing Execution dependencies: job 2 runs after job 1 is finished. Scalability: There is no centralized scheduler between different cron machines Deployment: deploy new changes constantly Process historic data: backfill/rerun historic data Connect with us on Whatsapp : + 91 8939694874 Website Blog: https://k2analytics.co.in/blog Write to me at: ar.jakhotia@k2analytics.co.in