Book Image

Apache Oozie Essentials

By : Jagat Singh
Book Image

Apache Oozie Essentials

By: Jagat Singh

Overview of this book

As more and more organizations are discovering the use of big data analytics, interest in platforms that provide storage, computation, and analytic capabilities is booming exponentially. This calls for data management. Hadoop caters to this need. Oozie fulfils this necessity for a scheduler for a Hadoop job by acting as a cron to better analyze data. Apache Oozie Essentials starts off with the basics right from installing and configuring Oozie from source code on your Hadoop cluster to managing your complex clusters. You will learn how to create data ingestion and machine learning workflows. This book is sprinkled with the examples and exercises to help you take your big data learning to the next level. You will discover how to write workflows to run your MapReduce, Pig ,Hive, and Sqoop scripts and schedule them to run at a specific time or for a specific business requirement using a coordinator. This book has engaging real-life exercises and examples to get you in the thick of things. Lastly, you’ll get a grip of how to embed Spark jobs, which can be used to run your machine learning models on Hadoop. By the end of the book, you will have a good knowledge of Apache Oozie. You will be capable of using Oozie to handle large Hadoop workflows and even improve the availability of your Hadoop environment.
Table of Contents (16 chapters)
Apache Oozie Essentials
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Pig Coordinator job v2


We will improve our Coordinator using the concept of Datasets. The code for this section is available at BOOK_CODE_HOME/learn_oozie/ch05/rainfall/v2.

The goal of this section is very simple. We need to learn which dataset instance should be used for processing using the Coordinator dataset parameterization function. We will see them shortly.

The Coordinator for our problem statement is shown in the upcoming screenshot. We are using the Dataset by declaring the definition in line 5 of the screenshot. The corresponding Dataset is defined in the datasets.xml file, as shown in the following code:

<datasets>
  <dataset name="rainfall" frequency="${coord:months(1)}" initial-instance="2015-01-01T00:00Z" timezone="Australia/Sydney">
    <uri-template>${nameNode}/user/hue/learn_oozie/ch05/input/rainfall/${YEAR}/${MONTH}/
    </uri-template>
    <done-flag>_SUCCESS</done-flag>
  </dataset>
  <dataset name="max_rainfall" frequency="$...