Book Image

HBase High Performance Cookbook

By : Ruchir Choudhry
Book Image

HBase High Performance Cookbook

By: Ruchir Choudhry

Overview of this book

Apache HBase is a non-relational NoSQL database management system that runs on top of HDFS. It is an open source, disturbed, versioned, column-oriented store and is written in Java to provide random real-time access to big Data. We’ll start off by ensuring you have a solid understanding the basics of HBase, followed by giving you a thorough explanation of architecting a HBase cluster as per our project specifications. Next, we will explore the scalable structure of tables and we will be able to communicate with the HBase client. After this, we’ll show you the intricacies of MapReduce and the art of performance tuning with HBase. Following this, we’ll explain the concepts pertaining to scaling with HBase. Finally, you will get an understanding of how to integrate HBase with other tools such as ElasticSearch. By the end of this book, you will have learned enough to exploit HBase for boost system performance.
Table of Contents (19 chapters)
HBase High Performance Cookbook
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface
7
Large-Scale MapReduce
Index

Changing the configuration of components


In this section, we will discuss the configuration changes that can help us improve the overall performance of HBase.

Getting ready…

Let's start with hbase-site.xml:

hbase.hregion.max.filesize:

The first step is to think in advance how to split the regions, which can be done using this parameter (hbase.hregion.max.filesize). In this scenario, the size of the one of the store in the region is constantly monitored by the HBase internal process. Once the internal process detects that the size is greater than what was specified by this parameter, it splits the region. The default value is 10 GB.

hbase.regionserver.handler.count:

This is primarily used to govern the incoming request to the user tables. This allocates the listener threads, which intercept the call to the user tables. In case of very high volume cluster, it's important to increase it. The default is 10.

Note

A proper estimation needs to be done to fine-tune this setting based on the usage patterns...