Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Apache Spark for Java Developers
Rating: 4.3 out of 5(3,813 ratings)
24,383 students

Apache Spark for Java Developers

Get processing Big Data using RDDs, DataFrames, SparkSQL and Machine Learning - and real time streaming with Kafka!
Last updated 2/2021
English

What you'll learn

  • Use functional style Java to define complex data processing jobs
  • Learn the differences between the RDD and DataFrame APIs
  • Use an SQL style syntax to produce reports against Big Data sets
  • Use Machine Learning Algorithms with Big Data and SparkML
  • Connect Spark to Apache Kafka to process Streams of Big Data
  • See how Structured Streaming can be used to build pipelines with Kafka

Course content

46 sections143 lectures21h 43m total length
  • Welcome3:21

    Discover Apache Spark for Java developers, from core RDDs and Spark’s programming models to Spark SQL and DataFrames, streaming with DStreams and structured streaming, and Kafka integration.

  • Downloading the Code0:11
  • Module 1 - Introduction5:12

    Spark enables in-memory processing, richer operations, and an execution plan that runs tasks in parallel, outperforming Hadoop MapReduce.

  • Spark Architecture and RDDs10:43

    Explore Spark architecture, the driver and worker nodes, partitions and tasks, and how the execution plan (dag) drives parallel processing of RDDs across clusters using HDFS or S3.

Requirements

  • Java 8 is required for the course. Spark does not currently support Java9+, and you need Java 8 for the functional Lambda syntax
  • Previous knowledge of Java is assumed, but anything above the basics is explained
  • Some previous SQL will be useful for part of the course, but if you've never used it before this will be a good first experience

Description

Get started with the amazing Apache Spark parallel computing framework - this course is designed especially for Java Developers.

If you're new to Data Science and want to find out about how massive datasets are processed in parallel, then the Java API for spark is a great way to get started, fast.

All of the fundamentals you need to understand the main operations you can perform in Spark Core, SparkSQL and DataFrames are covered in detail, with easy to follow examples. You'll be able to follow along with all of the examples, and run them on your own local development computer.

Included with the course is a module covering SparkML, an exciting addition to Spark that allows you to apply Machine Learning models to your Big Data! No mathematical experience is necessary!

And finally, there's a full 3 hour module covering Spark Streaming, where you will get hands-on experience of integrating Spark with Apache Kafka to handle real-time big data streams. We use both the DStream and the Structured Streaming APIs.


Optionally, if you have an AWS account, you'll see how to deploy your work to a live EMR (Elastic Map Reduce) hardware cluster. If you're not familiar with AWS you can skip this video, but it's still worthwhile to watch rather than following along with the coding.

You'll be going deep into the internals of Spark and you'll find out how it optimizes your execution plans. We'll be comparing the performance of RDDs vs SparkSQL, and you'll learn about the major performance pitfalls which could save a lot of money for live projects.

Throughout the course, you'll be getting some great practice with Java Lambdas - a great way to learn functional-style Java if you're new to it.



Who this course is for:

  • Anyone who already knows Java and would like to explore Apache Spark
  • Anyone new to Data Science who want a fast way to get started, without learning Python, Scala or R!