機能と技術からわかる!システム基盤の実力

第5回ぎれなく流れ来る大量データを処理する「ストリームデータ処理技術」②ストリームデータ処理基盤が開く新たな世界

前回説明したように、ストリームデータ処理技術とは、無限に到来する時刻順のデータ(ストリームデータ)をリアルタイムに処理するデータ処理方法です。このストリームデータ処理技術を採用したのが、日立のストリームデータ処理基盤「uCosminexus Stream Data Platform」です。

今回は、uCosminexus Stream Data Platformを適用したストリームデータ処理のモデルをいくつか紹介しましょう。

ITシステムの稼働監視

コスト削減や効率化が求められるITシステムでは、仮想化やクラウドの採用が加速しています。一方、システム構成の大規模化・複雑化によりITシステムの稼動状況が見えなくなってきており、障害検知・対策に時間を要してしまい保守効率の向上が課題となっています。

大規模化・複雑化したITシステムの保守効率を向上するためには、ITシステムが出力する膨大なログ情報を分析し、システム全体の稼動状況をモニタリングする必要があります。この分析にストリームデータ処理を適用します。ITシステムの稼働監視の例を図1に示します。

図1 ストリームデータ処理技術を適用したITシステムの稼働監視の例
図1 スストリームデータ処理技術を適用したITシステムの稼働監視の例

図1の場合、ストリームデータ処理によりシステム全体を可視化します。これにより、システムの稼動状況をリアルタイムにモニタリングできます。また、システム全体の稼働情報を傾向・パターン分析や相関分析によりシステムの障害予兆を検知し、事前に障害対策を実行することができます。このため、システム安定稼働を実現できます。

株式自動取引システム

株式取引の「アルゴリズムトレード」とは、株価や出来高などに応じて、コンピュータシステムが自動的に株式売買注文のタイミングや数量を決めて注文を行う取引です。アルゴリズムトレードを実現するためには、大量のデータをリアルタイムに分析して、売買注文をする必要があります。この分析にストリームデータ処理を適用します。証券会社や投資会社での株式自動取引システムの例を図2に示します。

図2 ストリームデータ処理技術を適用した株式自動取引システムの例
図2 ストリームデータ処理技術を適用した株式自動取引システムの例

図2の場合、ストリームデータ処理により株価のテクニカル指標やランキング情報から売買をリアルタイムに自動判定します。

コンプライアンスチェック

近年、企業のコンプライアンスが重要視されるようになり、リスク管理や不正取引監視が強化されています。しかし、役職等によってアクセスできる情報を制限するだけでは、他人のIDやパスワードを不正利用した「なりすまし」などは防止できません。

また、不正操作を検出するためには、一般的にユーザの操作に関する大量のログ情報をいったん収集/保管し、ログ情報を分析していました。しかし、この方法では不正操作をリアルタイムに検出することは困難です。

そこで、ストリームデータ処理技術を利用すると、リアルタイムにユーザの操作に関する大量のログ情報を高速に処理できるため、不正操作の検出も即座に行えます。ストリームデータ処理技術を利用して、不正な操作を検出する例を図3に示します。

図3 不正な操作の検出によるコンプライアンスチェック
図3 不正な操作の検出によるコンプライアンスチェック

このモデル例では、複数のシステムが出力したユーザ操作のログ情報をストリームデータとして取得しています。取得した情報を元に、シナリオに定義した異常行動パターンと照らし合わせて分析し、⁠なりすまし」などの不正操作がないかを判断します。ストリームデータ処理技術のメリットである大量データの高速処理により、大量のログ解析が容易になります。また、複数のログを統合して監視することもできます。

これにより、たとえばユーザAが東京でシステムにログインしたあと、30分以内にユーザAのIDを利用して大阪からログインがあった場合、不正なログインとして瞬時に検知することができます。

リアルタイム在庫管理・発注処理

販売業では、売上を向上するために販売戦略をタイムリーに立案・実行することが重要です。最新の売上状況に合ったリアルタイム性の高い販売戦略が求められます。

