Hadoop1.0.3 + Windows(Cygwin) 最初の罠

新しいフレームワークやツールなんかを色々使っていると、「チュートリアル通りにやろうとしたらエラーで進めない」なんてことが稀にあるわけですが、今回もまさにそれ。

http://hadoop.apache.org/common/docs/r1.0.3/single_node_setup.html を見ながら進めていたら、

 $ bin/hadoop jar hadoop-examples-*.jar grep input output 'dfs[a-z.]+

のところで、

$ bin/hadoop jar hadoop-examples-1.0.3.jar grep input output 'dfs[a-z.]+'
bin/hadoop: line 320: C:\Program: コマンドが見つかりません
12/07/16 10:36:09 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
12/07/16 10:36:09 ERROR security.UserGroupInformation: PriviledgedActionException as:furukawa cause:java.io.IOException: Failed to set permissions of path: \tmp\hadoop-furukawa\mapred\staging\furukawa1766195755\.staging to 0700

となって、はまった。
エラーメッセージ+ぐぐった情報から、JavaをC直下にインストールし直してみたり、hadoop dfs -chown (そんなコマンド使うんすか・・・)で権限を変更してみても、エラー内容が変わるだけで処理は失敗するばかり。
結局、正解はcygwin - Hadoop in Windows - Stack Overflowで、要するに「Cygwin上で動かすなら、ver.0.22.0まで遡らないとダメだよ」ということで、半信半疑で試したらその通りだったという・・・。えー。

一応動かせるようにはなったので、これから色々学んでいきたいと思います。>Hadoop