Book Image

Apache Hive Cookbook

Book Image

Apache Hive Cookbook

Overview of this book

Hive was developed by Facebook and later open sourced in Apache community. Hive provides SQL like interface to run queries on Big Data frameworks. Hive provides SQL like syntax also called as HiveQL that includes all SQL capabilities like analytical functions which are the need of the hour in today’s Big Data world. This book provides you easy installation steps with different types of metastores supported by Hive. This book has simple and easy to learn recipes for configuring Hive clients and services. You would also learn different Hive optimizations including Partitions and Bucketing. The book also covers the source code explanation of latest Hive version. Hive Query Language is being used by other frameworks including spark. Towards the end you will cover integration of Hive with these frameworks.
Table of Contents (19 chapters)
Apache Hive Cookbook
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Preface
Index

File formats


In most of our examples, we have used files in plain text format, but Hive provides a set of file formats that provides optimization at the storage or processing level, or both in some cases. Different types of file format supported by Hive are as follows:

  • TEXTFILE

  • SEQUENCEFILE

  • RCFILE

  • ORC

  • PARQUET

  • AVRO

Each of these formats have a specified structure to store data on the disk. You can also define your own file format and get the data stored in that format by using the INPUTFORMAT class specification provided by Hadoop/Hive.

How to do it…

In all file formats other than text, the table only accepts data in that particular format, such as Row Columnar or Optimized Row Columnar (RC or ORC). If the source data is in that format, it could be easily loaded to the Hive table using the LOAD command. But if the source data is in some other format, say TEXT stored in another table in Hive, then the data could be inserted using the INSERT INTO command as follows:

INSERT INTO sales_orc select * from...