Apache Spark and Scala


$ 314 - (Rs 20,975)

Important information

  • Course
  • Online
  • When:

The Edureka Apache Spark & Scala course will enable learners to understand how Spark enables in-memory data processing and runs much faster than Hadoop MapReduce. Learners learn about RDDs, different APIs which Spark offers such as Spark Streaming, MLlib, SparkSQL, GraphX. This Edureka course is an integral part of a developer's learning path.

Important information

Where and when

Starts Location

What you'll learn on the course


Course programme

1. Introduction to Scala for Apache Spark

Learning Objectives - In this module, you will understand the basics of Scala that are required for programming Spark applications. You can learn about the basic constructs of Scala such as variable types, control structures, collections, and more.

Topics – What is Scala? Why Scala for Spark? Scala in other frameworks, introduction to Scala REPL, basic Scala operations, Variable Types in Scala, Control Structures in Scala, Foreach loop, Functions, Procedures, Collections in Scala- Array, ArrayBuffer, Map, Tuples, Lists, and more.

2. OOPS and Functional Programming in Scala

Learning Objectives - In this module, you will learn about object oriented programming and functional programming techniques in Scala.

Topics – Class in Scala, Getters and Setters, Custom Getters and Setters, Properties with only Getters, Auxiliary Constructor, Primary Constructor, Singletons, Companion Objects, Extending a Class, Overriding Methods, Traits as Interfaces, Layered Traits, Functional Programming, Higher Order Functions, Anonymous Functions, and more.

3. Introduction to Big Data and Apache Spark

Learning Objectives - In this module, you will understand what is big data, challenges associated with it and the different frameworks available. The module also includes a first-hand introduction to Spark.

Topics - Introduction to big data, challenges with big data, Batch Vs. Real Time big data analytics, Batch Analytics - Hadoop Ecosystem Overview, Real-time Analytics Options, Streaming Data - Spark, In-memory data - Spark, What is Spark?, Spark Ecosystem, modes of Spark, Spark installation demo, overview of Spark on a cluster, Spark Standalone cluster, Spark Web UI.

4. Spark Common Operations

Learning Objectives - In this module, you will learn how to invoke Spark Shell and use it for various common operations.

Topics - Invoking Spark Shell, creating the Spark Context, loading a file in Shell, performing basic Operations on files in Spark Shell, Overview of SBT, building a Spark project with SBT, running Spark project with SBT, local mode, Spark mode, caching overview, Distributed Persistence.

5. Playing with RDDs

Learning Objectives - In this module, you will learn one of the fundamental building blocks of Spark - RDDs and related manipulations for implementing business logics.

Topics - RDDs, transformations in RDD, actions in RDD, loading data in RDD, saving data through RDD, Key-Value Pair RDD, MapReduce and Pair RDD Operations, Spark and Hadoop Integration-HDFS, Spark and Hadoop Integration-Yarn, Handling Sequence Files, Partitioner.

6. Spark Streaming and MLlib

Learning Objectives – In this module, you will learn about the major APIs that Spark offers. You will get an opportunity to work on Spark streaming which makes it easy to build scalable fault-tolerant streaming applications, MLlib which is Spark’s machine learning library.

Topics – Spark Streaming Architecture, first Spark Streaming Program, transformations in Spark Streaming, fault tolerance in Spark Streaming, checkpointing, parallelism level, machine learning with Spark, data types, algorithms – statistics, classification and regression, clustering, collaborative filtering.

7. GraphX, SparkSQL and Performance Tuning in Spark

Learning Objectives - In this module, you will learn about Spark SQL that is used to process structured data with SQL queries, graph analysis with Spark, GraphX for graphs and graph-parallel computation. You will also0 get a chance to learn the various ways to optimize performance in Spark.

Topics - Analyze Hive and Spark SQL architecture, SQLContext in Spark SQL, working with DataFrames, implementing an example for Spark SQL, integrating hive and Spark SQL, support for JSON and Parquet File Formats, implement data visualization in Spark, loading of data, Hive queries through Spark, testing tips in Scala, performance tuning tips in Spark, shared variables: Broadcast Variables, Shared Variables: Accumulators.

8. A complete project on Apache Spark

Learning Objectives - In this module, you will get an opportunity to work on a live Spark project where you can implement the learnings from previous modules hands-on, and solve a real-time use case.

Problem Statement:Design a system to replay the real time replay of transactions in HDFS using Spark.

Technologies Used:

1. Spark Streaming

2. Kafka (for messaging)

3. HDFS (for storage)

4. Core Spark API (for aggregation)

Compare this course with other similar courses
See all