Hadoop本 第2章 MapReduce の疑問点や気になる点について記述してください。
※記入者、該当ページ・該当行は忘れずに書いて下さい

2章の位置付け

  • [記入者] terurou
  • [該当箇所] 2章全体
  • ざっくり流し読んだ感じでは、「簡単な解説だけして、インストールしてみて、とりあえず体験してみよう!」という感じ。Hello Worldにしては多少高度すぎるかもw
  • 細かい解説は5章〜8章で行われているようなので、Hadoop初学者はこの時点ではまだ深入りしないで良さそう。

米国気候データセンター(NCDC)公開データ

  • [記入者] terurou
  • [該当箇所] 15ページ(2.1 気象情報データセット)
  • 付録C(515ページ〜)に「NCDCのデータを使いたかったら http://www.hadoopbook.com/ の手順を見てね」と書いてあった。
  • しかし、http://www.hadoopbook.com/ には「Amazon EBSにフルデータセットを格納したpublic snapshot用意しておいたから、自分のEC2インスタンスからマウントしてね!!!」みたいなことしか書かれてない。
  • [記入者] You&I
  • 似たようなデータはこちらにありました。でも本に掲載されたデータはどこから持ってきたのか謎ですね。 ftp://ftp.ncdc.noaa.gov/pub/data/gsod/

日本でも気象庁あたりがデータを公開してないの?

  • [記入者] terurou
  • [該当箇所] 15ページ(2.1 気象情報データセット)
  • 調べてみたら、閲覧はできるみたいだけど、一括ダウンロードはできないみたい。データによってはテキストですらない場合もある。

何か簡単に使えるテストデータってないのかな?

  • [記入者] terurou
  • [該当箇所] 15ページ(2.1 気象情報データセット)
  • 学術研究目的であれば、http://labs.edge.jp/datasets/ が比較的簡単に使えそう。
  • Twitter Streaming-API を使えば1日ぐらいで結構な量のデータが集まったりしないかな?

ko_ketsu さんがTwitter Streaming APIでデータ集めてくれるツールを作ってくれました!

Java MapReduce API、Hadoopのバージョン

  • [記入者] terurou
  • [該当箇所] 20ページ〜28ページ(2.3.2 Java MapReduce)
  • 2010/06/06時点で、Hadoop Stable Versionが0.20.2に到達しているので、2.3.2のサンプルコードは「2.3.2.2 新しいJava MapReduce API」のコードにする必要がある?(まだ試してないです。。。
  • [補足:maeda_] 最新版のHadoopで古いAPIを使うとdeprecateの警告はでますが、一応コンパイルはできました。

MapReduce APIの種類

  • [記入者] terurou
  • [該当箇所] 20ページ〜41ページ
  • MapReduceのAPIは3つ用意されてるんですね(というか名前が付いてたんですね)
  • Java MapReduce API
    • Java用のAPI。
  • Hadoop Streaming
    • Java以外の言語でmap,reduce関数を書くためのAPI。Unixの標準入出力ストリームが扱える言語であれば何でも良い。
    • 主にRuby,PythonなどのLLでの利用を想定したAPI(だと思われる)。
  • Hadoop Pipes
    • C++用のAPI。tasktrackerとソケット通信を行う構成のため、(疑似)分散させないと利用できない。

Hadoop Streamingって、Windowsでも動くの?

  • [記入者] terurou
  • [該当箇所] 34ページ(2.5 Hadoopストリーミング)
  • 「Unix標準のストリームを・・・」みたいな書き方してるので、動くのか気になる。よっぽど動きそうな気はするけど。(まだ試してない

Hadoop Streamingの制約

  • [記入者] terurou
  • [該当箇所] 37ページ(2.5 Hadoopストリーミング)
  • Hadoop 0.21より前のリリースでは、combinerにJavaのクラスしか指定できない。(2010年6月時点の最新版は0.20.2なので、これが該当)

MapReduceの「プッシュ」スタイルと「プル」スタイル

  • [記入者] terurou
  • [該当箇所] 27ページ(2.3.2.2. 新しいJava MapReduce API)、35ページ(2.5.1 Rubyの注意事項)
  • 「プッシュ」スタイルはHadoopがmap関数に1行分のレコードを渡してくれるが、複数行に対しての処理ができない。
  • 「プル」スタイルは複数行に対しての処理が可能だが、map関数のレコードのフェッチを制御する必要がある。
  • Java MapReduce APIでは「プッシュ」「プル」のどちらも選択できる(Hadoop 0.20.0より)
  • Hadoop Streamingは「プル」スタイル
  • Hadoop Pipesは? サンプルコード見る限り、「プッシュ」スタイルでコードを書けるみたい。

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

どなたでも編集できます