Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Master Apache Spark using Spark SQL and PySpark 3
Rating: 4.1 out of 5(2,640 ratings)
19,873 students

Master Apache Spark using Spark SQL and PySpark 3

Master Apache Spark using Spark SQL as well as PySpark with Python3 with complementary lab access
Last updated 5/2024
English
English [Auto],Spanish [Auto],

What you'll learn

  • Setup the Single Node Hadoop and Spark using Docker locally or on AWS Cloud9
  • Review ITVersity Labs (exclusively for ITVersity Lab Customers)
  • All the HDFS Commands that are relevant to validate files and folders in HDFS.
  • Quick recap of Python which is relevant to learn Spark
  • Ability to use Spark SQL to solve the problems using SQL style syntax.
  • Pyspark Dataframe APIs to solve the problems using Dataframe style APIs.
  • Relevance of Spark Metastore to convert Dataframs into Temporary Views so that one can process data in Dataframes using Spark SQL.
  • Apache Spark Application Development Life Cycle
  • Apache Spark Application Execution Life Cycle and Spark UI
  • Setup SSH Proxy to access Spark Application logs
  • Deployment Modes of Spark Applications (Cluster and Client)
  • Passing Application Properties Files and External Dependencies while running Spark Applications

Course content

25 sections346 lectures32h 11m total length
  • Introduction to Spark SQL and PySpark 3 using Python 31:35

    Master Spark SQL and PySpark 3 using Python 3, and learn how to set up the environment for working with Spark in big data and data engineering.

  • Curriculum for Spark SQL and Pyspark 3 using Python 32:02

    Explore Spark SQL and PySpark with Python 3, use SQL style syntax and dataframe APIs, and learn to convert dataframes to temporary views, deploy and troubleshoot Spark applications.

  • Purchasing the Spark SQL and PySpark using Python 3 Course2:09

    Learn how to purchase and access the Spark SQL and PySpark course on Udemy, sign up or log in, and navigate the course interface with a 30-day money-back guarantee.

  • Introduction to Udemy Course Landing Page2:00

    Explore the Udemy course landing page and learn to navigate the course content. Access video playback, use Q&A for support, and understand interface controls for a smoother learning journey.

  • Overview of Udemy Course or Video Player7:16

    Learn to navigate the Udemy video player, adjust playback speed from 0.5x to 2x, set video quality, enable captions and transcripts, and use notes and navigation to move between lectures.

  • Adding Notes to Course Lectures5:03

    Learn to use notes to capture key points and code, save with timestamps, and review notes across lectures, sorted by most recent or oldest.

  • Using Course Sidebar to move between lectures2:54

    Navigate between lectures using the right course content sidebar, expanding and collapsing sections to view 13 lectures totaling 122 minutes, and revise topics with sidebar controls.

  • Overview of Support to ITVersity courses on Udemy4:04

    Learn to seek timely support for ITVersity courses on Udemy using the Q&A feature, posting specific questions with details, and sharing code or links to accelerate troubleshooting.

  • Best Practices to get ITVersity Support using Udemy9:54

    Master Udemy q&a to get ITVersity support by selecting the current lecture, reviewing existing questions, and submitting well-structured inquiries with commands and screenshots.

  • Resources for Spark SQL and Pyspark 3 using Python 33:57

    Choose your spark environment, work multimode cluster, your PC if capable, or cloud nine and lithium arc, and practice with single-node Hadoop and Spark or multi-node clusters with lab access.

  • Material for Spark SQL and PySpark 3 using Python 32:30

    Establish a Spark SQL and PySpark 3 training environment, using either your employer's cluster or a self-setup, and access the sparc-sql and spark using Python 3 GitHub repository with notebooks.

  • Become Part of ITVersity Data Engineering Community2:04

    Join a free data engineering community to access tips, news, jobs, labs, and coupons for I.T. first courses; engage in quizzes, live sessions, and corporate updates to boost your skills.

  • Rate and Leave Feedback - Spark SQL and PySpark 3 using Python 33:51

    Rate the course with a five-star rating, provide detailed feedback through guided questions, and save your review; you can also share via Facebook, Twitter, or email.

  • Udemy for Business Customers - Important Information for about labs for practice2:20

    Check your multimode cluster and access to lab two for business customers, and consider purchasing lab access or securing bulk discounts through your employer to accelerate learning Spark.

Requirements

  • Basic programming skills using any programming language
  • Self support lab (Instructions provided) or ITVersity lab at additional cost for appropriate environment.
  • Minimum memory required based on the environment you are using with 64 bit operating system
  • 4 GB RAM with access to proper clusters or 16 GB RAM to setup environment using Docker

Description

DISCLAIMER

This course requires you to download the following softwares
Docker
Visual Studio Code
If you are a Udemy Business user, please check with your employer before downloading software


As part of this course, you will learn all the key skills to build Data Engineering Pipelines using Spark SQL and Spark Data Frame APIs using Python as a Programming language. This course used to be a CCA 175 Spark and Hadoop Developer course for the preparation for the Certification Exam. As of 10/31/2021, the exam is sunset and we have renamed it to Apache Spark 2 and Apache Spark 3 using Python 3 as it covers industry-relevant topics beyond the scope of certification.

About Data Engineering

Data Engineering is nothing but processing the data depending upon our downstream needs. We need to build different pipelines such as Batch Pipelines, Streaming Pipelines, etc as part of Data Engineering. All roles related to Data Processing are consolidated under Data Engineering. Conventionally, they are known as ETL Development, Data Warehouse Development, etc. Apache Spark is evolved as a leading technology to take care of Data Engineering at scale.

