Apache Spark 3 for Data Engineering & Analytics with Python (Udemy.com)
Learn how to use Python and PySpark 3.0.1 for Data Engineering / Analytics (Databricks) - Beginner to Ninja
Created by: Thulani Charles David Mngadi
Last updated May 2022
What you will learn
- Learn the Spark Architecture
- Learn Spark Execution Concepts
- Learn Spark Transformations and Actions using the Structured API
- Learn Spark Transformations and Actions using the RDD (Resilient Distributed Datasets) API
- Learn how to set up your own local PySpark Environment
- Learn how to interpret the Spark Web UI
- Learn how to interpret DAG (Directed Acyclic Graph) for Spark Execution
- Learn the RDD (Resilient Distributed Datasets) API (Crash Course)
- Learn the Spark DataFrame API (Structured APIs)
- Learn Spark SQL
- Learn Spark on Databricks
- Learn to Visualize (Graphs and Dashboards) Data on Databricks
How it compares
Against the other 150 rated Udemy courses in Hadoop on CourseDuck:
- Rating4.6 out of 5higher than 84% of them
- Reviews2,158#34 of 151 by number of reviews
- Length8.7 hourslonger than 65% of them
- Last updatedMay 2022earlier than 56% of them
Course Description
The key objectives of this course are as follows;
Learn the Spark Architecture
Learn Spark Execution Concepts
Learn Spark Transformations and Actions using the Structured API
Learn Spark Transformations and Actions using the RDD (Resilient Distributed Datasets) API
Learn how to set up your own local PySpark Environment
Learn how to interpret the Spark Web UI
Learn how to interpret DAG (Directed Acyclic Graph) for Spark Execution
Learn the RDD (Resilient Distributed Datasets) API (Crash Course)
RDD Transformations
RDD Actions
Learn the Spark DataFrame API (Structured APIs)
Create Schemas and Assign DataTypes
Read and Write Data using the DataFrame Reader and Writer
Read Semi-Structured Data such as JSON
Create and New Data Columns to the DataFrame using Expressions
Filter the DataFrame using the "Filter" and "Where" Transformations
Ensure that the DataFrame has unique rows
Detect and Drop Duplicates
Augment the DataFrame by Adding New Rows
Combine 2 or More DataFrames
Order the DataFrame by Specific Columns
Renaming and Drop Columns from the DataFrame
Clean the DataFrame by detecting and Removing Missing or Bad Data
Create User-Defined Spark Functions
Read and Write to/from Parquet File
Partition the DataFrame and Write to Parquet File
Aggregate the DataFrame using Spark SQL functions (count, countDistinct, Max, Min, Sum, SumDistinct, AVG)
Perform Aggregations with Grouping
Learn Spark SQL and Databricks
Create a Databricks Account
Create a Databricks Cluster
Create Databricks SQL and Python Notebooks
Learn Databricks shortcuts
Create Databases and Tables using Spark SQL
Use DML, DQL, and DDL with Spark SQL
Use Spark SQL Functions
Learn the differences between Managed and Unmanaged Tables
Read CSV Files from the Databricks File System
Learn to write Complex SQL
Use Spark SQL Functions
Create Visualisations with Databricks
Create a Databricks Dashboard
The Python Spark project that we are going to do together;
Sales Data
Create a Spark Session
Read a CSV file into a Spark Dataframe
Learn to Infer a Schema
Select data from the Spark Dataframe
Produce analytics that shows the topmost sales orders per Region and Country
Convert Fahrenheit to Degrees Centigrade
Create a Spark Session
Read and Parallelize data using the Spark Context into an RDD
Create a Function to Convert Fahrenheit to Degrees Centigrade
Use the Map Function to convert data contained within an RDD
Filter temperatures greater than or equal to 13 degrees celsius
XYZ Research
Create a set of RDDs that hold Research Data
Use the union transformation to combine RDDs
Learn to use the subtract transformation to minus values from an RDD
Use the RDD API to answer the following questions
How many research projects were initiated in the first three years?
How many projects were completed in the first year?
How many projects were completed in the first two years?
Sales Analytics
Create the Sales Analytics DataFrame to a set of CSV Files
Prepare the DataFrame by applying a Structure
Remove bad records from the DataFrame (Cleaning)
Generate New Columns from the DataFrame
Write a Partitioned DataFrame to a Parquet Directory
Answer the following questions and create visualizations using Seaborn and Matplotlib
What was the best month in sales?
What city sold the most products?
What time should the business display advertisements to maximize the likelihood of customers buying products?
What products are often sold together in the state "NY"?
Technology Spec
Python
Jupyter Notebook
Jupyter Lab
PySpark (Spark with Python)
Pandas
Matplotlib
Seaborne
Databricks
SQL
Instructor Details
- 4.6 Rating
2,158 Reviews
Thulani Charles David Mngadi
I am a data and AI architect with more than 21 years of experience turning enterprise data into something a business can actually use. I have worked across Banking, Insurance, Telecommunications, and Retail, both in South Africa and in Europe. My career tracks the whole evolution of the field: from Oracle and Kimball data warehousing, through big data engineering on Hadoop, to modern cloud data architecture on Azure and AWS. Today my focus is the Databricks Lakehouse, Unity Catalog governance, and applied generative AI.
I am a TOGAF 9 certified architect and a Databricks certified data engineer. Over the years I have led and mentored technical teams of up to 17 people, set engineering standards, and built the data platforms that regulated businesses depend on. I care as much about clean, tested, production-grade code as I do about the architecture around it.
I also teach, because I enjoy making hard topics click. I have authored industry-recognised courses on Python and Spark, and my style is always hands-on. You build a real project, one step at a time, and you finish with skills you can use at work the next day. If you are serious about data engineering, I will meet you where you are and take you further.
More Hadoop courses
Spark Streaming - Stream Processing in Lakehouse - PySpark (2024)
4.9 (2,251 Reviews)
Provider: Udemy
Time: 22.4h
$11.99
Apache Kafka Series - KSQL on ksqlDB for Stream Processing ! (2026)
4.9 (2,161 Reviews)
Provider: Udemy
Time: 4h
$12.99
Apache Kafka Series - Kafka Streams for Data Processing (2026)
4.8 (6,826 Reviews)
Provider: Udemy
Time: 4.8h
$14.99
Apache Kafka Series - Confluent Schema Registry & REST Proxy (2026)
4.8 (3,794 Reviews)
Provider: Udemy
Time: 4.5h
$94.99
Apache Kafka - Real-time Stream Processing (Master Class) (2023)
4.8 (2,925 Reviews)
Provider: Udemy
Time: 11h
$10.99
Apache Spark 3 & Big Data Essentials in Scala (2024)
4.8 (2,302 Reviews)
Provider: Udemy
Time: 7.3h
$39.99
Reviews
By C M on 3/13/2025
The instructor explains Apache Spark and PySpark concepts well, culminating in a practical introductory exercise using Databricks. Although the Databricks web UI is different nowadays, I had no issues navigating it and completing the exercises.
By Mario Cardoso Batista da Silva Filho on 1/16/2024
Theory is good, but if you do not have domain over clean code, you're going to be very badly guided to write bad spark code. For almost every function he teaches, I find a more simple way to write with the same performance and much less complexity My advice is to search how to do the same functionalities he does in the web and pyspark docs, you will find easier ways.
By Can Bekleyici on 5/9/2023
Great course with a lot of practical application! I was also able to pass the databricks certified developer for apache spark 3.0 upon finishing this course. Can highly recommend to anyone aiming for the certification.
By Dron Adhikari on 7/8/2022
Great Course, the material is great and very greatly delivered, the entire work from the concepts to finally implementing them in a real world use case is great
By Edén Sorolla on 3/25/2022
El curso es muy interesante y contiene muchos ejemplos prácticos. El único punto débil es la gestión de versiones porque PySpark ha evolucionado muy rápido en los últimos años y eso hace que viejos comandos no funcionen en versiones nuevas o viceversa.
By Parry Anand on 8/13/2021
This is one of the best courses I have come across for Spark on Udemy. I have bought courses by Jose Portilla, Frank Kane, etc. This instructor goes slowly and explains every single line of code and I appreciated that. I read some comments by other course takers that he goes too slow and is begineer level. Well, may be that is what some people need, like me. If you are an intermediate level user, this may be basic for you, but for someone like me who has never used Spark before this was perfect!
By Allan Angulo on 7/7/2021
Excelente, el instructor explica de manera clara y tiene buenos contenidos, Apache Spark, pyspark, SQL , Databricks, así como conceptos base de dichas tecnologías / herramientas.
By Fedir Baronenko on 6/18/2021
This course will definitely give you a strong introduction to PySpark, so you can start performing the most popular operations with dataframes yourself. Thank you. My main issue - I wasn’t able to install PySpark both on Windows and Mac from course given instructions. I followed the course by using Google Colab. I believe this problem should be addressed for future learners.
By Lalit Ramchandra Nagpal on 5/12/2021
Good pace and explanation, I am able to quickly cover this using this tutorial. Loved the way you take us through all the possibilities with RDDs, DataFrames and Spark SQL. Pretty good - to the point and appropriately paced!
By Anitha Ramaiah on 4/27/2021
This course is really awesome. First time getting introduced to the spark and tutor is really great in explaining things. He kept the course so simple any person without prior knowledge can understand easily. I recommend this course to all.
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 92 / 100






