Over a million developers have joined DZone.

Streaming with Apache Spark 2.0

Let's learn how to do streaming in Apache Spark 2.0 — Scala with examples included.

· Big Data Zone

Learn how you can maximize big data in the cloud with Apache Hadoop. Download this eBook now. Brought to you in partnership with Hortonworks.

Hello geeks! We discussed Apache Spark 2.0 with Hive in an earlier blog. Now I am going to describe how can we use spark to stream the data. First, we need to understand this new Spark Streaming architecture  .

Spark 2.0 simplified the API for Streaming and lets us to access stream data in form of DataFrame and DataSet. Hence with new architecture, we can process our streamed data according to our business logic with DataFrame. This is the simple concept behind above architecture.

So here we have two approach to use Spark Streaming programmetically:

  • by using predefined receiver , and
  • by creating Custom-Receiver

First, we will stream our data using predefined receiver.

Add the following dependencies:

  • “org.apache.spark” %% “spark-core” % “2.0.0”,
  • “org.apache.spark” %% “spark-sql” % “2.0.0”,
  • “org.apache.spark” %% “spark-hive” % “2.0.0”,
  • “org.apache.spark” %% “spark-streaming” % “2.0.0”

Now as we know entry point of Spark in current version is SparkSession . So ,

val sparkSession = SparkSession.builder.master("local").appName("demo").getOrCreate()

Now you need stream receiver  :

val dataFrame : DataFrame = sparkSession.readStream.load("your/path")

Now we get the data of stream here we can perform our any bussines logic with dataframe.


Find the demo code here.

Hortonworks DataFlow is an integrated platform that makes data ingestion fast, easy, and secure. Download the white paper now.  Brought to you in partnership with Hortonworks

spark ,scala ,java ,jvm ,big data ,spark streaming

Published at DZone with permission of Rahul Kumar, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}