日本IBMは2010年4月9日、データ分析基盤技術である「ストリーム・コンピューティング」に関する技術発表会を開催した。膨大な情報をリアルタイムに相関分析することで、事象間の関連性を明らかにするという技術だ。
「風が吹けば桶屋が儲かる」。直接的には因果関係を見いだせない複数の事象が、実は関連性を持っているというケースは少なくない。各事象に関連する膨大かつ多様な情報をリアルタイムに分析すれば、直接的には見えなかった関連性が見つかるかもしれないー。これを実現する基盤技術としてIBMが注力するのが、ストリーム・コンピューティングだ。
ストリーム・コンピューティングとは、膨大なデータをリアルタイムに分析・可視化する計算技術。たとえば、ハリケーンが発生した際の株価への影響をリアルタイムで分析できる。証券取引所の株価情報や企業が開示する財務情報に加え、ハリケーンの進路予測などの気象情報をリアルタイムで取得し、それぞれを相関分析することで実現する。
IBMは、ストリーム・コンピューティングを利用したシステムを容易に開発するため、新たなプログラム言語「SPADE(=Stream Processing Application Declarative Engine)」を独自開発した。SQLやPrologなどの宣言型プログラミング言語の1種である。
SPADEは、データ処理の流れに沿って処理命令やプロパティを設定するだけで、ストリーム・コンピューティングを実現するアプリケーションを開発できることを特徴とする。データの収集やソート、平均値の算出といった12種類の「オペレータ」と呼ぶ機能部品を、データの処理の流れに沿って記述する。それにない機能は、C/C++などで作成した外部ライブラリを呼び出すことで実現する。
SPADEコンパイラには、クラスタ構成など、並列コンピューティング環境でのアプリケーション稼働を支援する機能を盛り込んだ。コンパイラにシステム環境のトポロジー情報を読み込ませ、環境にあったリソース配分機能を持つアプリケーションを自動生成する。「開発者は実行環境のことを意識せずにクラスタ環境を利用できる」(日本IBM東京基礎研究所の小野寺 民也シニア・テクニカル・スタッフ・メンバー)。
こうした成果は、既に製品として結実している。同社が2010年3月26日に提供開始した「IBM InfoSphere Streams V1.2.0」がそれだ。これは、SPADEのコンパイラを含むEclipseベースの統合開発実行環境とデータ分析用ツールキットをセットにしたもの。同社が以前「IBM System S」として発表していたものをリブランドした。ライセンス料金は、900万6000円(税別)から。