|
BEA AquaLogic Data Services Platform は、サービス指向アーキテクチャ (SOA) に基づくデータ アクセスを実現します。 AquaLogic Data Services Platform を採用することにより、企業は必要に応じて社内に分散しているさまざまなデータ ソースの一括管理、統合、および変換が可能となり、企業データはアクセスが容易な再利用可能コモディティ、つまりデータ サービスとして利用できるようになります。
また、AquaLogic Data Services Platform は、統合された堅牢なインタフェースを提供するため、クライアント アプリケーション開発者はデータ サービスを構成する異種のバックエンド データ ソースへのアクセスおよび更新が可能となります。 この章ではクライアント アプリケーション開発者向けの AquaLogic Data Services Platform の概要について説明します。 内容は以下のとおりです。
注意 : | BEA AquaLogic Data Services Platform の旧製品名は Liquid Data です。 製品、インストレーション パス、およびコンポーネントに旧製品名のまま表示されている場合があります。 |
AquaLogic Data Services Platform は、クライアント アプリケーションによるデータへのアクセスおよび利用方法を大幅に簡略化します。 一般的な企業では、データは分散型データベース、さまざまなファイル、パートナー企業からのアプリケーションや E コマースのエクスチェンジ マーケットなど、さまざまなソースに由来します。 AquaLogic Data Services Platform では、クライアント アプリケーションは統合されたサービス レイヤを介して異種データを処理するため、多様な接続メカニズムやデータ形式を駆使して分散したデータソースを扱う必要はありません。
AquaLogic Data Services Platform は統合された堅牢なインタフェースを提供するため、異種のバックエンド データへのアクセスおよび更新が可能です。 SOA に基づく方法で、データ サービスを利用する情報アクセスを実現します。
クライアント アプリケーションの観点からすると、データ サービスは顧客や注文など、個別のビジネス エンティティを表すのが一般的です。 裏では、データを統合して複数のソースに由来するデータを単一ビューで構成し、それをさまざまな形式に変換します。 データ サービスは他のデータ サービスに関連付けられている場合がありますが、AquaLogic Data Services Platform ではこうした関連付けを簡単に追跡することができます。 クライアント アプリケーションはデータ サービスを利用することにより、各ビジネス エンティティを構成する詳細について処理する必要がなくなります。 クライアント アプリケーションで必要なのは、データ サービスの公開インタフェースを理解することのみです。
このマニュアルでは、AquaLogic Data Services Platform 対応のクライアント アプリケーションの作成方法について説明します。 AquaLogic Data Services Platform がサポートするさまざまなクライアント アクセス メカニズムや、SDO など、主なクライアント側データ プログラミング モデルについて説明します。 また、AquaLogic Data Services Platform 更新フレームワークを利用した更新可能なデータ サービスの作成方法についても紹介します。
このガイドでは、ご利用のアプリケーションでデータ サービスを活用する方法について紹介します。
一般的な企業では、データ は、分散型データベース、多様なファイル、パートナー企業からのアプリケーション、または E コマースのエクスチェンジ マーケットなど、さまざまなソースから双方向に流れます。
分散した多様なデータ ソースにアクセス、および更新するアプリケーションを作成するのは複雑かつ困難で、コストがかかることがあります。たとえば、さまざまな接続メカニズムおよびデータ形式の使用法や、各バックエンド データ ソースへのアクセスおよび更新に必要なさまざまな API の使用法についての知識が必要です。
AquaLogic Data Services Platform を利用すると、データ設計者は次のような特徴を持つデータ サービスを構築できます。
AquaLogic Data Services Platform クライアントとは、データ サービスを利用するプロセスのことです。 クライアント アプリケーションには、.NET アプリケーション、BEA WebLogic Workshop アプリケーション、または JDBC/ODBC クライアントなどの Java プログラムや非 Java プログラムなどがあります。 これらのアプリケーションすべてが クライアント API と考えられます。
このデータ資産を有効利用したいクライアント アプリケーション開発者向けに、AquaLogic Data Services Platform はさまざまなアクセス方法を提供します (図 1-1 を参照)。
AquaLogic Data Services Platform では、クライアント型にかかわらず、アプリケーション開発者は統合されたサービス指向メカニズムを利用し、外部ソースに由来する異種データへのアクセスおよび更新を実行できます。 開発者はさまざまなデータ ソースの接続や形式について理解する必要がなく、アプリケーションのビジネス ロジックにのみ集中できます。
データ サービスはサーバ側、つまり WebLogic Workshop で作成されます。 Workshop は、ポータル、Web サービス、統合アプリケーションなどのさまざまなアプリケーションを構築、配備する BEA の統合開発環境です。
高レベルな観点から、データ サービスは顧客や顧客注文について説明するレポートなど、個別のビジネス エンティティを定義します。 データ サービスは、リレーショナル データベース管理システム (RDBMS)、Web サービス、企業アプリケーション、フラット ファイル、XML ファイルなど、さまざまなソースからのデータを統合し、単一ビューで表示します。 また、必要に応じてオリジナルのソースからデータを変換することもできます。
以下に示す点のみを理解するだけで、データ サービスの利用が可能です。
データ サービス クライアント アプリケーションは、Web サービスのクライアント アプリケーションが Web サービスのオペレーションを呼び出すのと同じ方法で、データ サービスを利用できます。 Java クライアント アプリケーションからオペレーションを呼び出す代わりに、データ サービス クライアント アプリケーションはデータ サービス ルーチンを呼び出します。
AquaLogic Data Services Platform クライアント アプリケーションとは、データ サービス ルーチンを呼び出すアプリケーションです。 クライアント アプリケーションには Microsoft ADO.NET アプリケーション、BEA WebLogic Workshop アプリケーション、または JDBC/ODBC クライアントなどの Java および非 Java プログラムが含まれます。
クライアント型にかかわらず、AquaLogic Data Services Platform を利用すると、統合されたサービス指向メカニズムを利用し、分散された異種データへのアクセスおよび修正を行うことができます。 開発者はさまざまなデータ ソースの接続や形式について理解する必要がなく、ビジネス ロジックにのみ集中できます。
クライアント アプリケーション コードで、データ サービス ルーチンを呼び出すと、AquaLogic Data Services Platform エンジンは次のタスクを実行します。
これらのデータ オブジェクトは、弊社と IBM が共同開発したデータ プログラミング用の Java ベースのアーキテクチャおよび API である、SDO (Service Data Object) 仕様に準拠しています。
AquaLogic Data Services Platform 管理者はロール ベースのセキュリティ ポリシーを介して、配備された AquaLogic Data Services Platform リソースへのアクセスを制御できます。 AquaLogic Data Services Platform は基礎となる WebLogic プラットフォームのセキュリティ機能を活用および拡張します。 ロールを WebLogic Administration Console で設定できます。 (AquaLogic Data Services Platform Console の詳細については、『管理ガイド』を参照してください。)
デプロイメント環境におけるすべてのデータ サービス、各データ サービス、各データ サービス関数、またはデータ サービス関数によって返された各要素においても、リソースへのアクセス ポリシーをあらゆるレベルで定義できます。
WebLogic セキュリティに関する詳細な情報は、以下を参照してください。
http://edocs.beasys.co.jp/e-docs/wls/docs81/security/index.html
アプリケーション開発者は、AquaLogic Data Services Platform サービスへのアクセスに関し、複数のクライアント API モデルから選択可能です。 選択したモデルは、使用するアクセス メカニズムに依存します。 アクセス方法は以下のとおりです。
各アクセス方法には独自の利点と用途があります。表 1-3 に、それぞれのアクセス方法の説明と、AquaLogic Data Services Platform サービスにアクセスするためのさまざまなモデルの利点を示します。
|
||
|
||
|
||
サービス データ オブジェクト (SDO) とは弊社と IBM 社が共同提案した仕様で、データ プログラミング用の Java ベースのアーキテクチャおよび API です。 SDO は異種データ ソースに対するデータ プログラミングを統一します。 データ アクセスを簡略化し、データ利用者はデータベース、Web サービス、アプリケーション、その他のシステムなど、データ ソースにかかわらず、一貫性があり、統一された方法でデータを利用することができます。
SDO は非連結データ グラフの概念を使用します。 このアーキテクチャでは、クライアントはデータ グラフ (データ オブジェクトを保持するための構造) で外部的に永続化されたデータのコピーを取得します。 クライアントはリモートで (つまり、データ ソースから切り離された状態で) データを操作します。 データの変更をデータ ソースに保存する必要がある場合は、ソースへの接続が再取得されます。
接続時間を最小限に抑えることにより、アプリケーションのスケーラビリティとパフォーマンスを最大化します。
SDO クライアント側では、データはデータ ソースまたはデータ形式にかかわらず、統一した外観で表示されます。 SDO モデルにおけるこのようなデータの統一ビューを可能にするのが Data Service Mediator です。 Mediator はデータ クライアントとバックエンド システムの仲介を行います。 これによってクライアントはデータ サービスにアクセスし、データ取得またはデータ変更送信に関する関数を呼び出すことができます。 AquaLogic Data Services Platform は SDO Mediator としての機能を果たします。
クライアント側では、情報はデータ オブジェクト形式となります。 データ オブジェクトは SDO アーキテクチャによって規定された情報の基本単位です。 SDO はデータ オブジェクトで動作する静的 (型付き) および動的 (型なし) インタフェースの両方を備えています。
静的インタフェースは、データ オブジェクトにおけるプロパティの取得および設定のための、プログラミングしやすいモデルとして機能します。 たとえば、カスタマ データ オブジェクト向けの getCustomerName( ) および setCustomerName( ) など、データ サービスのデータ型の各プロパティに対してアクセッサが生成されます。 静的インタフェースは型情報のスキーマに依存します。
一方、動的インタフェースは、型が不明であるかまたは実行時に定義されていない場合に有効です。 動的インタフェースの呼び出しには次のような形式があります。
get("CustomerName")
set("CustomerName", "J. Dough")
サービス指向アーキテクチャ (SOA) の目的を維持するため、データ グラフは自己記述型です。 メタデータ API により、アプリケーション、ツール、およびフレームワークはデータ グラフに含まれるデータの情報を検証することが可能です。 データは XML スキーマで記述されています。XML スキーマはプロパティ名、プロパティ型などを記述します。
SDO の使用についての詳細は、「データ プログラミング モデルと更新フレームワーク」を参照してください。
SDO 仕様では更新フレームワークを指定しませんが、データ オブジェクトの更新処理など、仲介サービスの必要性について全般的に検討しています。つまり、SDO 仕様ではその詳細を開発者に委ねています。
SDO 仕様では、特定タイプのクエリ言語またはバックエンド システムを対象としたさまざまな型の Mediator を利用できます。 AquaLogic Data Services Platform では Data Service Mediator を提供します。Data Service Mediator は AquaLogic Data Services Platform の XQuery プロセッシング エンジンのサーバ側コンポーネントで、データ サービスとクライアント アプリケーションまたはプロセスの仲介を行います。
Data Service Mediator (Mediator) はすべてのデータ サービスを構成するさまざまなデータ ソースの更新を円滑化します。 Mediator のサービスはデータ サービス更新フレームワークのコア メカニズムです。 Mediator は次のようなリレーショナルおよび非リレーショナルのデータ ソースの更新を処理します。
注意 : | リレーショナル ソースでは既定の更新処理をオーバーライドのほうが便利、あるいはその必要がある場合があります。 この処理は、データ サービスに関連付けられた更新オーバーライド クラスを通して実行されます。 『データ サービス開発者ガイド』の「データ サービスを介した更新の処理」の章での「リレーショナル データ ソースの更新オーバーライドを作成する」のトピックを参照してください。 |
AquaLogic Data Services Platform 対応のクライアント アプリケーションの開発には以下の手順があります。
たとえば、データ サービスが Web サービスとしてホストされている場合、Java を当該サービスの WSDL ファイルと関連付けて使用し、Web サービス クライアント アプリケーションを開発できます。
同様に、データ サービスがポータル、ビジネス プロセス、または Web アプリケーションに組み込まれている場合、クライアント アプリケーション開発プロセスは、ページフローまたは他のサーバ側アーティファクトのセットとしてサーバのコンテキスト全体で行われる場合があります。
図 1-4 はさまざまな方法の理念を表し、数多くのサブシステムおよびコンポーネントからいくつかの関係が強調表示されています。 このようなサーバ側のデータ サービス開発に関する詳細は、『データ サービス開発者ガイド』を参照してください。
一般的にクライアント アプリケーション開発者は、JAR ファイルに含まれるいくつかの API を使用します。 API は主に Javadocs を使用して記述されています (「AquaLogic Data Services Platform Mediator API Javadoc」を参照)。
AquaLogic Data Services Platform の API は 表 1-5 に記載されたパッケージに含まれます。
|
AquaLogic Data Services Platform Mediator API は、AquaLogic Data Services Platform クライアント アプリケーションがさまざまな AquaLogic Data Services Platform ルーチンの呼び出しに必要とするルーチンを記述します。
Javadoc は、クライアント アプリケーション開発者がデータ サービス ルーチンを呼び出すクライアント アプリケーションを作成する際に便利です。 またデータ サービス開発者および構築者にとっては更新動作のカスタマイズ方法を理解する上で役立ちます。
AquaLogic Data Services Platform 2.5 および 2.1 Mediator API のための Javadoc は、以下の場所にあります。
旧バージョンの AquaLogic Data Services Platform に構築されたクライアント アプリケーションは継続して 2.0.1 Mediator API ルーチンの利用が可能です。 これらは javadoc-dsp201 という名前の Javadoc で記述され、以下から入手できます。
Javadoc は ZIP ファイル形式でも提供されています。AquaLogic Data Services Platform の e-docs Web サイトからダウンロードが可能です。
データ サービスのパフォーマンスはシステム全体を構成する以下のようなエンド ツー エンド コンポーネントによって決まります。
データ サービスに対するクライアント アプリケーションを作成する前に、基底となるそれぞれデータ ソースのパフォーマンスをベンチマークし、さらに開発中にもデータ サービスのパフォーマンスをベンチマークすることをお勧めします。 負荷テスト ツールを使用してデータ サービスがサポートできる最大クライアント数を決定します。
また、AquaLogic Data Services Platform の監査機能を利用してコードをインスツルメントすることにより、パフォーマンスに関して発生した問題を特定して解決するのに役立つパフォーマンス プロファイル情報を取得できます。 AquaLogic Data Services Platform の監査機能についての詳細は、AquaLogic Data Services Platform の『管理ガイド』を参照してください。