AsakusaフレームワークをWindowsにインストールして、WordCountを作ってみた(笑)
AsakusaFWはCDH3(Cloudera's Distribution for Apache Hadoop version 3)を使っており、CDH3はLinuxしか対応していないので当然AsakusaFWもLinuxが前提なのだが、Windowsマシンしか持ってないんだからしょーがないじゃん!という訳で、Windowsへインストールしてみた。
(Windowsへのインストール(試行錯誤)は1週間くらいかけて、先週末には概ね出来ていたが、WordCountの作り方を色々試したりインストール手順を確立しようとしたりしている間にまた1週間経ってしまった^^;)
(最初はインストール手順のドキュメントとmarblejenkaさんのexample-wordcountとAPI(Javadoc)くらいしか見てなかったので苦戦したが、いつの間にか説明資料が充実していた事に後から気付いた(爆))
Eclipse上でコーディング・コンパイルするところまでは、Linuxへのインストール手順をWindows上で実行するだけでほぼ出来た。(AsakusaFWとJava・Mavenすげー!)
WindowsのEclipseでもAsakusaFW特有のコンパイルエラーメッセージがちゃんと出たし、コンパイル時に関連ソースの自動生成も行われたのはちょっと感動的(笑)
ただ、実行するとなるとさすがにそんなに簡単には行かず。
AsakusaFWがシェルをキックしている部分をごにょごにょし、HadoopもCDH3じゃないのでごにょごにょし、単体テストは無理矢理通るようにした。(Cygwinすげー!)
ただしAsakusaFWの基本的前提であるMySQLは今回は使っていないので、MySQLを使うにはさらにシェルをいじらないといけない。
まぁしかし、どうせWindowsは正式サポートじゃないし、Asakusa DSLをどういう風に使ってコーディングしていくのかを知るには、これで充分。
という訳で、自分でコーディングしてみて、ようやくAsakusaFWの使い方が分かった(遅)
“DSL”らしいのはDMDL(モデルの記述言語)くらいで、後は普通にアノテーションを使ったJavaプログラミングという感じ。
Operatorクラスの作成では、やはり演算子(アノテーション)にどんな種類があり、どうやって使うのか知るのが肝。自分のような頭では、ドキュメントを見るより試す方が理解しやすいので、試せる環境はやはり必要だw
ジョブフロー・バッチの単体テストが面白い。Excelファイルで入出力データの枠(シート)まで用意されるので、そこにデータを書き込んでいけば、テスト実行時に読み込んで検証してくれる。
(この手のデータ作りは、件数が多かったり複数ファイルの整合性を取る必要があったりすると大変なんだけどね^^; でもデータイメージがあれば、他の人との齟齬を減らせる効果もある)
ここまで用意されれば普通はこれを使うだろうから、開発手順を守らせるという意味でもとても有効そう。さすがだなぁ。
※コメント投稿者のブログIDはブログ作成者のみに通知されます