I have prepared this course for anyone who would like to transition into a Data Engineer role using Pyspark (Python + Spark). I myself am a proven Data Engineering Solution Architect with proven experience in designing solutions using Apache Spark.

Let us go through the details about what you will be learning in this course. Keep in mind that the course is created with a lot of hands-on tasks which will give you enough practice using the right tools. Also, there are tons of tasks and exercises to evaluate yourself. We will provide details about Resources or Environments to learn Spark SQL and PySpark 3 using Python 3 as well as Reference Material on GitHub to practice Spark SQL and PySpark 3 using Python 3. Keep in mind that you can either use the cluster at your workplace or set up the environment using provided instructions or use ITVersity Lab to take this course.

Setup of Single Node Big Data Cluster

Many of you would like to transition to Big Data from Conventional Technologies such as Mainframes, Oracle PL/SQL, etc and you might not have access to Big Data Clusters. It is very important for you set up the environment in the right manner. Don't worry if you do not have the cluster handy, we will guide you through support via Udemy Q&A.

  • Setup Ubuntu-based AWS Cloud9 Instance with the right configuration

  • Ensure Docker is setup

  • Setup Jupyter Lab and other key components

  • Setup and Validate Hadoop, Hive, YARN, and Spark

Are you feeling a bit overwhelmed about setting up the environment? Don't worry!!! We will provide complementary lab access for up to 2 months. Here are the details.

  • Training using an interactive environment. You will get 2 weeks of lab access, to begin with. If you like the environment, and acknowledge it by providing a 5* rating and feedback, the lab access will be extended to additional 6 weeks (2 months). Feel free to send an email to support@itversity.com to get complementary lab access. Also, if your employer provides a multi-node environment, we will help you set up the material for the practice as part of the live session. On top of Q&A Support, we also provide required support via live sessions.

A quick recap of Python

This course requires a decent knowledge of Python. To make sure you understand Spark from a Data Engineering perspective, we added a module to quickly warm up with Python. If you are not familiar with Python, then we suggest you go through our other course Data Engineering Essentials - Python, SQL, and Spark.

Master required Hadoop Skills to build Data Engineering Applications

As part of this section, you will primarily focus on HDFS commands so that we can copy files into HDFS. The data copied into HDFS will be used as part of building data engineering pipelines using Spark and Hadoop with Python as the Programming Language.

  • Overview of HDFS Commands

  • Copy Files into HDFS using the put or copyFromLocal command using appropriate HDFS Commands

  • Review whether the files are copied properly or not to HDFS using HDFS Commands.

  • Get the size of the files using HDFS commands such as du, df, etc.

  • Some fundamental concepts related to HDFS such as block size, replication factor, etc.

Data Engineering using Spark SQL

Let us, deep-dive into Spark SQL to understand how it can be used to build Data Engineering Pipelines. Spark with SQL will provide us the ability to leverage distributed computing capabilities of Spark coupled with easy-to-use developer-friendly SQL-style syntax.

  • Getting Started with Spark SQL

  • Basic Transformations using Spark SQL

  • Managing Tables - Basic DDL and DML in Spark SQL

  • Managing Tables - DML and Create Partitioned Tables using Spark SQL

  • Overview of Spark SQL Functions to manipulate strings, dates, null values, etc

  • Windowing Functions using Spark SQL for ranking, advanced aggregations, etc.

Data Engineering using Spark Data Frame APIs

Spark Data Frame APIs are an alternative way of building Data Engineering applications at scale leveraging distributed computing capabilities of Apache Spark. Data Engineers from application development backgrounds might prefer Data Frame APIs over Spark SQL to build Data Engineering applications.

  • Data Processing Overview using Spark or Pyspark Data Frame APIs.

  • Projecting or Selecting data from Spark Data Frames, renaming columns, providing aliases, dropping columns from Data Frames, etc using Pyspark Data Frame APIs.

  • Processing Column Data using Spark or Pyspark Data Frame APIs - You will be learning functions to manipulate strings, dates, null values, etc.

  • Basic Transformations on Spark Data Frames using Pyspark Data Frame APIs such as Filtering, Aggregations, and Sorting using functions such as filter/where, groupBy with agg, sort or orderBy, etc.

  • Joining Data Sets on Spark Data Frames using Pyspark Data Frame APIs such as join. You will learn inner joins, outer joins, etc using the right examples.

  • Windowing Functions on Spark Data Frames using Pyspark Data Frame APIs to perform advanced Aggregations, Ranking, and Analytic Functions

  • Spark Metastore Databases and Tables and integration between Spark SQL and Data Frame APIs

Apache Spark Application Development and Deployment Life Cycle

Once you go through the content related to Spark using a Jupyter-based environment, we will also walk you through the details about how the Spark applications are typically developed using Python, deployed as well as reviewed.

  • Setup Python Virtual Environment and Project for Spark Application Development using Pycharm

  • Understand complete Spark Application Development Lifecycle using Pycharm and Python

  • Build zip file for the Spark Application, copy to the environment where it is supposed to run and run.

  • Understand how to review the Spark Application Execution Life Cycle.

All the demos are given on our state-of-the-art Big Data cluster. You can avail of one-month complimentary lab access by reaching out to support@itversity.com with a Udemy receipt.

Who this course is for:

  • Any IT aspirant/professional willing to learn Data Engineering using Apache Spark
  • Python Developers who want to learn Spark to add the key skill to be a Data Engineer
  • Scala based Data Engineers who would like to learn Spark using Python as Programming Language