Book Image

Big Data Analytics with Hadoop 3

By : Sridhar Alla
Book Image

Big Data Analytics with Hadoop 3

By: Sridhar Alla

Overview of this book

Apache Hadoop is the most popular platform for big data processing, and can be combined with a host of other big data tools to build powerful analytics solutions. Big Data Analytics with Hadoop 3 shows you how to do just that, by providing insights into the software as well as its benefits with the help of practical examples. Once you have taken a tour of Hadoop 3’s latest features, you will get an overview of HDFS, MapReduce, and YARN, and how they enable faster, more efficient big data processing. You will then move on to learning how to integrate Hadoop with the open source tools, such as Python and R, to analyze and visualize data and perform statistical computing on big data. As you get acquainted with all this, you will explore how to use Hadoop 3 with Apache Spark and Apache Flink for real-time data analytics and stream processing. In addition to this, you will understand how to use Hadoop to build analytics solutions on the cloud and an end-to-end pipeline to perform big data analysis using practical use cases. By the end of this book, you will be well-versed with the analytical capabilities of the Hadoop ecosystem. You will be able to build powerful solutions to perform big data analytics and get insight effortlessly.
Table of Contents (18 chapters)
Title Page
Copyright and Credits
Packt Upsell
Scientific Computing and Big Data Analysis with Python and Hadoop

Driver failure recovery

We can achieve driver failure recovery with the help of StreamingContext.getOrCreate(). As previously mentioned, this will either initialize a StreamingContext from a checkpoint that already exists, or create a new one. 

We will not implement a function called createStreamContext0, which creates a StreamingContext and sets up DStreams to interpret tweets and generate the top five most-used hashtags, using a window every 15 seconds. Instead of invoking createStreamContext() and then calling ssc.start(), we will invoke getOrCreate(), so that if a checkpoint exists, then the StreamingContext will be recreated from the data in the checkpoint Directory. If there is no such directory, or if the application is on its first run, then createStreamContext() will be invoked:

val ssc = StreamingContext.getOrCreate(checkpointDirectory,
createStreamContext _)

The following code shows how the function is defined, and how getOrCreate() can be invoked:

val checkpointDirectory = "checkpoints...