米Facebook、Apache Hadoop向けスケジューリングツール「Corona」をオープンソースに

 米Facebookは11月9日、Apache Hadoopのジョブスケジューリングツール「Corona」を公開した。HadoopのMapReduceでのクラスタの効率性や拡張性などにおける制限を克服するとし、「MapReduceの次期版」と称している。

 Facebookでは一日に約500テラバイトの情報が生成され、1000人がかりでこれを分析しているという。これまでHadoopでの分析ジョブにはMapReduceフレームワークを利用してきたが、MapReduceのジョブスケジュールの問題として、クラスタの効率性が低く、拡張性が制限的である点があった。また、小規模なジョブの遅延、システム稼働中にソフトウェアアップグレードができないなどの問題も感じていたという。Coronaは、MapReduceの制限を解除するためにFacebookが社内開発したHadoop用ジョブスケジュールフレームワークとなる。

 MapReduceが1つのジョブトラッカーを持つのに対し、Coronaは複数のジョブトラッカーを持つ。ノードを追跡するクラスタリソース管理を導入、これが各ジョブトラッカーとやりとりする。クラスタマネージャがジョブトラッカーからリソース要求を受け取った際にリソース権限をジョブトラッカーに知らせるプッシュ機能も持つ。これらにより、クラスタの利用率を改善、テストではMapReduceでは70%だったクラスタの利用率が、Coronaでは95%以上に改善されたという。拡張性、低遅延、リソース管理などの改善に加え、システムを停止せずにソフトウェアをアップグレード点も長所として挙げられている。

 CoronaはApache Software License 2.0で公開されている。

CoronaのGitリポジトリ
https://github.com/facebook/hadoop-20/tree/master/src/contrib/corona

米Facebook
http://www.facebook.com/