デジタル人材の育成
加藤 和彦(筑波大学 大学院システム情報工学研究科 教授)
チーフクリエータ
藤川 幸一(株式会社シリウステクノロジーズ グループマネージャー)
コクリエータ
なし
最近、インターネットの発達に伴ってアプリケーションが処理する情報量はますます増加している。
Googleを始めとするインターネットサービス企業などは、多数のマシンを並列に接続して処理を行う分散フレームワーク環境を開発しており、そのシンプルさとスケーラビリティで注目を集めるのが"MapReduce"という分散処理の仕組みである。
これはそもそもGoogleの社内開発基盤であったが、近年オープンソースとして"Hadoop"という実装が登場しており、MapReduce環境を使用する敷居は下がってきた。
しかしそれでも以下の問題点により一般開発者・事業者の利用が難しいのが現状である。
そこで、本プロジェクトではプログラム記述の制約をあらかじめ内包している、RubyによるDSL(Domain Specific Language)基盤を開発し、開発領域(大規模データ処理、インデックス作成、金融工学計算、など)によってDSLを作成できるようにし、参照実装としていくつかのDSLを開発する。
また、MapReduce環境を利用するためのフレームワークとして、分散ビルド環境として有名なオープンソースツール "Hudson" を利用し、Hadoopを容易に管理できるようにする。
本プロジェクトの成果としては、実行基盤セットの公開、DSL基盤仕様・実装公開、DSL基盤を用いたDSL参照実装(3領域以上)の公開を目指し、それらを用いた実際のプログラムをフレームワーク上で動作させるところまでを目標とする。
また、各種コミュニティに働きかけ、世界的な普及活動を行う。
Googleによって提案されたMapReduce技術は、クラウドコンピューティングの基礎技術として大いに注目を集めているが、その利用の敷居は低いとは言えず、実際のプログラミングも簡単ではない。
本提案は、同技術をRuby等のスクリプト言語から容易に使えるようにするという提案で、MapReduce利用の敷居を下げ、クラウドコンピューティング普及を促進することが期待できる。そのアプローチも、提案者のこれまでのアクティビティに基づいたものであり、十分なfeasibilityを有すると判断できる。
グリーンITへの貢献としては、MapReduceに使用する計算機を動的に増減させることを可能とし、処理負荷に応じて使用する計算機数を調整したり、遊休計算機資源の活用に用いることが出来ると考えられる。