VMware が Spring フレームワークと Apache Hadoop プラットフォームを統合した Spring Hadoop を提供すると発表した。このプロジェクトでは MapReduceや Hive,Pig,, Cascading ジョブなど,さまざまなサービスとユーティリティを設定,生成,あるいは実行するための便利なメカニズムを,Spring コンテナを通じて実現する。さらに Groovy や JRuby,Jython,Rhino など JVM スクリプティング言語による HDFS データアクセスのサポート,HBase 用の宣言的コンフィギュレーションのサポート,FS Shell や DistCp といった Hadoop Tools の宣言的あるいはプログラム的サポートなども提供する。
さらに興味深いと思われるのは,このツールが Spring Integration や Spring Batch,あるいは従来型リレーショナルデータベースなど複数ソースから取得したデータに対して,解析ツールとして Hadoop を使用するための便利な手段を Spring ベースのアプリケーションに提供することだ。"例えば Hadoop ジョブを Spring Batch 環境内のタスクレットにすることができるので,起動を制御したり,ジョブ完了時にトリガを発行することが可能になります。" と,SpringSource CTO の Adrian Colyer 氏は InfoQ に語っている。
あるいは Spring Integration で特定のディレクトリにファイルが到着するのを監視して,トリガによって Hadoop ジョブを初期化するようなことも可能です。実際にこれを Spring の世界に組み込み,他のすべてのコンポーネントを使って,Hadoop のさまざまなデータ処理機能を標準的なエンタープライズツールキットに貼り付けることもできるのです。
このプロジェクトも,あるいはより汎用性のある Spring Data イニシアティブも,NoSQL とビッグデータがともにエンタープライズアプリケーションにおいて重要性を高めていることを反映している。Colyer 氏が次のように説明する。
10年にもなるかという長い時間の後に,エンタープライズアプリケーションの観点からデータを "どうやってリレーショナルデータベースに転送しようか" という状況になった時,そのソリューションは極めて明確なものでした。それによってエンタープライズデータは,それまでとはまったく違った様相を見せ始めるのです。多様なデータストアやアプローチの全容を見渡したとき,エンタープライズデータのストーリーで非常に重要かつ拡大を続ける部分がビッグデータとバッチデータ処理であることが,いよいよ明確になります。
それゆえ,新たに発表された Hadoop プロジェクトの広義の目標は,SQL あるいは NoSQL ストアの異なるスタイル – リレーショナルデータベース,グラフデータベース,ドキュメントデータベース,キー/バリューストアなど – それぞれに対してファーストクラスのサポートを実現することであり,その中でも人気の高い製品に対して明示的なサポートを提供することである。現時点では JPA や MongoDB,Redis,Neo4J などのサポートが用意されていて,さらに Cassandra も予定に挙げられている。Colyer 氏はこのリストについて,ある意味で SpringSource が自社ユーザの中において,それらの企業をフロントランナーと認識していることの反映である,と示唆した。ただし NoSQL データストアの採用については,いまだ多くの大企業で初期段階にあることにも注意が必要だろう。
VMware は本日のカリフォルニア州サンタクララの O’Reilly Strata Conference において,Spring Hadoop プロジェクトの紹介セッションを開催する予定だ。