富士通研究所は11月19日、蓄積されたデータ・流れるデータも高速に処理するビッグデータ向けストリーム集計技術を開発したと発表した。
ビッグデータ処理では、大量のデータを高速に処理することが求められる。データを集計する際、集計期間が長くなるにつれ、扱うデータ量が増大し計算時間が延びるため、演算結果を頻繁に更新することが難しくなる。このように、集計期間を長くすることと、更新頻度を高めることの両立が困難だった。
今回、富士通研究所では、時間によって変化する多様なデータに対して、データの読み直しや演算のやり直しを一切行うことなく演算結果を高速に返す、演算スナップショット管理技術を開発した。これにより、集計期間が長く更新頻度が高い場合にも、従来に比べ100倍高速なデータ処理が可能になる。
今回、2つの技術「高速パターン照合技術」「演算スナップショット管理技術」の組み合わせにより、長期間かつ更新頻度の高いデータに対する高速なストリーム集計技術を開発した。
高速パターン照合技術は、入力されるストリームデータの中から、必要な項目を無駄なく直接取り出す技術。通常、まず入力データの構造解析を行い、メモリ上に入力データの全項目を一旦蓄積。その後、集計に必要な項目を取り出すための項目抽出処理を行いデータを取り出す。このように構造解析、項目抽出の2段階の処理が必要となる。
これに対し新しい技術では、パターン照合により取り出すべき項目の出現位置を特定し、不要な項目を読み飛ばし、必要な項目のみを直接取り出すため高速処理が可能となる。また、パターン照合は柔軟であり、定型データ(CSVデータなど)に加え、繰り返しや階層構造を含む非定型データ(XMLデータなど)にも対応する。
演算スナップショット管理技術は、時間によって変化する多様なデータに対し、データの読み直しや演算のやり直しを一切行うことなく、演算結果を高速に返す技術。入力されるストリームデータに対し、通常は時系列順にメモリ上にデータを保持するが、あらかじめ決められた手順に従いソートなど必要な演算を行いながらデータを保持。
集計結果をすぐに取り出せるように常に演算された状態(演算スナップショット)で管理されるため、合計値や平均値だけでなく、最小・最大値や中間値であっても全データを用いて集計をやり直す必要がない。そのため集計期間(ウィンドウ長)に依存しない高速なレスポンスを実現する。
集計結果を得るためのレスポンス時間は、集計期間(ウィンドウ長)に50万件のデータがある場合、代表的なオープンソースの複合イベント処理(CEP:Complex Event Processing)エンジンに比べ、約100倍以上高速で、かつウィンドウ長によらずレスポンス時間が一定であることが効果として確認できた。
従来技術とのレスポンス時間比較 |
同社では本技術により、大量バッチ処理や、ストリームデータ処理などの既存業務の強化が見込まれ、さらに、気象分野で、これまで困難であった集中豪雨の詳細なエリア提示が可能になり、今後の予報に役立てるなど、長期間データのリアルタイム処理が不可欠な新たな事業領域への展開を図ることが期待されるほか、既存のバッチ処理とストリーム処理への応用も期待され、売上データ集計のリアルタイム性を向上することで、生産・在庫管理などをさらに強化することが可能となるとしている。