ヘッダーをスキップ
Oracle Database Gateway for APPCインストレーションおよび構成ガイド
11gリリース1(11.1) for Microsoft Windows
E05712-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

1 Oracle Database Gateway for APPCの概要

Oracle Database Gateway for APPC(ゲートウェイ)を使用すると、リモートのオンライン・トランザクション・プロセッサ(OLTP)上でトランザクション・プログラムの実行を開始できます。Oracle Database Gateway for APPCは、SNA通信プロトコルを使用して、OLTPとの接続を確立することができます。また、TCP/IP for IMS Connectを使用することで、TCP/IPを介してOLTPとの通信を確立することもできます。ゲートウェイを使用すると、OracleアプリケーションからIBMメインフレームのデータやサービスに、リモート・プロシージャ・コール(RPC)処理を介してシームレスにアクセスすることができます。ゲートウェイは、CPI-C APIを使用できる任意のアプリケーションに、直接、またはCICSなどのTPモニターを介してアクセスすることができます。

この章では、ゲートウェイのアーキテクチャ、使用方法および機能について説明します。含まれる項は、次のとおりです。

1.1 ゲートウェイの概要

Oracle Database Gateway for APPCは、Oracleデータベースで使用できるリモート・プロシージャ・コール(RPC)の機能を拡張します。ゲートウェイを使用すると、任意のクライアント・アプリケーションから、PL/SQLを使用して、ホスト上にあるリモート・トランザクション・プログラム(RTP)の実行をリクエストできます。ゲートウェイは、SNA APPC(Advanced Program-to-Program Communication)プロトコルを使用するシステム、およびTCP/IP for IMS Connectプロトコルを使用するシステムに、RPC処理を提供します。このアーキテクチャは、それぞれIBMメインフレームおよびIMS上で利用できるデータとトランザクションへの効率的アクセスを可能にします。

ゲートウェイは、リモート・ホスト・システム上にOracleソフトウェアを必要としません。このため、ゲートウェイで既存のトランザクションを使用する場合、リモート・ホスト上でプログラミングする必要はほとんど、またはまったく不要です。

SNAを使用するゲートウェイの場合:

汎用の標準プロトコルであるAPPCを使用することで、ゲートウェイから多数のシステムにアクセスできます。ゲートウェイは、あらゆるプラットフォーム上でのIBM社のCICS 、IBM社のIMSおよびAPPC/MVSなど、実質的にすべてのAPPC対応システムと通信することができます。これらのトランザクション・モニターを使用すると、ゲートウェイがVSAM、DB2(静的SQL)、IMSなど多くのデータストアにアクセスできるため、広範囲のシステムにアクセスできます。

ゲートウェイは、CPI-C APIを使用できる任意のアプリケーションに、直接、またはCICSなどのTPモニターを介してアクセスすることができます。

1.2 ゲートウェイの特長

Oracle Database Gateway for APPCには次の長所があります。

1.3 用語

このガイドを通じて、次の用語と定義を使用します。ゲートウェイ、そのコンポーネントおよびファンクションに関する用語と定義の詳細なリストは、付録C「ゲートウェイ用語」を参照してください。

Oracleデータベース

これは、リモート・トランザクション・プログラム(RTP)を実行するリモート・プロシージャ・コールを実行する目的でゲートウェイと通信する、任意のOracleデータベース・インスタンスです。Oracleデータベースはゲートウェイと同一のシステム上にあっても、異なるシステム上にあってもかまいません。異なるシステム上の場合は、両方のシステム上にOracle Netが必要です。ゲートウェイ・アーキテクチャの表示は、図1-2「ゲートウェイ・アーキテクチャ」を参照してください。

OLTP

Online Transaction Processor(OLTP)とは、CICS Transaction Server for z/OS、IMS/TMおよびz/OSなど、他のベンダーから入手できる多数のオンライン・トランザクション・プロセッサのいずれかです。

PGAU

プロシージャ・ゲートウェイ管理ユーティリティ(PGAU)は、PL/SQLトランザクション・インタフェース・パッケージ(TIP)を定義および生成するために使用されるツールです。PGAUの詳細は、『Oracle Database Gateway for APPCユーザーズ・ガイド』の第2章「プロシージャ・ゲートウェイ管理ユーティリティ」を参照してください。

PG DD

