HadoopをMacOSX Java 1.6.x 上で動かしてみる.

Hadoopとは,javaで大規模データを使った分散アプリを作るのに便利なフレームワークです.

未踏ソフト2009年下期本体の藤川幸一さんの“MapReduce汎用化のためのDSL基盤・実効基盤の開発”で発表された
JRubyのhudoop PAPYRUSを使いたいからです.


藤川さん曰く,OSX上でhudoopの動作はしたことないらしく,
google先生で,Java 1.6.xでhudoopの動作について詳細記述されているのをみつけることが出来なかった.
と,いうことでメモします.


とりあえず,Hadoop

ダウンロード
hadoop-0.17だとJava 1.5.xでも使えるらしいのですが,
やっぱり最新版hadoop-0.20を使いたいので,Java 1.6.xの設定をする.

アプリケーション/ユーティリティ/Java Preferencesを起動して
Java SE 6の優先順位を一番上にあげておきます.



1.6.xのJAVA_HOMEにパスを通します.
bashの場合は,こんな感じ.
打ち込むか,.bashrcに以下の1文を追加します.


% export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home/


javaのバーションが1.6.xになったか確認してください.
% java -version



ついに,Hadoopダウンロード
以下のページから落としました.
http://ftp.kddilabs.jp/infosystems/apache/hadoop/core/hadoop-0.20.1/



% tar xzf hadoop-0.20.1.tar.gz
% cd hadoop-0.20.1

hadoop起動


% ./bin/hadoop


% mkdir input
% cp conf/*.xml input
% ./bin/hadoop jar hadoop-*-examples.jar grep input output 'dfs[a-z.]+'
% ls output/



% vim ./conf/hadoop-site.xml



fs.default.name
localhost:9000


mapred.job.tracker
localhost:9001


dfs.replication
1




% sudo ssh-keygen -t rsa -f /etc/ssh_host_rsa_key -C '' -N ''


% sudo ssh-keygen -t dsa -f /etc/ssh_host_dsa_key -C '' -N ''



% vim /etc/sshd_config
# HostKeys for protocol version 2
HostKey /etc/ssh_host_rsa_key
HostKey /etc/ssh_host_dsa_key



% sudo /usr/sbin/sshd


% ssh localhost


% bin/hadoop namenode -format


% ./bin/start-all.sh



NameNode http://localhost:50070/


JobTracker http://localhost:50030/



出力ファイル













.


.

.


.



.


参考:オルカンモブログ
http://orukanmo.blogspot.com/2008/11/hadoop-quick-start-on-mac.html


つづく...