1 Oracle Database Gateway for WebSphere MQの紹介
以下のトピックでは、メッセージ・キュー、WebSphere MQ、およびWebSphere MQキューにアクセスするときのゲートウェイのロールの概要を説明します。
トピック:
- 「メッセージ・キューの概要」
メッセージ・キューイングにより、分散アプリケーションは、アプリケーション間でメッセージを送信することによって非同期に通信できます。 - 「WebSphere MQ入門」
WebSphere MQは、メッセージ・キュー・クライアントおよびメッセージ・キュー・サーバーのモデルに基づくメッセージ・キューイング・システムです。 - 「ゲートウェイの概要」
Oracle Database Gateway for WebSphere MQを使用すると、Oracleアプリケーションを他のWebSphere MQアプリケーションと統合できます。
1.1 メッセージ・キューイングの概要
メッセージ・キューイングにより、分散アプリケーションは、アプリケーション間でメッセージを送信して非同期の通信が可能になります。
送信アプリケーションからのメッセージは、キューに格納され、受信アプリケーションによって取り出されます。 アプリケーションは、メッセージ・キューイング・システムにリクエストを送信し、キューを通じてメッセージを送信および受信します。 送信側と受信側アプリケーションは、同一または異なるメッセージ・キューイング・システムを使用することが可能で、これにより、メッセージ・キューイング・システムは、送信者キューから受信者キューへのメッセージ転送を処理できます。
キューされたメッセージは、システムがそれらを次のノードに転送する準備ができるまで、中間ノードに格納されます。 宛先ノードでは、メッセージは、受信側アプリケーションがキューから取得するまでキューに格納されます。 ネットワークまたはアプリケーションでエラーが発生した場合でも、メッセージは確実に配信されます。 これにより、アプリケーション間に信頼できる通信チャネルが提供されます。
基礎モデルの複雑性および詳細(異なる環境間でのメッセージを格納および転送)は、メッセージ・キューイング・システムにより処理されます。 この抽象化レベルを維持することで、情報を転送する方法の詳細を意識せずに、分散アプリケーションを開発できます。
送信側と受信側アプリケーションは、互いに独立して機能するため、リモート・アプリケーション、アプリケーション間のネットワークおよび受信側アプリケーションを実行しているシステムの可用性に対して、送信側アプリケーションはほとんど依存しません。 これにより、関連アプリケーションの可用性のレベルが高くなります。
メッセージおよびメッセージ・キュー操作をアプリケーションによって構成すると、特定のモードで操作できます。 たとえば、送信側アプリケーションは、キューされたメッセージがシステム・クラッシュで存続するように指定できます。 別の例では、受信側アプリケーションは、キューからの受信操作(受信キューでメッセージがまだ取得可能ではない場合)の最大待機時間を指定できます。
1.2 WebSphere MQの概要
WebSphere MQは、メッセージ・キュー・クライアントおよびメッセージ・キュー・サーバーのモデルに基づくメッセージ・キューイング・システムです。
アプリケーションは、キュー・マネージャおよびキューが存在するサーバー・ノードまたはリモート・クライアント・ノードのいずれかで実行されます。 アプリケーションは、それらが接続されたキュー・マネージャが所有するキューからのみメッセージを送信または取得できます。
トピック:
- 「WebSphere MQ用語」
この表では、このガイドで使用されているWebSphere MQ用語について説明します。
1.2.1 WebSphere MQの用語
この表では、このガイドで使用されているWebSphere MQ用語について説明します。
表1-1 WebSphere MQ用語
1.3 ゲートウェイの概要
Oracle Database Gateway for WebSphere MQにより、Oracleアプリケーションを他のWebSphere MQアプリケーションと統合できます。
Oracleアプリケーションは、他のWebSphere MQアプリケーションとメッセージを送受信できます。 ゲートウェイを使用すると、Oracleアプリケーションは、リモート・プロシージャ・コール(RPC)処理を通じてWebSphere MQメッセージ・キューにアクセスできます。
ゲートウェイは、Oracleデータベースで使用可能なRPC機能を拡張し、任意のクライアント・アプリケーションからPL/SQLを使用してWebSphere MQキュー内のメッセージにアクセスできます。 ゲートウェイは、ゲートウェイによりMQIコールに翻訳されるPL/SQLプロシージャを提供します。 これらのプロシージャは、MQIのコールおよびタイプに類似していますが、Oracleデータベースとのトランザクション統合を最大限に活用するように構成されています。
WebSphere MQにより、ゲートウェイは、メインフレーム、UNIXベース・システム、Microsoft Windowsおよびその他のデスクトップ環境などの多様なプラットフォーム上にあるいずれかの別のWebSphere MQシステムと通信します。 ゲートウェイでは、リモート・システム上のOracleソフトウェアが不要です。 ゲートウェイは、既存のWebSphere MQアプリケーションと、アプリケーションに変更を加えずに統合され、メッセージ指向システムの利点を最大化する能力をユーザーに提供することで、これらのアプリケーションに対する投資の有効利用を可能にします。
また、ゲートウェイは、ネットワーク・コンピューティングなどの新しいテクノロジ領域と既存のWebSphere MQアプリケーションを統合する方法を提供します。 Oracle Application Server 11gを使用するアプリケーションを含むすべてのOracleアプリケーションは、PL/SQLプロシージャを起動できます。
トピック:
- 「ゲートウェイ・アプリケーションの開発」
Oracle Database Gateway for WebSphere MQ用のOracle Visual Workbenchの使用。 - 「ゲートウェイ用語」
この表では、このガイドで使用されるゲートウェイの用語について説明します。 - 「ゲートウェイを使用するメリット」
これは、ゲートウェイを使用してWebSphere MQにアクセスする利点の説明です。 - 「ゲートウェイ・アーキテクチャ」
これは、グラフィック・フォーマットのゲートウェイ・アーキテクチャ・コンポーネントの説明です。 - 「コンポーネントの説明」
このトピックでは、ゲートウェイ・アーキテクチャのコンポーネントについて説明します。 - 「ゲートウェイの構造」
ゲートウェイには、Oracleデータベースと同じコンポーネントがいくつかあります。 - 「ゲートウェイ操作」
ゲートウェイにアクセスする各Oracleデータベース・ユーザー・セッションは、ゲートウェイを実行するホスト・システム上に独立したプロセスを作成します。 - 「コミュニケーション」
Oracleデータベース、ゲートウェイ、およびWebSphere MQキュー間のすべての通信は、ゲートウェイへのRPC呼び出しによって処理されます。
関連トピック
1.3.1 ゲートウェイ・アプリケーションの開発
Oracle Database Gateway for WebSphere MQ用のOracle Visual Workbenchの使用。
ゲートウェイを介してWebSphere MQにアクセスするアプリケーションを開発する場合、Oracle Visual Workbench for Oracle Database Gateway for WebSphere MQを使用してください。 Oracle Visual Workbenchを使用すると、WebSphere MQにアクセスするインタフェースを定義し、WebSphere MQキューから送信または取得するメッセージ・データの変換方法を定義できます。
Visual Workbenchは、インタフェースおよびデータ変換のためのPL/SQLコードを生成します。 生成されるこのコードは、メッセージ・インタフェース・パッケージ(MIP)と呼ばれます。 MIPは、ゲートウェイと相互作用する基礎コードを提供してメッセージ・データ変換を実行し、リモートのWebSphere MQアプリケーションとメッセージを交換できる使用が簡単なインタフェースをOracleアプリケーションに提供します。
関連項目:
Oracle Visual Workbenchの詳細は、「Oracle Procedural Gateway Visual Workbench for WebSphere MQインストレーションおよびユーザーズ・ガイドfor Microsoft Windows (32-bit)」を参照してください。
必要に応じ、生成済MIPコードを変更すると、Visual WorkbenchでサポートされていないWebSphere MQ関数を使用またはメッセージ・データ変換を拡張できます。
1.3.2 ゲートウェイの用語
この表では、このガイドで使用されるゲートウェイの用語について説明します。
表1-2 Oracle Databaseゲートウェイ用語
用語 | 説明 |
---|---|
ゲートウェイの実行を定義するパラメータを含むファイル。 |
|
ゲートウェイ・リモート・プロシージャ |
ゲートウェイにより実装されるリモート・プロシージャ。 これらのプロシージャを使用して、WebSphere MQ操作を起動します。 |
Oracle Visual Workbenchにより生成され、既存のWebSphere MQアプリケーションとOracleアプリケーション間のインタフェースとして作用するOracle PL/SQLパッケージ。 MIPは、必要なすべてのデータ変換を実行し、適切なWebSphere MQ操作を実行するためにゲートウェイRPCを起動します。 生成されるパッケージの詳細については、「Oracle Procedural Gateway Visual Workbench for WebSphere MQインストレーションおよびユーザーズ・ガイドfor Microsoft Windows (32-bit)」を参照してください。 |
|
Oracleデータベース |
ゲートウェイと通信するいずれかのOracleデータベース。 Oracleアプリケーションは、ゲートウェイと直接に通信しません。 かわりに、OracleデータベースでPL/SQLコードを実行し、ゲートウェイ・プロシージャを起動します。 Oracleデータベースは、ゲートウェイと同一システム上または別のシステム上のどちらにも存在できます。 |
本番Oracleデータベース |
このマニュアルでは、本番データベースは、テストではなく実際のビジネスで使用する本番用のいずれかのOracleデータベースを指します。 |
PL/SQLストアド・プロシージャ |
Oracleデータベースに格納またはゲートウェイに含まれるコンパイル済PL/SQLプロシージャ。 |
リモート・プロシージャ・コール |
別のシステムからのリクエストに応答して、システム上のプログラムを起動するプログラム・コール。 |
Oracle Visual Workbench |
Oracle Visual Workbench for Oracle Database Gateway for WebSphere MQの略称。 |
1.3.3 ゲートウェイを使用する利点
これは、ゲートウェイを使用してWebSphere MQにアクセスする利点の説明です。
WebSphere MQへのアクセスにゲートウェイを使用すると、次の利点があります。
-
トランザクション・サポート
ゲートウェイおよびOracleデータベースにより、状況に応じて、WebSphere MQ操作およびOracleデータベースの更新の実行が可能です。 Oracleの拡張された2フェーズ・コミットがWebSphere MQ環境を保護し、特別なプログラムが不要です。
-
高速リモート・プロシージャ
ゲートウェイにより実装されるリモート・プロシージャが最適化され、WebSphere MQリクエストを効率的に処理します。
ゲートウェイおよびWebSphere MQへのリモート・プロシージャは、ゲートウェイにプリコンパイル済の最適化されたPL/SQLパッケージです。 ターゲット・システム上にソフトウェア層が追加されていないため、オーバーヘッドが最小化されます。
-
位置の透過性
クライアント・アプリケーションは、特定のオペレーティング・システム上にある必要はありません。 たとえば、使用するOracleアプリケーションは、IBM MVS上のアプリケーションにWebSphere MQメッセージを送信できます。 受信側アプリケーションが別のプラットフォームに移動された場合、使用するOracleアプリケーションのプラットフォームを変更する必要はありません。
-
柔軟なインタフェース
Visual Workbenchで生成されたMIPを使用すると、ゲートウェイを使用して、既存の手続き型ロジックとのインタフェースまたは新規手続き型ロジックのOracleデータベース環境への統合が可能です。
-
Oracleデータベース統合
Oracleデータベースをゲートウェイと統合すると、Oracleの既存および将来の機能を効果的に利用できます。
-
幅広いツールの選択
ゲートウェイは、PL/SQLをサポートするすべてのツールまたはアプリケーションをサポートします。 これには、Oracle Developerなど従来のOracleツールで作成されたアプリケーションまたはOracle Application Server 11gでサポートされているイントラネットやインターネット環境のために作成されたアプリケーションが含まれます。 ゲートウェイは、Oracle Financialsなどのパッケージ済OracleアプリケーションおよびVisual Basic、PowerBuilderおよびLotus Notesなどの多様なサード・パーティ・ツールとも連携しています。
-
セキュリティ
ゲートウェイは、WebSphere MQセキュリティ認可メカニズムと互換性があります。
1.3.4 ゲートウェイのアーキテクチャ
これは、グラフィック・フォーマットのゲートウェイ・アーキテクチャ・コンポーネントの説明です。
図1-1に、ゲートウェイ・アーキテクチャのコンポーネントを示します。
図1-1 ゲートウェイ・アーキテクチャのコンポーネント