プロシージャ・ゲートウェイ・データ・ディクショナリ(PG DD)は、リモート・ホスト・トランザクション(RHT)定義とデータ定義のリポジトリです。PGAUは、TIPを生成する際にデータ・ディクショナリ(PG DD)の定義にアクセスします。PG DDは、PGAUをサポートしますが、カスタマにより直接アクセスされることを想定していないため、データ型依存性があります。PG DD表の一覧は『Oracle Database Gateway for APPCユーザーズ・ガイド』の付録A「Database Gateway for APPCデータ・ディクショナリ」を参照してください。

RPC

リモート・プロシージャ・コール(RPC)は、別のシステムからのリクエストに応答してシステム上でプログラム・ロジックを実行するプログラミング・コールです。詳細は「ゲートウェイ用語の定義」と『Oracle Database Gateway for APPCユーザーズ・ガイド』の付録C「ゲートウェイRPCインタフェース」を参照してください。

RTP

リモート・トランザクション・プログラム(RTP)はOLTPの制御下で実行されているカスタマ作成トランザクションで、ユーザーはPL/SQLプロシージャを使用してリモートから呼び出します。ゲートウェイを介してRTPを実行するには、RPCを使用して、ゲートウェイ関数を呼び出すPL/SQLプログラムを実行する必要があります。

TIP

トランザクション・インタフェース・パッケージ(TIP)は、アプリケーションとリモート・トランザクション・プログラムの中間にあるOracle PL/SQLパッケージです。TIPは、ゲートウェイを介してリモート・トランザクション・プログラムを呼び出す一連のPL/SQLストアド・プロシージャです。TIPは、PL/SQLファンクションとUTL_RAWファンクションまたはUTL_PGファンクションを使用して、リモート・ホスト・データの変換と再フォーマットを実行します。

図1-1「WindowsでのゲートウェイとOracleデータベースの関係」は、前の項で説明した用語がゲートウェイのアーキテクチャのどこで使用されているかを示しています。

図1-1 WindowsでのゲートウェイとOracleデータベースの関係

図1-1の説明が続きます
「図1-1 WindowsでのゲートウェイとOracleデータベースの関係」の説明

1.4 ゲートウェイのアーキテクチャ

Oracle Database Gateway for APPCのアーキテクチャはいくつかのコンポーネントで構成されています。

  1. Oracleデータベース

  2. ゲートウェイ

    Oracle Database Gateway for APPCは、必要なバージョンのオペレーティング・システムを実行できるサーバー上にインストールされる必要があります。

  3. OLTP

    OLTPは、SNAまたはTCP/IP通信プロトコルを使用してゲートウェイからアクセス可能である必要があります。多数のOracleデータベースが同一のゲートウェイにアクセスすることができます。システム・ゲートウェイを1つだけインストールして、複数のOLTPにアクセスするように構成することができます。

図1-2は、前の項で説明した、SNAまたはTCP/IPを使用するOracle Database Gateway for APPCのアーキテクチャを示しています。

図1-2 ゲートウェイ・アーキテクチャ

図1-2の説明が続きます
「図1-2 ゲートウェイ・アーキテクチャ」の説明

1.5 ゲートウェイの実装

通信プロトコルがSNAとTCP/IP support for IMS Connectのいずれであるかに関係なく、ゲートウェイの基本的な構造は同一です。ゲートウェイのコンポーネントの一部は、Microsoft Windows上のOracleデータベース・インスタンスと同一です。この項では、次のコンポーネントについて説明します。

ゲートウェイには次のものはありません。

ゲートウェイにはバックグラウンド・プロセスがなく、Oracle Enterprise Managerなどの管理ユーティリティを必要としないため、ゲートウェイ製品を起動する必要はありません。個別のゲートウェイにアクセスするOracleデータベースのユーザー・セッションは、独立したWindows上のプロセスを作成します。そのプロセスがゲートウェイ・サーバーを実行し、SNAまたはTCP/IPの機能を実行してOLTPと通信します。

1.6 ゲートウェイとの通信

ユーザーまたはクライアント・プログラムとゲートウェイの間のすべての通信は、Oracleデータベース上で実行されるTIPを介して処理されます。TIPは次の機能を提供する標準PL/SQLパッケージです。

ゲートウェイ付属のPGAUは、自動的にTIP仕様を生成します。

ゲートウェイはデータベース・リンクを使用してOracleデータベースに識別されます。データベース・リンクは他のOracleデータベースを識別するために使用される同一の構成要素です。ゲートウェイでのファンクションは、PL/SQLで次のように参照されます。

