Hadoop MapReduce デザインパターン

―MapReduceによる大規模テキストデータ処理

[cover photo]
TOPICS
Database , Java
発行年月日
PRINT LENGTH
210
ISBN
978-4-87311-512-2
原書
Data-Intensive Text Processing with MapReduce
FORMAT
PDF
Ebook
3,080円
Ebookを購入する

大量のデータにアクセスすることによって、商業、科学、コンピューティングといった様々な分野において新たな機会が生み出されています。MapReduceは、巨大なデータセットに対する分散処理を実行するプログラミングモデルであり、安価なサーバーからなるクラスタ上で大規模データの処理を行うためのフレームワークです。
本書は、自然言語処理、情報抽出、機械学習などに共通する、テキスト処理のアルゴリズムに重点を置きながら、MapReduceのアルゴリズム設計について解説します。またMapReduceのデザインパターンの概念を説明し、様々な領域に共通して現れる問題に対して、再利用可能かつ汎用的な対処方法を紹介します。読者が「MapReduce流に考える」手助けをするだけでなく、MapReduceというプログラミングモデルの限界までを網羅する本書は、MapReduceをより深く理解し、Hadoopを使いこなしたいエンジニアに必携の一冊です。

目次

目次

監修者まえがき
はじめに

1章 イントロダクション
    1.1 クラウドでのコンピューティング
    1.2 着想
    1.3 違いはどこに?
    1.4 本書は何でないか

2章 MapReduceの基礎
    2.1 関数型プログラミングの起源
    2.2 mapperとreducer
    2.3 実行フレームワーク
    2.4 partitionerとcombiner
    2.5 分散ファイルシステム
    2.6 Hadoopクラスタのアーキテクチャ
    2.7 まとめ

3章 MapReduceアルゴリズムの設計
    3.1 ローカル集約
        3.1.1 combinerとin-mapper combining
        3.1.2 ローカル集約を使った場合のアルゴリズムの正当性
    3.2 pairsとstripes
    3.3 相対頻度の計算
    3.4 セカンダリソート
    3.5 リレーショナルな結合
        3.5.1 reduce側結合
        3.5.2 map側結合
        3.5.3 memory-backed結合
    3.6 まとめ

4章 テキスト抽出のための転置インデックスの生成
    4.1 Webのクローリング
    4.2 転置インデックス
    4.3 転置インデックス:基準となる実装
    4.4 転置インデックスの生成:改良版の実装
    4.5 インデックスの圧縮
        4.5.1 バイトアライメントとワードアライメントのコード
        4.5.2 ビットアライメントコード
        4.5.3 レコードの圧縮
    4.6 抽出について
    4.7 まとめと参考文献

5章 グラフのアルゴリズム
    5.1 グラフの表現
    5.2 並列幅優先検索
    5.3 PageRank
    5.4 グラフ処理に関する問題
    5.5 まとめと参考文献

6章 テキスト処理のためのEMアルゴリズム
    6.1 期待値最大化法
        6.1.1 最尤法
        6.1.2 潜在変数を持つビー玉のゲーム
        6.1.3 潜在変数を持つ最尤法
        6.1.4 期待値の最大化
        6.1.5 EMの例
    6.2 隠れマルコフモデル
        6.2.1 隠れマルコフモデルに関する3つの疑問
        6.2.2 forwardアルゴリズム
        6.2.3 ビタビ(Viterbi)アルゴリズム
        6.2.4 HMMのためのパラメータ推定
        6.2.5 forward-backwardトレーニング
    6.3 MapReduceでのEM
        6.3.1 MapReduceでのHMMのトレーニング
    6.4 ケーススタディ:統計的機械翻訳のための単語のアライメント
        6.4.1 統計的フレーズベース翻訳
        6.4.2 少し脱線:MapReduceを使った言語モデルの作成
        6.4.3 単語アライメント
        6.4.4 実験
    6.5 EMに類するアルゴリズム
        6.5.1 勾配法による最適化と、対数線型モデル
    6.6 まとめと参考文献

7章 未来に向って
    7.1 MapReduceの限界
    7.2 MapReduceに代わるコンピューティングパラダイム
    7.3 MapReduceと、その先にあるもの

参考文献
索引