2012/10/02

Programming Hiveを購入した。


Programming Hive、出ましたね。Hiveのドキュメントはapacheプロジェクトのページで閲覧できるものの、まだドラフトのドキュメントと混ざっていたりして見づらいので、こうしてまとめられて出版されることは好ましいことです。

Programming Hive - O'Reilly Media http://shop.oreilly.com/product/0636920023555.do

早速購入し、今日の午前中に読んでいました。目次は以下のとおりです。

Chapter 1 Introduction
Chapter 2 Getting Started
Chapter 3 Data Types and File Formats
Chapter 4 HiveQL: Data Definition
Chapter 5 HiveQL: Data Manipulation
Chapter 6 HiveQL: Queries
Chapter 7 HiveQL: Views
Chapter 8 HiveQL: Indexes
Chapter 9 Schema Design
Chapter 10 Tuning
Chapter 11 Other File Formats and Compression
Chapter 12 Developing
Chapter 13 Functions
Chapter 14 Streaming
Chapter 15 Customizing Hive File and Record Formats
Chapter 16 Hive Thrift Service
Chapter 17 Storage Handlers and NoSQL
Chapter 18 Security
Chapter 19 Locking
Chapter 20 Hive Integration with Oozie
Chapter 21 Hive and Amazon Web Services (AWS)
Chapter 22 HCatalog
Chapter 23 Case Studies

1~8章あたりは基本的にリファレンス的なものです。

それ以降は比較的実践的な内容が続きます。9章では比較的実践的にパーティショニングを使った事例などが出てきます。13,14章ではUDF, UDFA, SerDeの実装についてや、Mapper/Reducerの実装について説明されています。12章でHiveの拡張に関する開発環境の整え方について書いてあるのはなかなか親切だなぁと感じました。16章ではThriftとの連携について、17章では各種ストレージの利用について言及されています。ストレージハンドラ実装の際の参考にもなるかもしれません。

また21章ではAWS上での利用についても触れられていますが、ここでは比較的導入的な記事に留まっていました。23章のケーススタディーは面白いです。たまにreportされているNASAでの利用事例についても解説されています。

個人的にはHiveを拡張する際の実装に大いに参考になる一冊になりそうです。特に10,13,15,17章あたりはすぐに実践に活かせそうです。8章で今後広まるであろうIndexについて触れられているのも良かったですが、内容はまだ薄いといった感じです。(とはいえ、HiveのJIRAを追っていない限りは得られない情報も多いので、そういう意味ではよいまとめだと思います。)またHiveを俯瞰するという点でも簡潔にまとめられていて好印象でした。ただHiveというプロダクトの性質上、万人に必要な本ではないということも踏まえて、バランスのとれた本だと思います。