course

NL/EN
This training is available in Dutch and English. More information

Advanced Apache Spark for Data Engineers

Get a deeper understanding of Apache Spark in order to optimize your data workflow.

June 16, 2025
- Veenendaal / Remote
2 days
1530 (excl. VAT)

Description

In this course, you will explore techniques and best practices for optimizing Apache Spark applications. As you study the architectural elements of Spark, you will learn to work with the Spark UI. You will identify and address common performance issues caused by shuffles and skew. Advanced optimization strategies for join, union, and merge operations, data formats, caching mechanisms, garbage collector settings, data partitioning, bucketing, and Delta Lake optimizations are also covered. Additionally, you will explore regular maintenance tasks for Spark applications and learn how to customize Spark session configurations for optimal performance.

Learning Goals

CheckmarkDescribe the architecture of a spark application.
RememberLogo InfoSupport
CheckmarkExplain the structure and functionality of the Spark UI.
UnderstandLogo InfoSupport
CheckmarkPredict common performance issues casued by shuffling and data skew.
ApplyLogo InfoSupport
CheckmarkOptimize join, union, and merge operations in Spark.
AnalyzeLogo InfoSupport
CheckmarkChange the data format for optimal performance.
ApplyLogo InfoSupport
CheckmarkImplement caching mechanisms and garbage collector settings for enhanced performance.
ApplyLogo InfoSupport
CheckmarkUse data partitioning and bucketing in Spark workloads.
ApplyLogo InfoSupport
CheckmarkApply Delta Lake optimizations for better performance in Spark.
ApplyLogo InfoSupport
CheckmarkDescribe regular maintenance tasks for Spark applications.
UnderstandLogo InfoSupport
CheckmarkCustomize Spark session configurations for optimal performance.
ApplyLogo InfoSupport
For the above learning goals we use Bloom's Taxonomy

Prior Knowledge

  • Python
  • Apache Spark fundamentals

Subjects

  1. Introduction to Spark Architecture and Ecosystem
  2. Understanding the Spark UI
  3. Common Performance Issues in Spark
  4. Optimizing Data Operations in Spark
  5. Data Formats and Performance
  6. Caching and Garbage Collection in Spark
  7. Data Partitioning and Bucketing
  8. Delta Lake Optimizations
  9. Maintenance of Spark Applications
  10. Customizing Spark Session Configurations

Introduction to Spark Architecture and Ecosystem

  • Overview of Spark architecture
  • Key components: Driver, Executors, Cluster Manager
  • The ecosystem: JVM, Kubernetes, Yarn, HDFS, Hive Metastore

Understanding the Spark UI

  • Structure of the Spark UI
  • Functionality of different tabs (Jobs, Stages, Storage, Environment, Executors)
  • Monitoring and diagnosing Spark applications

Common Performance Issues in Spark

  • Shuffles and Data Skew
  • Sorting
  • Narrow and Wide transformations

Optimizing Data Operations in Spark

  • Join operations: broadcast joins, shuffle joins
  • Union and merge operations

Data Formats and Performance

  • Common data formats such as json, csv and parquet
  • Impact of data format on performance
  • Making optimal use of data formats for Spark applications

Caching and Garbage Collection in Spark

  • Caching mechanisms in Spark (cache(), persist())
  • Data persistence
  • Garbage collection settings and their impact on performance

Data Partitioning and Bucketing

  • Partitioning strategies and impact in Spark
  • Bucketing techniques and their benefits

Delta Lake Optimizations

  • Introduction to Delta Lake
  • Performance optimization in Delta Lake
  • Delta Lake housekeeping

Maintenance of Spark Applications

  • Regular maintenance tasks for Spark applications
  • Monitoring and diagnostics tools

Customizing Spark Session Configurations

  • Spark session configurations and their impact on performance
  • Common spark session parameters
  • Customizing configurations for specific workloads

Schedule

Start dateDurationLocation
June 16, 2025June 17, 2025
2 days
Veenendaal / Remote
This is a hybrid training and can be followed remotely. More information
Veenendaal / Remote
This is a hybrid training and can be followed remotely. More information
Sign up
Keep me posted on new sessions

All courses can also be conducted within your organization as customized or incompany training.

Our training advisors are happy to help you provide personal advice or find Incompany training within your organization.

Trainers

Prior knowledge courses

"Very pleasant teacher, gave a very good interpretation of the course in their own way. It was nice to follow the course like that."
Marieke
  • icon

    Hoge waardering

  • icon

    Praktijkgerichte trainingen

  • icon

    Gecertificeerde trainers

  • icon

    Eigen docenten