Shoeisha Technology Media

EnterpriseZine(エンタープライズジン)

EnterpriseZine(エンタープライズジン)

テーマ別に探す

大量データや新社会インフラを支える注目の技術「ストリームデータ処理」とは?

  2011/03/28 00:00

次々と入力される大量のデータをリアルタイムに処理することで、いち早く変化の兆候を察知する。アルゴリズムトレードや新社会インフラなど、先進的な取り組みの基盤を支える技術としてストリームデータ処理、もしくはCEPと呼ばれる技術に注目が集まっています。今回は、10年近くにわたって研究開発を続ける日立製作所の製品担当チームを先生役として編集部に迎え、その技術的な概要をレクチャーしていただきました(協力:日立製作所)。

ストリームデータ処理技術とは?

編集部

ストリームデータ処理とはどのようなテクノロジーなのでしょうか? あらためて、その概要について教えてください。

先生

近年、テクノロジーの発達に伴って、社会全体のデータ量が著しく増加していることが様々な調査によって明らかになっています。増え続けるデータの中でも大きな割合を占めると見られているのが、センサーやRFIDが生み出す新しいタイプのデータです。

編集部

新しいタイプのデータ・・・ですか?

先生

はい。これまで情報システムが管理してきたデータの多くは、顧客プロファイルや販売履歴など、それぞれが固有の重要な情報でしたから、データベースなどを使って一つひとつのデータを保管する意味がありました。

 

しかし、センサーなどが生み出すデータは必ずしも保管を必要とする類のものではありません。例えば、何らかの異変を察知する目的でセンサーを利用するのであれば、値が正常であることさえ確認できれば、その後は捨ててしまっても構わない。

編集部

なるほど。何も起こらなかったというデータをいつまでもとっておく必要はありませんよね。判断した時点でデータはその必要性を失うということですね。

先生

むしろ、センサーが生み出す情報を逐一、データベースに保管して、日次バッチで処理しているようでは、情報の鮮度が下がって宝の持ち腐れになってしまいますし、ストレージがいくらあっても足りません。

 

そこで、データをストックとして捉える従来のアプローチに代わり、それらをフローのままでリアルタイムに処理、意志決定する基盤として注目を集めているのがストリームデータ処理と呼ばれる技術です。文脈によって「CEP(Complex Event Processing:複合イベント処理)」という用語で呼ばれることもありますが、今回はストリームデータ処理で統一します。

編集部

ところでストリームデータ処理って具体的にどのようなことをしてくれるものなのでしょうか?

先生

そうですね。では、まず簡単にその仕組みについてご紹介しておくことにしましょう。といっても、ストリームデータ処理の仕組みは非常にシンプルです。さまざまな発生源からデータがインプットされる度に、処理を担当するコンポーネント「ストリーム処理エンジン」は、あらかじめ設定された「分析シナリオ」というアルゴリズムに従ってデータを処理します。

編集部

分析シナリオ・・・。

先生

例えば、「『3回続けて値が上昇している』『現在の値がしきい値を超えている』という二つの条件を満たした場合にアラートをあげなさい」といった指令を記述しておくと、入力がある度に、エンジンは処理を繰り返し、データが条件を満たした場合にアラート通知を行ってくれるという訳です。

イベントを複合的に組み合わせて処理
イベントを複合的に組み合わせて処理
編集部

なるほど。CEP(複合イベント処理)という名称はここに由来するわけですね。株価が例として使われていますが、どのように取り込むのでしょうか?

先生

発生源からデータを取得するためのプログラムを作成することになります。この場合は、通信社や証券市場から送られるフィードや、WebサービスのAPIなどが考えられますね。これらの発生源からデータを取得し、所定の形式に変換した上で、エンジンに渡します。

 

プログラムで取得できるものならどんなものでも対象になり得ますから、インプットするデータはどんなものでも構いません。データベースのレコードはもちろん、他システムから送信されたフィード情報や携帯電話の位置情報、ICカードの利用履歴やサーバーの稼働情報なども対象にできます。プログラム作成の手間を省くために、製品によっては専用のアダプターを用意している場合もあります。

編集部

分析した結果のアウトプットはいかがでしょう?

先生

基本的に出力プログラムを介して行いますから、アウトプットについても制約はありません。ログファイルへの出力、統合運用管理ツールへのイベント通知、ダッシュボードへの表示、SOA基盤を介した他システムへの処理命令なども指定可能です。やはり、プログラミングの手間を省くために、処理結果を代表的なデータ形式に変換するアダプターを用意している製品もあります。

編集部

いくつか技術的な特徴があると聞いたのですが?

先生

そうですね。ストリームデータ処理をより理解していただくために、いくつか特徴的なポイントを紹介しましょう。

※この続きは、会員の方のみお読みいただけます(登録無料)。


※この続きは、会員の方のみお読みいただけます(登録無料)。


著者プロフィール

  • EnterpriseZine編集部(エンタープライズジン ヘンシュウブ)

    「EnterpriseZine」(エンタープライズジン)は、翔泳社が運営する企業のIT活用とビジネス成長を支援するITリーダー向け専門メディアです。データテクノロジー/情報セキュリティの最新動向を中心に、企業ITに関する多様な情報をお届けしています。

バックナンバー

連載:データ活用新時代

もっと読む

All contents copyright © 2007-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5