Hadooper

masahiko-h くんのHadoop で MapReduce を書くという記事に触発されて、今さらながら Hadoop をセットアップしてみる。

Hadoop というのは前も書いたことがあるGoogle で使われている MapReduceオープンソース的実装であり、自然言語処理ではよく頻度をカウントしたりなんだりとしているので、こういうのが使えないかと思った次第。

セットアップは kzk くんの Hadoop、hBaseで構築する大規模分散データ処理システム が参考になった。いや、実際はHadoopのインストールとサンプルプログラムの実行および複数マシンへHadoopをインストールするだが……

Yahoo! Research では実際に Hadoop ばりばり使っているそうで、Hadoop Summitなんてのも今年の3月に開かれていたそうで、たとえばこちらのスライドでは

  1. フレーズベースの機械翻訳Hadoop 使う方法
  2. (グラフベースの)照応解析で Hadoop 使う方法

の2つについて書かれている(いや、こちらの人たちは Y! の人ではないのだが……)。

Hadoop 使えばなんでもできるというわけではないが、特定の課題には Hadoop (MapReduce) 的なモデルが割とうまくいく(効率的である)ことがあるので、小道具の一つとしては使えるようになっておいた方がいいかな、と思う。(特にデータ・計算リソースが大量にある場合、使わないのはもったいないし)