2010年4月28日水曜日

4/28 ゼミ

ゼミがやっと終わった。わーい。

Hadoopを頑張ろう。
某電電公社の関連企業が有用なデータを残してくれていたので捗りそう。
http://preferred.jp/hadoop.pdf

また、簡単にHadoopをEclipseで動かすためのプラグインもあるらしい。
どちらかというとMapreduceアプリケーションの開発用らしいが使えるかも。

2010年4月23日金曜日

4/23 Hadoopのdebug level変更

daemon起動時の引数を変更することで変えられる。
-Dhadoop.root.logger=INFO

-Dhadoop.root.logger=DEBUG

これでOK。

2010年4月19日月曜日

4/19 定期更新

ブログに書くべきことは色々あるのだが、書いている時間がないので困っている。
原因の70%はゼミの資料作成が大変なこと、20%は黄色い象にやられていること、
残り10%は家でネットにつなげないので自宅で更新できないことが挙げられる。

とりあえず今日は生存報告のみ。

2010年4月11日日曜日

4/11 GNU GLOBAL

http://www.gnu.org/software/global/
SourceコードをHTMLで読みやすい形に変換してくれるユーティリティ。
Methodごとに自動でリンクを貼ったりしてくれるらしい。
GSIC Sさんのおすすめ。

対応する言語はC/C++,Java,YACC,PHP4らしい。
Windowsでのインストールは適当なフォルダに解凍してbinにパスを通すだけ。

ソースが入ったディレクトリでgtags -vを実行。
その後htags -saFとすればHTMLが生成される。
gtags実行時に色々やるとemacsやvi用のファイルも生成できるらしい。

2010年4月8日木曜日

4/8 Hadoopが動いた

強力な助っ人にきていただいたお陰で無事Hadoopが動きました。
今回学んだ検証の手順として、
・最小構成からインクリメンタルに確かめる
・一度一度ログを見て動作をチェックする
ということでした。
単純なことのように見えて、常にこの二つを守るのは難しいと思い知らされました。

Hadoop固有の事柄としては、
・まずDFSの動作を確認してから他のデーモンを動かす
・logs以下に各ノードのデーモンごとのログがあるので面倒くさがらずにちゃんと見る
の二点です。

GSICのSさん、本当にありがとうございました。


実際にTeraGenとTeraSortを動かしてみたのでその結果も載せます。
sb01 - sb08 8node (Opteron 1.6GHz x2 Mem 4GB)
$ bin/hadoop jar hadoop-0.20.2-examples.jar teragen -Dmapred.map.tasks=400 80000 input
$ bin/hadoop jar hadoop-0.20.2-examples.jar terasort input output

TeraGenのオプションは一つ目が分割数(タスク数?)、二つ目がサイズ、三つ目が格納されるDFSのディレクトリ。
TeraSortのは見たとおり。

TeraSortの実行中の各計算ノードのCPU使用率は0%が1秒ほど続いた後100%が2秒ほど、を繰り返す模様。
-d 0.5のtopコマンドの目視なので怪しいかもしれない。
実行時間全体はtimeコマンドによると、
real 3m1.430s
user 0m3.284s
sys 0m0.353s
となっている。

これを4ノードに減らして実行してみると、timeコマンドは、
real 5m26.371s
user 0m3.671s
sys 0m0.383s

二倍近く高速化されていることが確認できた。

ノード数などを変更する際には、/tmp/hadoop-`whoami`*を消す必要があるっぽい。
dfsを再フォーマットする必要もありそう。

2010年4月6日火曜日

4/6 Hadoopの分散実行

シングルノードでの実行は成功したが、マルチノードではうまくいかない。
HDFSがちゃんと見れていないようだ。
昨日のTelnetでアクセスしてもsb01:50070やsb01:50030が繋がらない現象の影響と思われる。
FireWallなどは全て止めてあるので、別の原因があると思うのだが思い当たらない。

ちなみに分散実行のための設定ファイルはだいたいわかった。
conf/core-site.xmlにポートなどを記述し、conf/mastersとconf/slaveにノード名を書けばよい。
conf/mastersにはセカンダリの名前を書き、マスターノードは実行するノードである点には注意。

2010年4月3日土曜日

4/3 Hadoop

Hadoopを実行するにはHDFSという分散ファイルシステムが必要なようだが、
これをどのノードで実行するか迷っている。
対称計算環境を保持するには別ノードを用意するほうがいいが、電源的には微妙。

sbの8台が稼動。System Sも(きっと)実行可能。
Hadoop、Eucalyptusの実験環境となる予定。
ノードの故障やHDDのSMARTエラーなどに泣かされ、稼動までに三日もかかってしまった。

桜並木での飲酒が禁止なうえに六時以降の花見まで禁止されるらしい。
禁止するなら完全に禁止にしてしまえばいいものを、
一般人の入校規制は行われないし仮設トイレで準備されていて、完全に理解不能。
せめて入場料くらい取っていれば救いはあるものの、完全に金の無駄遣いだ。
学生や教員によるレジスタンス活動を強く希望する。