ほんとの出会い系ブログ

今まで出会った本をご紹介します。人気の作品や良書と呼ばれる本が多いと思いますので、出会いのきっかけになれば幸いです。

Hadoop徹底入門 第2版

Hadoop徹底入門 第2版 オープンソース分散処理環境の構築

Hadoop徹底入門 第2版 オープンソース分散処理環境の構築

ビッグデータと呼ばれる膨大なデータを処理するためのシステム構築にはHadoopが導入されてきています。Hadoopとはテラバイトやペタバイトクラスの膨大なデータを数十~数千台のサーバを使用して並列分散処理するためのソフトウェアです。Javaで開発されており、サーバを追加することによってスケールアウト可能です。本書は、Hadoopの導入方法から対応するアプリケーションの開発方法、運用、周辺技術まで幅広く解説します。

本書は4部構成となっています。

  • 第1部 Hadoopの基礎
    Hadoopの概要やインストール方法、サンプルアプリケーションの実行までを説明します。Hadoopには分散処理向けのHDFSというファイルシステムがあり、それをMapReduceフレームワークに沿ったアプリケーションが利用します。第1部ではMapReduceアプリケーションの例としてアクセスログ集計や検索エンジンインデックスの作成などが紹介されており、Hadoopでできることがイメージしやすいと思います。

  • 第2部 MapReduceアプリケーション開発
    HadoopJavaで作られていることもあり、MapReduceアプリケーションも基本的にはJavaで実装します。ただし、Java以外のプログラミング言語で実装する方法も提供されており、第2部ではどちらの実装方法も説明します。また、Apache PigやApache Hiveのような、処理を簡易記述できるプロダクトについても説明します。

  • 第3部 Hadoopクラスタの構築と運用
    Hadoopはサーバを追加することでスケールアウトできることが特徴です。第3部ではサーバの構成管理と、モニタリングやメンテナンスのような運用ノウハウについて説明します。

  • 第4部 Hadoopを活用するための技術
    第4部ではHadoopのチューニング方法やHDFSの上に構築される分散型データベースHBase、Hadoopでログを処理するためにFluentdでログを収集する方法などを説明します。

Hadoopは、そのサーバ構成やMapReduceアプリケーションの開発など、運用するまでにいくつものハードルがあります。また、周辺のプロダクトも多く、開発も活発です。本書は、初めてHadoopを導入する際にそのようなハードを下げてくれる一冊といえるでしょう。

honto.hatenablog.jp