Get in Touch

Course Outline

  1. Scala Primer

    • A quick introduction to Scala
    • Labs: Getting to know Scala
  2. Spark Basics

    • Background and history
    • Spark and Hadoop
    • Spark concepts and architecture
    • Spark ecosystem (Core, Spark SQL, MLlib, Streaming)
    • Labs: Installing and running Spark
  3. First Look at Spark

    • Running Spark in local mode
    • Spark web UI
    • Spark shell
    • Analyzing dataset – part 1
    • Inspecting RDDs
    • Labs: Spark shell exploration
  4. RDDs

    • RDD concepts
    • Partitions
    • RDD Operations and transformations
    • RDD types
    • Key-Value pair RDDs
    • MapReduce on RDD
    • Caching and persistence
    • Labs: Creating and inspecting RDDs; Caching RDDs
  5. Spark API Programming

    • Introduction to Spark API and RDD API
    • Submitting the first program to Spark
    • Debugging and logging
    • Configuration properties
    • Labs: Programming in Spark API, Submitting jobs
  6. Spark SQL

    • SQL support in Spark
    • DataFrames
    • Defining tables and importing datasets
    • Querying DataFrames using SQL
    • Storage formats: JSON and Parquet
    • Labs: Creating and querying DataFrames; evaluating data formats
  7. MLlib

    • MLlib introduction
    • MLlib algorithms
    • Labs: Writing MLlib applications
  8. GraphX

    • GraphX library overview
    • GraphX APIs
    • Labs: Processing graph data using Spark
  9. Spark Streaming

    • Streaming overview
    • Evaluating Streaming platforms
    • Streaming operations
    • Sliding window operations
    • Labs: Writing Spark Streaming applications
  10. Spark and Hadoop

    • Hadoop Intro (HDFS and YARN)
    • Hadoop and Spark architecture
    • Running Spark on Hadoop YARN
    • Processing HDFS files using Spark
  11. Spark Performance and Tuning

    • Broadcast variables
    • Accumulators
    • Memory management and caching
  12. Spark Operations

    • Deploying Spark in production
    • Sample deployment templates
    • Configurations
    • Monitoring
    • Troubleshooting

Requirements

PRE-REQUISITES

Familiarity with Java, Scala, or Python (with labs provided in Scala and Python)
Basic understanding of the Linux development environment, including command-line navigation and file editing using VI or nano.

 21 Hours

Testimonials (6)

Upcoming Courses

Related Categories