最新の売上状況を把握するために、POSデータを分析する方法があります。POSデータには「いつ」⁠どこで」⁠何が」⁠幾つ売れた」といった情報が格納されています。しかしPOSデータのデータ量は膨大なため、データの収集、分析には時間がかかります。収集した売上状況などを即座に把握し、タイムリーな販売戦略を立てるためには、大量データをリアルタイムに処理するストリームデータ処理技術が活用できます。

図4 POS データの分析・集計
図4 POS データの分析・集計

このモデル例では、店舗、または地区店舗群のPOS データをストリームデータとして取得しています。取得したデータは店舗別のPOSデータ集計・分析シナリオ、および地区店舗群別のPOSデータ収集・分析シナリオの2種類のシナリオに従って、売上情報、商品在庫情報などをリアルタイムに集計・分析します。これによって、⁠今」の販売状況に応じた販売戦略をタイムリーに立案、実行できるようになります。

ストリームデータ処理の結果を利用して売上状況を分析することで、たとえば、分析結果から適切な価格、販売状況に応じた商品の仕入れ数、販売場所などを検討し、状況に応じた販売戦略をタイムリーに立案、実行できるようになります。

また、店舗別、地区店舗群別といった複数の分析用のシナリオを定義することで、商品別や店舗の地域別などさまざまなデータを集計でき、多角的に分析できます。

交通状況モニタリング

渋滞情報や事故情報など、交通状況を知らせる情報にはリアルタイム性が求められます。リアルタイムに交通状況を把握する仕組みにはプローブ技術があります。プローブ技術とは、通行時間などを発信する計測装置を車両に載せ、車両位置情報をきめ細かくモニタリングする技術のことです。このとき収集する車両位置情報をプローブ情報といいます。プローブ情報を処理する際にストリームデータ処理技術を利用すると、よりリアルタイムに交通状況を把握できます。

図5 渋滞情報・事故情報の検出
図5 渋滞情報・事故情報の検出

このモデル例では、計測装置を搭載した車両から位置情報や速度情報をストリームデータとして取得しています。取得した情報を基に、車両の速さや車両密度などを随時測定・分析し、渋滞情報を検出します。

ここでストリームデータ処理技術を利用する最大のメリットは、リアルタイムな交通情報を利用者に提供できることです。 また、登録したシナリオを変更することで、処理に使うアルゴリズムを簡単に切り替えることができます。プローブ情報から渋滞情報や事故情報を検出するために、分析用のアプリケーションを使用する方法では、システムの拡張などがあると、アプリケーションの修正が必要となります。ストリームデータ処理技術を利用するとアプリケーションの修正が不要になる上、処理を変えたい場合にはシナリオを変更するだけで、その時々で必要とされる情報を検出できます。

まとめ-uCosminexus Stream Data Platformがもたらすもの

前回から2回に渡って紹介したストリームデータ処理技術採用の「uCosminexus Stream Data Platform」を利用することで、次の効果が期待できます。

① 「日」の世界から「秒」の世界へ
ストリームデータ処理技術では、差分計算やインメモリ技術(メモリ上でのデータを処理する技術)によってさらに高速な処理ができるようになります。これによって、ミリ秒単位でのデータ処理が実現します。
② 最新データに基づく集計、判断
最新の集計や傾向、ランキングなど、任意の時点から現在までのストリームデータを瞬時に集計・分析できます。
③ CQLを使ったシナリオで簡単に定義
処理内容はSQLを拡張したCQLで定義します。このため、集計・分析処理のための専用アプリケーションの開発は不要になり、処理内容を簡単に作成または変更できるようになります。

「uCosminexus Stream Data Platform」を採用することで、リアルタイムにデータ処理を行うシステム構築のための工数を大幅に削減でき、ニーズの変化に応じた処理手順の変更にも速やかに対応できるようになります。

なお日立では、教育または非営利目的の研究のために「uCosminexus Stream Data Platform」を貸し出す支援プログラムも用意しています。まだまだ応用範囲の広がりが期待されるデータストリーム処理技術の普及を後押しするプログラムです。

出典:Cosminexusホワイトペーパー「ストリームデータ処理技術を利用したソリューションのご紹介」
URL:http://www.hitachi.co.jp/Prod/comp/soft1/cosminexus/whitepaper/pdf/wp_stream.pdf

おすすめ記事

記事・ニュース一覧