Course Outline
Databricks Platform & Lakehouse Basics
- Overview of Lakehouse architecture and key components
- Management of workspaces and catalogs
Workspace Navigation & Notebook Development
- Guided navigation and notebook-centric coding
- Organizing code into reusable notebook structures
Apache Spark Architecture & Execution
- Spark runtime structure and execution mechanics
- Concepts of lazy evaluation and DAG jobs
PySpark DataFrames & API Usage
- Understanding DataFrame abstractions and schemas
- Essential DataFrame operations and column handling
Converting SQL to PySpark
- Mapping standard SQL clauses to DataFrame methods
- Implementing window functions and aggregations in PySpark
Data Ingestion & Output in Databricks
- Reading from standard file and database sources
- Writing and partitioning data within the Lakehouse
Delta Lake & Table Administration
- Delta tables and ACID transaction support
- Utilizing time travel and schema evolution
Data Cleaning & Transformation Techniques
- Techniques for data cleansing and type casting
- Creating reusable transformation logic
UDFs & Modular Coding
- Implementing Python UDFs and pandas UDFs
- Refactoring procedural code into modular functions
Performance Tuning & Optimization
- Strategies for partitioning and caching
- Identifying bottlenecks via the Spark UI
Structured Streaming Basics
- Differences between batch and streaming models
- Handling streaming DataFrames and basic aggregates
Job Scheduling & Workflow Orchestration
- Configuring notebooks as scheduled jobs and tasks
- Constructing multi-step workflows with dependencies
Unity Catalog & Data Governance
- Unity Catalog structure and namespace management
- Enforcing access controls and tracking data lineage
Testing, Debugging & Production Standards
- Unit testing PySpark logic
- Maintaining debugging protocols and code quality
Financial Services Case Studies
- Developing a complete banking ETL pipeline
- Converting legacy SQL processes to PySpark
SQL to PySpark Migration
- Planning migration strategies and patterns
- Step-by-step conversion of SQL workflows to PySpark
Requirements
- Proficiency in Python programming, covering functions and data structures
- Working knowledge of SQL, specifically joins, aggregations, and subqueries
- No previous exposure to Databricks or PySpark is necessary
Intended Audience
- Data engineers, analysts, and related data professionals
- Teams in the process of shifting SQL-based workflows to Databricks and PySpark
Testimonials (2)
Showing different ways to optimize our PySpark queries.
Ivan Abrashev - UBB + DZI (KBC GROUP)
Course - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
I liked that it was practical. Loved to apply the theoretical knowledge with practical examples.