Information as a Serviceとは?

「図1:SOAリファレンス・アーキ
テクチャー」を拡大
Information as a Serviceとは、企業内の異機種混在環境に散在しているデータへのアクセスを、再利用可能なサービスとして提供することです。Informationをサービスとして利用することは、IBMが考えるサービス志向アーキテクチャー(以下、SOA)のリファレンス・アーキテクチャーにおいても、重要な要素の一つと位置付けられています(図1)。また、Informationへのアクセス方式をサービス化することにより、データの物理的な格納方式や格納場所と、そのデータを必要とするプロセスやアプリケーションとを分離できるようになります。
Informationの視点からSOAを導入することにより、アプリケーションが必要とするデータの利用性や正確性を向上させられるだけでなく、すでに存在しているデータへのアクセス時に遭遇する障壁を取り除くこともできます。このことから、Information as a Serviceは、SOA導入におけるエントリー・ポイントとしても位置付けられています。
それでは、Informationをサービスとして利用することによって、具体的にはどのようなことが可能になるのでしょうか? ここでは、4つの活用方法についてご紹介します。
- データ・アクセス・サービス
- データ・フェデレーション・サービス
- データ・トランスフォーメーション・サービス
- データ・クオリティ・サービス
データ・アクセス・サービス
データ・アクセス・サービスは、アプリケーションが必要とするデータに対するアクセスを標準化します。このサービスを利用することにより、企業内のアプリケーション群は共通のアクセス方式でデータを読み込み、更新できるようになります。個別のアプリケーション開発やプロジェクトごとに発生していた、複雑なデータ・アクセス処理に関する開発工数も削減できます。また、データにアクセスするために個別に呼び出されていたプログラムを改修することなく、データを変更できるようになります。

「図2:データ・アクセス・サービ
スの例」を拡大
一例を挙げてみましょう。ある商品の販売実績データがDB2上に格納されていたとします。このデータには、関連するマスターデータがいくつかあるため、販売実績データを活用するには、それらを結合する複雑なクエリーを発行して必要なデータを抽出しなくてはなりません。このクエリーをサービス化すれば、新規に別のアプリケーションで同じデータを利用する場合でも、どこのデータソースにどのようなクエリーを発行するのかを考慮することなくデータにアクセスできます(図2)。
データ・フェデレーション・サービス
データ・フェデレーション・サービスはデータ・アクセス・サービスと同じく、アプリケーションのデータ・アクセス方式を標準化できます。さらに、IBM WebSphere Federation Serverを使用することで、複数の異機種混在環境のRDBに格納されているデータに透過的にアクセスできるようになります。
一例を挙げてみましょう。先ほどの販売実績データがDB2上に格納されており、それに関連する顧客マスターデータがOracleデータベース上に、さらに商品マスターデータがMicrosoft SQL Serverに格納されていたとします。これらのデータソースからデータを結合して抽出する場合、IBM WebSphere Federation Serverのニックネーム機能を使用することにより、仮想的な1つのデータソースにクエリーを発行してデータにアクセスできます。さらに、このクエリーをサービス化することにより、データソースやクエリーを意識することなくデータにアクセスできます。
データ・トランスフォーメーション・サービス
大量データの変換・加工処理は、これまでバッチとして日次や月次等の定時起動で処理されることが一般的でした。データ・トランスフォーメーション・サービスを利用し、処理をイベントごとにもしくはプロセス・フローから起動させることによって、一定期間蓄積されたデータだけでなく、リアルタイムに処理されるデータに対しても変換・加工処理を行うことができます。このような処理には、例えば複数データソースの結合処理やデータの特定列の集計処理、ピボット処理などが含まれますが、これらの処理はIBM WebSphere DataStageが行います。
リアルタイムに変換処理を行うことによって、例えばODS(Operational Data Store)に格納されている鮮度のより高いデータと、データ・ウェアハウスやデータ・マートに格納されている短期もしくは長期の過去データとを統合させることができます。また、BAM(Business Activity Monitoring)を活用するためのインフラストラクチャーとしても活用できます。
データ・クオリティ・サービス
名寄せ処理に代表されるデータ・クレンジング処理の多くも、バッチの一部として日次や月次で処理されています。データ・クオリティ・サービスを利用することによって、例えば新規に追加される顧客情報のレコードに対してリアルタイムにクレンジング処理を行うことができます。クレンジング処理には、レコードの標準化や既存レコードとのマッチングなどが含まれますが、これらの処理はIBM WebSphere QualityStageが行います。
Information as a Serviceを実現するWISD
これまでご紹介した4種類のInformationサービスは、WebSphere Information Services Director(WISD)を利用して容易に開発できます。
WISDは、DB2の表やWebSphere Federation Serverで作成されたニックネームに対するクエリー、WebSphere DataStageやWebSphere QualityStageにて開発されたジョブのロジックをパッケージ化し、他のアプリケーションに対して常時応答可能なサービスとして公開できます。このサービス化のオペレーションにはハンドコーディングによる手続きは不要で、GUIツールにて容易に行うことができます。
WISDによって開発されたサービスの実体はEJBのSession Beanです。クライアントからのバインディング方式としてWeb Service(SOAP over HTTP)とEJB、JMSを指定できます(図3)。
図3:WebSphere Information Services Directorのアーキテクチャー

また、WISDは複数のサーバーに処理を割り振ることによって、ワークロード・バランシングとフォールト・トレランス(耐障害)の機能を提供しています。この機能により、アプリケーションから受信したリクエストを、高速かつ信頼性の高い基盤で処理できます(図4)。
図4:WebSphere Information Services Directorのロードバランシング機能

本ページ内の事例は特定のお客様での事例であり、すべてのお客様について同様の効果を実現することが可能なわけではありません。
本事例中に記載の肩書や数値、固有名詞等は初掲載当時のものであり、閲覧される時点では、変更されている可能性があることをご了承ください。
IBM、IBMロゴ、WebSphereはInternational Business Machines Corporationの米国およびその他の国における商標。
他の会社名、製品名およびサービス名等はそれぞれ各社の商標。
