スマートなデータレイク生成

Vitria OI と Hadoop システムとの連携

Hadoopで処理を実行する場合、処理に必要なデータを収集したり、処理が効率よく実行されるためにデータを整形したりする作業にコストがかかることがあります。

Vitria OI を使用すると、ファイル、RDBMS、RSS、REST等、様々なシステムから、現在発生しているデータをリアルタイムで取り込み、フィルタリング、属性情報付加(enrichment)、異なるソースデータのマージ、サマライズなどの加工を行った上で、HDFSに出力することが可能になり、一つの製品で全ての前処理が可能になります。


使用モジュールの特長

ここでは、本ユースケース(ソリューション)で使用されるモジュールの特長を説明します。

voi

データ収集モジュール

Vitria OI は外部システムからのデータをストリームデータとして取り込みます。

Apache FlumeやJMSなど、元々ストリーム状のデータだけでなく、通常ファイル、HDFS上のファイルやRDBMSなどからも追加された行やレコードを順次取り込むことによりストリームデータを生成します。Vitria BusinessWare等のESB製品から情報を取得することも可能です。

また、この機能により、過去に収集したデータをリアルタイムに取り込んだストリームデータとしてシミュレーションを行うことも可能になります。データに日時情報が含まれていれば、Vitria OIはその時間に取り込んだかのようにストリームデータを生成します。

ストリーム処理モジュール

CEP 技術を中心としたストリーム処理モジュールでは、ストリームデータの個別のデータに対しフィルタをかけたり、属性情報付加を行うことが可能な上、一連のデータに対して算術演算を実行したりすることが可能です。
以下、このユースケースで使用されるストリーム処理モジュールの機能概要を説明します。

●フィルタリング

Hadoopによる処理に必要なデータのみを残し、不要なものを捨てる処理です。フィルタの方法としては、

1. ある属性値のリストを用い、そのリストにある属性値を持つイベントのみを残す、または捨てる(ホワイトリスト、ブラックリスト)方法。

2. 数値属性の値、または計算結果が指定した範囲内にあるもののみを残す、または捨てる方法。

などが考えられます。
1の方法では、Named Window(Named Windowの詳細はこちら(ストリーム処理モジュール))でリストを保持することが可能です。2の方法の範囲の指定も、ハードコードではなく外部DBに保存することが可能で、ダイナミックに変更することが可能になります。

●属性情報付加(Enrichment)

例えば、顧客IDのみを含むデータに対し、顧客DBから取得した顧客データ(年齢、居住地域等)を付加するような機能です。ビッグデータ処理で扱うソースデータには分析に必要な属性情報が付加されていないことが多くあります。属性情報付加のプロセスは、HadoopやDWHで処理する場合の必須プロセスとなっています。

また、ストリーム処理モジュール内で属性情報を軸にサマライズを行えば、リアルタイムに変化するキューブが作成されます。キューブをVitria OIのダッシュボードに送信すれば(送信過程でディスクにデータが書き込まれることは一切ありません)、ダッシュボード上で多次元分析を行うこともできますし、キューブのスナップショットを保存することによりHadoopやDWHの分析対象データとすることも可能です。

本機能でも Named Window 機能を使用しており、付加される情報はメモリ上にキャッシュされるため高速に処理が実行されます。

●算術演算

個々のイベントに対する処理だけでなく、一連のイベントに対して、平均、標準偏差、移動平均などの算術演算を行い、その結果を出力として保存することが可能です。

●外部サービス呼び出し

ストリーム処理モジュールからサードパーティーのサービスを呼び出すことが可能です。この機能により、例えば、別製品の形態素解析サービスを呼び出し、日本語文のデータを分かち書きした状態で保存することもできます。

ストリーム処理モジュールの詳細はこちらを参照してください。

データ出力モジュール

ストリーム処理モジュールにより処理されたデータを HDFS に出力します。データ出力モジュールは、このほかにもさまざまな媒体にデータを出力することが可能です。例えば、DWH にデータを出力し、BI システムと連携を行うことも可能です。


製品としての完成度

価値を生むまでの時間(Time to Value)と開発コストの比較

本ソリューションは、Vitria OI のインストールから設定完了まで非常に短期間で実現可能です。この生産性の高さの大きな理由の一つとして、本製品が一社により開発され、全てのモジュールが一製品として提供されているという事が挙げられます。このことによる利点として以下のものが挙げられます。

●他のモジュール(BPMN、ダッシュボード)も含め全てのモジュールはシームレスに統合されており、モジュールを統合するための実装は一切必要ありません。

●実装、デバッグ、テストなどを行う開発画面と、起動、停止、監視などを行う管理画面が統合されたウェブベースの環境として提供されます。

●製品のサポートは一ヵ所で対応しています。また、製品の拡張はお客様のリクエストされたものを優先的に実施します。(オープンソースコミュニティの決定に左右されることはありません。)

●OSSを使用する場合、データ収集とストリーム処理を一製品で実現することは不可能です。複数製品を使用する場合、製品間の連携/統合のためのコスト、各製品を習熟するためのコストなどがかかることになります。

ぜひ、OSSや他社製品を使用した場合の開発期間、開発コストと、Vitria OI を使用した場合とで比較をしてみてください。

このほかにも、クラスタリングにおけるサーバ管理など、Vitria OI の優れた特長についてはこちら(Vitria OI の特長)を参照してください。


さらに

ここで紹介したユースケース以外にも、様々なリアルタイムビッグデータアナリティクスの事例や技術について、本社ページや日本のサイトで紹介しています。

 

トライアルサイト

Vitria OI で作成された軽量アプリケーション、OI Apps を体験できるトライアルサイトを用意しております。ブラウザさえあれば、プログラミングを一切することなく、アプリケーションの設定から実行までを体験することができます。トライアルサイトにアクセスするには、日本語の説明ページを参照してください。