function_name@dblink_name

1.7 リモート・プロシージャ・コール関数

Oracle Database Gateway for APPCには、クライアントがリモート・プロシージャ・コール(RPC)を介して呼び出す関数がひととおり用意されています。これらの関数は、ゲートウェイに対して、開始、データ転送、および別のシステム上のOLTPで実行されているRTPの終了を指示します。

表1-1 に、RPC関数と、ゲートウェイとリモート・ホストで相互に連関して呼び出されるコマンドの一覧を示します。

表1-1 ゲートウェイとリモート・ホストのRPC関数とコマンド

アプリケーション Oracle TIP ゲートウェイ リモート・ホスト

call tip_init

tip_init

call pgainit@gateway

PGAINIT

プログラムの開始

call tip_main

tip_main

call pgaxfer@gateway

PGAXFER

データ交換

call tip_term

tip_term

call pgaterm@gateway

PGATERM

プログラムの終了


1.7.1 RPC関数の説明

次の項では、SNAまたはTCP/IP通信プロトコルを使用するゲートウェイ上で、RPC関数がどのように実行されるかを説明します。

1.7.1.1 リモート・トランザクションの開始

TIPは、ゲートウェイ関数の1つであるPGAINITを使用して、リモート・ホストシステムへの接続を開始します。

通信プロトコルがSNAの場合: PGAINITは、必須SNAパラメータを入力として提供し、ターゲット・トランザクション・プログラムとの対話を開始します。これらのパラメータはSNAネットワークを横断して送信され、PGAINITに対話IDが返されます。それ以降にターゲット・プログラムを呼び出す場合、INPUTパラメータとして対話IDが使用されます。

通信プロトコルがTCP/IPの場合: PGAINITは、必須TCP/IPパラメータを入力として提供します。pg4tcpmapツールを使用してパラメータをマップします。これらのパラメータはTCP/IPネットワークを横断して送信され、ターゲット・トランザクション・プログラムとの対話が開始されます。TCP/IPネットワークからはPGAINITソケット・ファイル記述子が戻されます。それ以降にPGAXFERPGATERMがターゲット・プログラムを呼び出す場合、入力パラメータとしてソケット・ファイル記述子が使用されます。

pg4tcpmapツールの関数と使用方法の詳細は、このガイドの付録B「TCP/IP通信プロトコルでのゲートウェイ初期化パラメータ」と、『Oracle Database Gateway for APPCユーザーズ・ガイド』の第6章を参照してください。

1.7.1.2 データ交換

対話が確立されると、PGAXFERと呼ばれるデータベース・ゲートウェイ関数は、入力変数および出力変数の形態でデータを交換することができます。PGAXFERは、ターゲット・トランザクション・プログラムとの間でバッファを送受信します。ゲートウェイでは、バッファはバイトのRAWストリームとしてのみ認識されます。Oracleデータベース側のTIPは、アプリケーションのPL/SQLデータ型をRAWに変換してからゲートウェイにバッファを送信します。また、結果をアプリケーションに戻す前にも、RAWからPL/SQLデータ型に変換します。

1.7.1.3 リモート・トランザクションの終了

リモート・プログラムとの通信が完了すると、ゲートウェイ関数PGATERMがゲートウェイとリモート・ホストの対話を終了させます。

通信プロトコルがSNAの場合: PGATERMは、対話IDをINPUTパラメータに使用して、対話の終了をリクエストします。

通信プロトコルがTCP/IPの場合: PGATERMはTCP/IP用のソケット・ファイル記述子をINPUTパラメータに使用して、対話の終了をリクエストします。

1.8 SNAを使用するゲートウェイのトランザクション・タイプ

Oracle Database Gateway for APPCは、リモート・ホスト・システムとの間でデータの読み書きを行うトランザクションとして、次の3種類をサポートしています。

トランザクションの種類の詳細は、『Oracle Database Gateway for APPCユーザーズ・ガイド』の第4章「クライアント・アプリケーション開発」の、リモート・ホストのトランザクションの種類に関する説明を参照してください。

次に、Oracle Database Gateway for APPCの機能を示します。

1.9 TCP/IPを使用するゲートウェイのトランザクション・タイプ

TCP/IP for IMS Connectを使用するOracle Database Gateway for APPCは、次の3種類のトランザクション・ソケット接続をサポートしています。