Asakusa Framework Advent Calendar 2019の1日目です。
アドベントカレンダーの初日ということで、2019年時点のAsakusa Frameworkの紹介を書いておきたいと思います。
Asakusa Frameworkは、分散バッチアプリケーションを開発・実行する為のフレームワークです。
同一のソースをリコンパイルするだけで異なる実行基盤、すなわちHadoop(MapReduce), Spark, M3BP, Vanilla用のバイナリーを生成することが出来ます。
また、分散処理とは別に、ファイル同士を結合して処理するにはとても便利だと思います。
2019年に出た新バージョン0.10.3だけですかね^^;
バグフィックスの他は、Direct I/O JSON(jsonファイルの読み書き)が追加されました。
個人的な注目点は、AsakusaFWが依存しているHadoopのバージョンアップです。
HadoopがJava8までしか対応していないのでAsakusaFWもJava8でしか使えないのですが、Hadoop3.3.0でJava11対応するらしいので、これがリリースされたらAsakusaFWのJavaの対応バージョンも上がると思います。
が、現状ではHadoop2系が対象なので、Hadoop3系になって大丈夫なのかなぁという思いが無くも無いです^^;(少なくとも、現在AsakusaFWを運用しているシステムであれば、動いている環境はHadoop2系のはずなので、バージョンアップは簡単ではないでしょう)
また、Asakusa on Sparkの為にはApache SparkもHadoop3.3.0およびJava11に対応してくれないといけないので、簡単にはいかなさそうな気がします…。