Last week, we saw how to build a Simple Spark Application in Play using Scala. Now in this blog we will see how to add Spark’s Twitter Streaming feature in a Play Scala application.
Spark Streaming is a powerful tool of Spark. It runs on top of Spark. It gives the ability to process and analyze real-time streaming data (in batches) along with fault-tolerant characteristics of Spark.
To add Spark’s Twitter Streaming feature in a Play Scala application follow these steps:
1). Add following dependencies in build.sbt file
As you can see we have upgraded our application to Spark 1.0.0. The dependency – “org.apache.spark” %% “spark-streaming-twitter” % “1.0.0” is specific to Twitter Streaming. If you want to use Flume, Kafka, etc, then import respective dependency given here.
2). Create a file app/utils/TwitterPopularTags.scala & add following code to it
This function will get the most Popular Tags from Twitter of matching “filters” from Streaming Tweets using Spark Streaming. Also, Spark Streaming needs its own Port to stream in data, so, provide a separate port to it other than 9000 or the port on which Play is running.
3). Add Twitter App credentials in conf/application.conf like this
4). At last add following code in app/controllers/Application.conf
5). Now the application is ready to be run on localhost:9000.
To download a Demo Application click here.