Get in Touch

Course Outline

  1. Scala Primer

    • A rapid 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 a dataset – Part 1
    • Inspecting RDDs
    • Labs: Exploring the Spark shell
  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 the Spark API / RDD API
    • Submitting the first program to Spark
    • Debugging and logging
    • Configuration properties
    • Labs: Programming in the 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 Introduction (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 at least one programming language: Java, Scala, or Python (laboratories are conducted in Scala and Python).
Basic understanding of the Linux development environment, including command-line navigation and file editing using VI or nano.

 21 Hours

Number of participants


Price per participant

Testimonials (6)

Upcoming Courses

Related Categories