Book Image

Learning YARN

By : Akhil Arora, Shrey Mehrotra, Shreyank Gupta
Book Image

Learning YARN

By: Akhil Arora, Shrey Mehrotra, Shreyank Gupta

Overview of this book

Today enterprises generate huge volumes of data. In order to provide effective services and to make smarter and more intelligent decisions from these huge volumes of data, enterprises use big-data analytics. In recent years, Hadoop has been used for massive data storage and efficient distributed processing of data. The Yet Another Resource Negotiator (YARN) framework solves the design problems related to resource management faced by the Hadoop 1.x framework by providing a more scalable, efficient, flexible, and highly available resource management framework for distributed data processing. This book starts with an overview of the YARN features and explains how YARN provides a business solution for growing big data needs. You will learn to provision and manage single, as well as multi-node, Hadoop-YARN clusters in the easiest way. You will walk through the YARN administration, life cycle management, application execution, REST APIs, schedulers, security framework and so on. You will gain insights about the YARN components and features such as ResourceManager, NodeManager, ApplicationMaster, Container, Timeline Server, High Availability, Resource Localisation and so on. The book explains Hadoop-YARN commands and the configurations of components and explores topics such as High Availability, Resource Localization and Log aggregation. You will then be ready to develop your own ApplicationMaster and execute it over a Hadoop-YARN cluster. Towards the end of the book, you will learn about the security architecture and integration of YARN with big data technologies like Spark and Storm. This book promises conceptual as well as practical knowledge of resource management using YARN.
Table of Contents (20 chapters)
Learning YARN
Credits
About the Authors
Acknowledgments
About the Reviewers
www.PacktPub.com
Preface
Index

An introduction to the YARN API


YARN is a Java framework that is packaged with the Hadoop bundle. YARN provides resource management, as well as easy integration of data processing or accessing algorithms for data stored in Hadoop HDFS. Apache Storm, Giraph, and HAMA are few examples of the data processing algorithms that use YARN for resource management. A detailed integration of such technologies is covered in Chapter 12, Real-time Data Analytics Using YARN.

The Hadoop-YARN API is defined in the org.apache.hadoop.yarn.api package. While writing your own YARN applications, you will use some of the classes from the YARN API. Before moving ahead, it is important to list the classes used and understand their role. This section will cover a few important classes defined in the org.apache.hadoop.yarn.api package.

YARNConfiguration

The YARNConfiguration class is defined in the org.apache.hadoop.yarn.conf package and it extends the org.apache.hadoop.conf.Configuration class. Similar to the Configuration...