ニュース

富士通研究所、ビッグデータのタイムリーな利用を促進する高速処理技術を開発

 株式会社富士通研究所は1日、ビッグデータのタイムリーな利活用を実現するために、新たな高速処理技術を開発したと発表した。

 この技術は、サーバーの高性能化だけでは効率よく行えない、大量データのリアルタイム処理を実現することを目的に開発されたもの。サーバー上で動作する「データ分析ソフトウェア」と、データの格納処理を行う「データ管理ソフトウェア」を密接に連携させ、データ分析側からの処理要求頻度に応じて、一度に処理するデータ量を変化させることで、システム全体の高速処理性能を5~10倍程度にまで引き上げられるという。

 これにより、分析要求のアクセスが急増し、サーバーへの負荷が高まった際にも、新たな投資を行うことなく、すばやい分析を実行することが可能になる。

ECサイトのレコメンドなどに適用可能

富士通研究所 クラウドコンピューティング研究センター 主任研究員の村田美穂氏

 富士通研究所 クラウドコンピューティング研究センター 主任研究員の村田美穂氏は、「ビッグデータの活用が注目されるなか、100万人のデータを100万個の要求処理に対応するといったような、テラスケールの要素数が活用されはじめているし、より深い分析のために処理が複雑化するといった課題がある。また、分析したデータをビジネスにすぐに反映させたいという即応性も求められている。このように、大量と即応性の両立が重要になっており、今回の技術はそれを解決する手段のひとつになる」とする。

 例えば、大手ECサイトでは、販売が集中するクリスマス商戦において、1秒間に数10件から100件以上もの販売実績があり、さらに内部では1件ごとに50~100倍のデータアクセスが発生。その結果をレコメンドとして表示するといった使い方が行われている。

 従来では、データを分析するための下処理を夜間バッチ処理などで行っていたが、分析結果を導き出すのに数時間程度を要するのが一般的だった。しかし、日中の変化を踏まえた最新の分析結果を常に反映したい、といったニーズが増えたため、さまざまなメッセージを準リアルタイムに分析するための技術が必要とされていた。

 こうした場合には、次々に到着する大量のメッセージに含まれるデータ間の関係性をたどる処理が必要になるが、分析結果や分析途中の中間データがメモリに収まらないほど膨大になる場合がある。

 同社は昨年、サーバー間のデータを再配置することで最適化を図り、分析時のI/Oアクセス回数を削減するといった技術を開発してきた経緯があるが、今回の技術はこれとは別に、データ分析ソフトウェアとデータ管理ソフトウェアの密連携によって、I/Oアクセス回数を減らして、スループットを向上させるという新たな技術となる。

データをまとめて読み出すサイズを動的に変更可能

2つの技術を組み合わせて実現している

 今回、開発した技術は、「データのまとめ読み出し+追記」と「まとめて読み書きするサイズの動的変更」という、2つの技術が肝になっている。

 分析時、スループットを高めるためには、ディスクへのアクセス回数をなるべく減らす必要があるため、必要なデータよりも多めに読み出しを行い、利用側で選別して処理を行う仕組みを採用した。データを読み出すときに、データ分析ソフトウェアから指定されたデータだけでなく、ディスクの物理レイアウト上の近くにあるほかのデータもまとめて読み出し、データ分析ソフトウェアが、このなかから必要なものを選んで使用する仕組みにより、アクセス数を大幅に減らすことができる。

 「1万個程度のアクセス管理においては、500個程度として一度にまとめて読み込むことで、1回あたり20個程度の要求に対応できる」という。

 既存のデータ管理ソフトウェアでも、まとめ読みができる技術が採用されているものがあるが、数千個以上の要求があった場合でも、順番に要求を処理していくために、処理されないうちに一度読み込んだデータがキャッシュから追い出されてしまう、といった可能性がある。だが今回の技術では、一度まとめて取得したデータに対応する要求がないかを探し出し、それが存在すれば優先して要求を処理するため、まとめ読みの効果が大きいというメリットがある。

 また、一度読み出したデータを書き戻す際には、不要になったデータをデータ管理ソフトウェアにわたす時に、元の場所に戻すのではなく、受けとったデータをまとまりとして追記することで、ディスク物理レイアウト上のできる限り近くに配置することが可能になった。これによっても、I/Oアクセス回数を減らすことができるという。

 さらに今回、まとめて読み込むサイズを負荷に合わせて自動的に変更できるようになった。適切なまとめ読みができるように、データアクセス要求回数の増減などの状況を判断して、まとめて読み込むサイズを自動的に決める。読み込むサイズは、4KB~64MBの範囲で柔軟に変更することができる。

 「実証実験は、500GBのハードディスクと1GBのメモリを利用した4台のサーバーで行った。SDDやキャッシュメモリの大きさによって、まとめ読みする最適なサイズは変化することになるだろう」としている。

まとめて読み書きすることで、シーケンシャルアクセスを徹底し、I/O性能を極力落とさないようにする

 富士通研究所では、今後、実データなどを活用することで、実用化に向けた研究活動を継続的に行う予定であり、2014年には実用化を目指すという。

 Symfowareなどの同社ミドルウェア製品への実装のほか、技術的には、他社製データベースなどへの実装も可能だという。

 ECサイトでの活用のほか、気象情報をはじめとする各種センサー情報や、携帯電話や自動車のGPS情報などのリアルタイム分析などにも活用できる技術と位置づけている。

 「データが到着した時点で、分析側の要求が多い環境で効果が発揮できると考えている」(村田氏)。

2014年の実用化を目指して今後の開発を進めるという

(大河原 克行)