1:1 Coaching
24*7 Support
Cloud Labs
High Success Rate
Globally Renowned Trainer
Real-time code analysis and feedback
Course Description
This three-day hands-on training course delivers the key concepts and expertise developers need to improve the performance of their Apache Spark applications. During the course, participants will learn how to identify common sources of poor performance in Spark applications, techniques for avoiding or solving them, and best practices for Spark application monitoring.
Apache Spark Application Performance Tuning presents the architecture and concepts behind Apache Spark and the underlying data platform, then builds on this foundational understanding by teaching students how to tune Spark application code. The course format emphasizes instructor-led demonstrations that illustrate both performance issues and the techniques that address them, followed by hands-on exercises that give students an opportunity to practice what they've learned through an interactive notebook environment. The course applies to Spark 2.4, but also introduces the Spark 3.0 Adaptive Query Execution framework.
Learning Objectives
Students who successfully complete this course will be able to:
- Understand Apache Spark’s architecture, job execution, and how techniques such as lazy execution and pipelining can improve runtime performance
- Evaluate the performance characteristics of core data structures such as RDD and DataFrames
- Select the file formats that will provide the best performance for your application
- Identify and resolve performance problems caused by data skew
- Use partitioning, bucketing, and join optimizations to improve SparkSQL performance
- Understand the performance overhead of Python-based RDDs, DataFrames, and user-defined functions
- Take advantage of caching for better application performance
- Understand how the Catalyst and Tungsten optimizers work
- Understand how Workload XM can help troubleshoot and proactively monitor Spark applications performance
- Learn about the new features in Spark 3.0 and specifically how the Adaptive Query Execution engine improves performance
Certification Curriculum
Spark Architecture
- RDDs
- DataFrames and Datasets
- Lazy Evaluation
- Pipelining
Data Sources and Formats
- Available Formats Overview
- Impact on Performance
- The Small Files Problem
Inferring Schemas
- The Cost of Inference
- Mitigating Tactics
Dealing With Skewed Data
- Recognizing Skew
- Mitigating Tactics
Catalyst and Tungsten Overview
- Catalyst Overview
- Tungsten Overview
Mitigating Spark Shuffles
- Denormalization
- Broadcast Joins
- Map-Side Operations
- Sort Merge Joins
Partitioned and Bucketed Tables
- Partitioned Tables
- Bucketed Tables
- Impact on Performance
Improving Join Performance
- Skewed Joins
- Bucketed Joins
- Incremental Joins
Pyspark Overhead and UDFs
- Pyspark Overhead
- Scalar UDFs
- Vector UDFs using Apache Arrow
- Scala UDFs
Caching Data for Reuse
- Caching Options
- Impact on Performance
- Caching Pitfalls
Workload XM (WXM) Introduction
- WXM Overview
- WXM for Spark Developers
What’s New in Spark 3.0?
- Adaptive Number of Shuffle Partitions
- Skew Joins
- Convert Sort Merge Joins to Broadcast Joins
- Dynamic Partition Pruning
- Dynamic Coalesce Shuffle Partitions
Prerequisites
This course is designed for software developers, engineers, and data scientists who have experience developing Spark applications and want to learn how to improve the performance of their code. This is not an introduction to Spark.
Spark examples and hands-on exercises are presented in Python and the ability to program in this language is required. Basic familiarity with the Linux command line is assumed. Basic knowledge of SQL is helpful.
Download Brochure
We offer Apache Spark Application Performance Tuning Certification Training in Singapore aimed at beginner Associate Cloud Engineers that can lead to your Apache Spark Application Performance Tuning Certification. Download the brochure and check the different Focus Areas covered within these 4 days of training.
Certification Assessment
When you complete the program, you’ll earn a Certificate to share with your professional network as well as unlock access to career support resources to help you kickstart your new career. Many Professional Certificates have hiring partners that recognize the Professional Certificate credential and others can help prepare you for a certification exam. You can find more information on individual Professional Certificate pages where it applies.
- High Success rate
- Join Our Dynamic Community
- Training from Recognized Trainer
- Post-workshop support by the Coaches
Testimonials
Our clients praise us for our great results, personable service, expert knowledge, and on-time delivery. Here are what just a few of them had to say:
Training FAQ's
As a response to the COVID-19, we have moved our classes online. Our Live Virtual format delivers the same benefits as our face-to-face training: expert instruction, hands-on labs and exercises, peer-to-peer collaboration, and high-quality instructional material.
Cancellation requests received within 24 hours of registration would be offered a full refund (minus payment gateway charges), please reach out to our support team through drop a refund request to enquiry@agilitics.sg. Visit our page for more details about Cancellation & Refund Policy.
The process of enrolling for this classroom training is simple. The payment can be made through different options by using a debit/credit card which includes MasterCard, Visa Card, American Express or through PayPal. Acknowledgment will be issued automatically via email to the candidates once payment is done.
Payment can be made via credit card, debit card, UPI, and internet banking.
Please send in an email to enquiry@agilitics.sg, and we will answer any queries you may have!