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

Working with Apache Avro


Avro is created with a vision to provide a language-independent serialization system. Avro allows us to process and share data with an array of languages like C, C++, C#, Java, Python, Perl, PHP, and Ruby.

The schema of Avro in JSON and are encoded in binary format. A datafile of Avro essentially contains metadata where the schema is stored. The scalability is backed into the Avro system, as the datafile supports compression and can be split based on need. The serialized data is in a compact binary format that doesn't require proxy objects or code generation. Instead of using generated proxy libraries and strong typing, Avro relies on the schemas that are sent, along with the serialized data.

Including schemas with the Avro messages allows any application to deserialize the data. All the major primitive data types are supported. Complex data types such as records, enums, arrays, and maps are also supported. It's optional to generate code in Avro; the data can be written...