「図1-1ゲートウェイ・アーキテクチャのコンポーネントの説明」
1.3.5 コンポーネントの説明
このトピックでは、ゲートウェイ・アーキテクチャのコンポーネントについて説明します。
トピック:
- Oracle Applications
Oracleアプリケーション・コンポーネント。 - Oracle Database
Oracleデータベース・コンポーネント。 - Oracle Net
Oracle Netコンポーネント。 - 「ゲートウェイ」
ゲートウェイ・コンポーネント。 - 「WebSphere MQキュー・マネージャ」
WebSphere MQキュー・マネージャ・コンポーネント。 - 「WebSphere MQアプリケーション」
WebSphere MQアプリケーション・コンポーネント。
1.3.5.1 Oracle Applications
Oracleアプリケーション・コンポーネント。
Oracleアプリケーションは、Oracleデータベースに接続します。 これらは、ゲートウェイRPCを起動して、WebSphere MQキューにデータを送受信します。
1.3.5.2 Oracle Database
Oracleデータベース・コンポーネント。
Oracleアプリケーションは、ゲートウェイに直接接続せず、Oracleデータベースを介して間接的に接続します。 Oracleデータベースは、Oracle Netを使用して、Oracleサーバーからサーバーへの通常の方法でゲートウェイと通信します。 ゲートウェイは、シングル・プロセスで、バックグラウンド・プロセスを開始しません。 UNIXプラットフォーム上で、ゲートウェイ・プロセスは、それぞれのユーザー・セッションに対して開始されます。
1.3.5.3 Oracle Net
Oracle Netコンポーネント。
Oracle Netは、サーバーおよびサーバーからゲートウェイへの通信にクライアントを提供します。 これにより、OracleアプリケーションとOracleデータベースとの通信が可能になり、Oracleデータベースがゲートウェイと通信できるようになります。
Oracleデータベースが、ゲートウェイと同一システム上にない場合、Oracleデータベースがインストールされているプラットフォーム上に正しいOracleネットワーク・ソフトウェアをインストールする必要があります。
1.3.5.4 ゲートウェイ
ゲートウェイ・コンポーネント。
Oracleアプリケーションは、PL/SQLとともにゲートウェイにより実装されるRPCを起動します。 ゲートウェイ・プロシージャは、これらのRPCをWebSphere MQ MQIコールにマップして、対応するWebSphere MQ操作を実行します。
ゲートウェイには、Oracle CREATE DATABASE LINK
文により作成されるデータベース・リンク名を使用し、Oracleデータベースを介してアクセスします。 データベース・リンクは、Oracleデータベースを識別するために使用する構成です。