Oracle Connectには、パフォーマンスを改善できるいくつかのチューニング・パラメータが含まれています。特に、デーモンを構成して、IBM OS/390またはz/OSプラットフォームとクライアント間の通信を最適化できます。さらに、バインディング環境をチューニングして、リクエスト処理を最適化できます。
この項の構成は、次のとおりです。
デーモン・ワークスペースは、サーバー・プロセスをクライアントに割り当てる役割を果たします。クライアント・リクエストに対してサーバー・プロセスが常に使用できるように、ワークスペースを構成してサーバー・プロセスのプールを使用できます。
Oracle Studioを使用して、デーモンおよびデーモン・ワークスペース・パラメータを保守し、プール内のサーバー・プロセスの割当てや管理を制御できます。
また、複数のデーモン・ワークスペース構成を使用できます。このため、複数のワークスペースを作成して異なるアダプタで使用できます。
新規のデーモン構成を追加するには、Oracle Studioを使用します。様々な状況に対して、異なるデーモン構成を設定できます。
新規のデーモン・ワークスペース構成を追加する手順は、次のとおりです。
「スタート」メニューから、「プログラム」→「Oracle」→「Studio」を選択します。
Configuration Explorerで、「Oracle StudioでのIBM OS/390またはz/OSプラットフォームの設定」で定義したコンピュータのノードを開きます。
「Daemons」ノードを開きます。このコンピュータで使用可能なデーモン構成がリストされます。
「IRPCD」を右クリックして「New Workspace」を選択します。「New Daemon Workspace」画面が表示されます。
新規ワークスペースの名前を指定し、オプションで説明を追加します。
このワークスペースをデフォルト設定にするか、または既存のワークスペースのプロパティをコピーするかを指定します。
既存のワークスペースのプロパティをコピーするには、「Ellipsis」をクリックし、プロパティのコピー元のワークスペースを選択します。
「Next」をクリックします。「Select Scenario」画面が表示されます。
「Application Server using connection pooling」を選択して「Next」をクリックします。
引続きウィザードに従って、ワークスペースに関する必要な値を指定します。
ワークスペースの定義を完了するには、「Finish」をクリックします。
「IRPCD」デーモン・ノードにワークスペースが表示されます。
ワークスペースを編集するには、次の表に示すタブを使用します。
表5-1 ワークスペース定義のタブ
タブ | 説明 |
---|---|
WS Info |
サーバー・タイプ、ワークスペースの起動に使用するコマンド・プロシージャ、このワークスペースに関連付けられているバインディング構成、タイムアウト・パラメータなど、一般情報を指定します。 |
WS Server Mode |
ワークスペースによって起動し、クライアントに割り当てられたサーバーの操作を制御する機能など、ワークスペース・サーバー情報を指定します。 |
ワークスペース・ロギング |
ロギングのパラメータ、およびログ・ファイルで使用する書式を指定します。 |
ワークスペース・セキュリティ |
管理権限、ユーザー・アクセス、ワークスペースへのアクセスで使用可能なポート、およびワークスペース・アカウント仕様を指定します。 |
WS Governing |
このタブは、OracleAS Adapter for VSAMでは使用できません。 |
Oracle Studioを使用してこれらのタブにアクセスする手順は、次のとおりです。
「スタート」メニューから、「プログラム」→「Oracle」→「Studio」を選択します。
Configuration Explorerで、必要なコンピュータのノードを開きます。
「Daemons」ノードを開きます。このコンピュータで使用可能なデーモン構成がリストされます。
「IRPCD」ノードを開きます。デーモン・ワークスペースがリストされます。
必要なワークスペースを右クリックして「Edit Workspace」を選択します。
編集する情報が含まれているタブを選択します。これらのタブ、およびタブに含まれるフィールドの詳細は、「ワークスペース」を参照してください。
ワークスペースを編集した後、「Save」をクリックします。
サーバー・モードは、デーモンが新規プロセスを起動する方法を示します。デーモンでは、次のサーバー・モードをサポートしています。
singleClient: 各クライアントが専用のサーバー・プロセスを受け取ります。サーバー・プロセスが実行されるアカウントは、クライアントのログイン情報、または特定のサーバー・ワークスペースによって決定されます。
このモードを使用すると、サーバーは特定のユーザー・アカウントで実行され、各クライアントは独立して稼働できます(各クライアントが独自のプロセスを受け取るため)。ただし、このサーバー・モードを使用すると、プロセスの起動時間に起因する高いオーバーヘッドが発生し、大量のサーバー・リソースを使用する場合があります(同時クライアントと同じ数のサーバー・プロセスが必要になるため)。
multiClient: 複数のクライアントが1つのサーバー・プロセスを共有し、クライアントは逐次処理されます。
このモードを使用すると、サーバー・プロセスがすでに初期化されているため、オーバーヘッドが小さくなります。ただし、複数のクライアントが同じサーバー・プロセスを共有するため、特に、長時間かかる問合せを発行した場合など、相互に影響を与えることがあります。
1つのプロセスを共有するクライアントの数は、「Clients per server limit」(現行ワークスペースの1つのサーバー・プロセスが受け入れる同時クライアントの最大数)で決定します。
reusable: これは、singleClientモードの拡張です。クライアント処理が終了した後、サーバー・プロセスを終了せずに別のクライアントで使用できます。これによって、起動時間が短縮され、アプリケーション起動のオーバーヘッドも小さくなります。
このモードを使用すると、サーバーがすでに初期化されているため、singleClientモードのようにオーバーヘッドが高くなりません。ただし、このサーバー・モードの場合は、大量のサーバー・リソースを使用する場合があります(同時クライアントと同じ数のサーバー・プロセスが必要になるため)。
他のモードを設定する場合は、「Reuse limit」の値(特定のサーバー・プロセスを再利用できる最大回数、つまり、サーバー・プロセスが終了するまでにこのサーバー・プロセスを利用できるクライアントの数)を指定してプロセスを再利用できる回数を設定すると、サーバー・プロセスが再利用可能になります。サーバーを再利用することによって、初期化を繰り返す必要がなくなるため、パフォーマンスが向上します。ただし、長期にわたり再利用を繰り返すと、メモリー・リークが発生するリスクが高くなります。「Reuse limit」フィールドのデフォルト値は「None」で、再利用回数に制限がないことを示します。
次の図に示すように、デーモン・ワークスペース・エディタの「WS Server」タブでサーバー・モードを設定します。
サーバー・モードを使用するとき、サーバー・プロセスのプールを指定できます。サーバー・プロセスは、デーモンの起動時に起動し、プール内で保守されます。サーバー・プロセスを新規クライアント・リクエストで使用する場合は、プールから使用できます。これによって、初期化の時間がかかりません。クライアントがサーバー・プロセスをリクエストするたびに新規サーバー・プロセスを起動するのではなく、クライアントは使用可能なプロセスのプールからすぐにプロセスを受け取ります。クライアントが処理を終了すると、使用されたサーバー・プロセスは終了するか、再利用可能なサーバーが指定されている場合はプールに戻されます。
サーバー・プロセスのプールを設定するには、「WS Server」タブで次のパラメータを指定します。
Initial number of servers: デーモンの起動時にこのワークスペースに対して事前起動されるサーバー・プロセス数。新規クライアント・プロセスでこれらのサーバー・プロセスを使用できるため、初期化時間が最小限になります。クライアントがサーバー・プロセスをリクエストするたびに新規サーバー・プロセスを起動するのではなく、デーモンは使用可能なサーバーのプールからクライアントにサーバーをすぐに割り当てます。使用可能なサーバー・プロセスの数が「Minimum number of available servers」フィールドに指定した値を下回ると、デーモンは使用可能なサーバーが指定の数に達するまでサーバー・プロセスを再度起動します。このパラメータのデフォルトは0(ゼロ)で、このワークスペースに対して事前起動されるサーバーがないことを示します。
Minimum number of available servers: Oracle Connectのデーモンが新規サーバー・プロセスの作成を再開する前に、事前起動されるサーバーのプール内に存在するサーバー・プロセスの最小数(前述の「Initial number of servers」フィールド値で指定した値以内)。 このパラメータを「Initial number of servers」フィールド値より大きい値に設定すると、デーモンでは、「Initial number of servers」フィールドで指定した値と同じ値とみなします。
この場合、サーバー・プロセスがプールから削除されてクライアントに割り当てられるたびに、新規サーバー・プロセスが起動してプールに追加されます。このパラメータのデフォルトは0(ゼロ)で、使用可能なサーバーがない場合のみ新規サーバーが作成されることを示します。
Set maximum number of servers: このワークスペースに対してプールされる使用可能なサーバー・プロセスの最大数。サーバーが再利用可能な場合は、クライアントがサーバーから切断されると、デーモンはそのサーバーを使用可能なサーバーのプールに戻します。最大数に達すると、余分なサーバー・プロセスは廃棄されます。
Number of sub-tasks: デーモンの起動時に、このワークスペースに対して事前起動されるサーバーのサブタスク数。前述のようにサーバー・プロセスのプールを設定する以外に、このパラメータを指定して追加のサーバー・プロセスをサブタスクとして設定できます。つまり、サーバーを10、事前起動されるサブタスクを10に設定すると、100のタスクが起動します(1つのプロセスにつき10のサブタスク)。
バインディング構成には、次の情報が含まれます。
環境設定。バインディングで定義されたすべてのアダプタで使用する環境を構成するために使用されます。
現行コンピュータのアプリケーション・アダプタ。
Oracle Studioで環境設定を構成する手順は、次のとおりです。
「スタート」メニューから、「プログラム」→「Oracle」→「Studio」を選択します。
Configuration Explorerで、必要なコンピュータのノードを開きます。
「Bindings」ノードを開きます。このコンピュータで使用可能なバインディング構成がリストされます。
「NAV」を右クリックして「Edit Binding」を選択します。
「Properties」タブで、必要に応じて環境設定を編集します。環境設定を編集するには、プロパティ・カテゴリを開き、編集する値を選択します。
次の図に、バインディングの「Properties」タブを示します。
バインディング環境は、次のカテゴリに分類されます。
これらのカテゴリについては、次の各項で説明します。
次の表に、通信バッファを定義するパラメータを示します。
次の表に、デバッグ操作とロギング操作を定義するパラメータを示します。
表5-3 debugカテゴリのパラメータ
パラメータ | 説明 |
---|---|
|
|
このパラメータは、OracleAS Adapter for VSAMでは使用できません。 |
|
|
このパラメータは、OracleAS Adapter for VSAMでは使用できません。 |
|
|
メッセージ用ログ・ファイルの高位修飾子。 次のタイプのメッセージがログに書き込まれます。
|
|
このパラメータは、OracleAS Adapter for VSAMでは使用できません。 |
|
このパラメータは、OracleAS Adapter for VSAMでは使用できません。 |
|
このパラメータは、OracleAS Adapter for VSAMでは使用できません。 |
|
このパラメータは、OracleAS Adapter for VSAMでは使用できません。 |
次の表に、グローバリゼーション・サポートおよびテンポラリ・ファイルが書き込まれるディレクトリを含めて、その他の操作を定義するパラメータを示します。
表5-4 miscカテゴリのパラメータ
パラメータ | 説明 |
---|---|
グローバリゼーション・サポートで、ワークスペースのコードページを識別するために使用します。 関連項目: 付録E「グローバリゼーション設定」 |
|
変換エラーが発生した場合のデータ型変換ポリシー。 0(デフォルト): 出力列のデータはNULLまたは空の値になります。 1: 出力列のデータはNULLまたは空の値になり、エラーがログにレポートされます。 2: エラーがレポートされ、処理が停止します。 |
|
このパラメータは、OracleAS Adapter for VSAMでは使用できません。 |
|
アプリケーション言語を識別します。デフォルトのコードページは、このパラメータで指定された値に基づいて選択されます。関連項目: 付録E「グローバリゼーション設定」 |
|
データ型が「
キャラクタ・セットを右から左に読み取るかどうか(中東地域のキャラクタ・セットの場合など)。デフォルトはfalseです。 |
|
テンポラリ・ファイルが書き込まれるディレクトリ。ハッシュ結合で使用したりファイルのソート用に作成されるテンポラリ・ファイルも含まれます。デフォルトは、現行の高位修飾子です。 |
|
2桁の年を4桁の年に変換する方法を決定します。後述するように、パラメータyear2000Policyが設定されていない場合、またはポリシーで定義された範囲外の値が設定されている場合、デフォルト値は5で、「Sliding Base Year」ポリシーが使用されます。次の2つのポリシーが提供されています。
|
次のパラメータを使用して、パフォーマンスをカスタマイズできます。
none(デフォルト): すべての行の最適化が使用されます。
first: 行の取得時に問合せで生成された結果が使用されることを前提に、最初の行の最適化が実行されます。問合せオプティマイザは、最初の行をできるだけ早く取得する方針を使用します。その結果、すべての行を取得する全体時間が遅くなる場合があります。
all: すべての行が取得された後に問合せで生成された結果が使用されることを前提に、最適化が実行されます。問合せオプティマイザは、すべての行をできるだけ早く取得する方針を使用します。その結果、最初の数行を取得する時間が遅くなる場合があります。
集計問合せでは、このパラメータの値に関係なく、すべての行の最適化が自動的に使用されます。
次の表に、問合せの処理方法を微調整できるパラメータを示します。
表5-5 queryProcessorカテゴリのパラメータ
パラメータ | 説明 |
---|---|
内部的に使用されます。 |
|
内部的に使用されます。 |
|
|
|
コンパイル後にSQL問合せで使用可能な最大サイズ。デフォルト値は150KBです。 |
|
内部的に使用されます。 |
|
内部的に使用されます。 |
|
問合せで参照する列の最大数。デフォルトは500列です。 |
|
キャッシュ・メモリーに格納されるSQL問合せの最大数。デフォルト値は3です。 |
|
|
|
|
|
内部的に使用されます。 |
|
|
|
trueに設定すると、問合せプロセッサは行の取得に失敗した後もデータのフェッチを継続します。 |
|
|
|
内部的に使用されます。 |
|
|
|
内部的に使用されます。 |
|
内部的に使用されます。 |
|
内部的に使用されます。 |
|
内部的に使用されます。 |
|
内部的に使用されます。 |
|
内部的に使用されます。 |
|
|
|
式リストの最大の深さ。 |
|
内部的に使用されます。 |
|
内部的に使用されます。 |
|
SQL問合せ内の文字列の最大長。最小値は64です。デフォルト値は350です。 |
|
内部的に使用されます。 |
|
|
次の表に、トランザクションのサポートを定義するパラメータを示します。
表5-6 transactionカテゴリのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
|
|
|
|
トランザクションの使用時にアクティビティを記録するログ・ファイルの高位修飾子と名前。 RRSがOS/390またはz/OSプラットフォーム上で稼働していない場合、 |
|
トランザクションが起動した後、そのトランザクションでリカバリ操作が試行可能になるまでの時間(分単位)。デフォルトは15分です。 |
|
このパラメータは、OracleAS Adapter for VSAMでは使用できません。 |
次の表に、チューニングを定義するパラメータを示します。
表5-7 tuningカテゴリのパラメータ
パラメータ | 説明 |
---|---|
キャッシュ・メモリーの最大サイズ。このキャッシュは、一時的にメモリーが必要な場合(Oracle Connectで問合せ出力、副問合せまたは集計問合せのデータをソートする場合)に使用されます。このキャッシュ・サイズは、ハッシュ結合や参照結合では使用されません(「 |
|
ソート・バッファの最大サイズ。このパラメータは、 |
|
索引キャッシュの最大サイズ。このキャッシュは、ハッシュ結合や参照結合では使用されません。デフォルト値は |
|
各ハッシュ結合または参照結合で使用可能なキャッシュ・メモリー量。デフォルトは |
|
ハッシュ結合の両側が同時に読み取られます。 デフォルトは |
|
問合せでハッシュ結合用に使用できるディスク領域の最大量(MB単位)。デフォルトはunlimited(割り当てられたディスク上のすべての空き領域)です。このパラメータによって割り当てられた領域以上に問合せで領域が必要な場合は、問合せの実行が停止します。このパラメータの最小値は20MBです。 テンポラリ・ファイルは、問合せごとに書き込まれます。したがって、複数のユーザーが同時に問合せを実行可能な場合は、割当て可能な領域の合計が使用可能な領域を常に超えないように、使用可能な領域量を調整してください。 |
|
ハッシュ結合の実行時に使用するために、問合せで一度に開くことができるファイルの最大数。このパラメータには、システムの最大数を超えない数値を割り当てる必要があります。 デフォルトは |
アダプタ構成はプラットフォーム間で移行できます。構成情報は、最初にソース・プラットフォームのOracle Connectリポジトリに格納され、XMLファイルにエクスポートされてから、ターゲット・プラットフォームにインポートできます。
構成を移行するとき、ソース・プラットフォームに固有のファイル名やパスはすべて、ターゲット・プラットフォームの有効なファイルに変更する必要があることに注意してください。
Oracle Studioを使用してアダプタ構成を移行する手順は、次のとおりです。
「スタート」メニューから、「プログラム」→「Oracle」→「Studio」を選択します。
Configuration Explorerで、必要なコンピュータを右クリックし、「Export XML definitions」を選択します。
コンピュータのXML表現とその完全な構成が格納されているXMLファイルのパスと名前を指定します。
XML定義のパスをターゲット・プラットフォームで必要なパスに編集します。たとえば、serverLogFileパラメータの設定は、プラットフォームに応じて変更が必要になる場合があります。
「Oracle StudioでのIBM OS/390またはz/OSプラットフォームの設定」の説明に従い、Oracle Studioでソース・プラットフォームと同じ設定方法でターゲット・プラットフォームを設定します。
Configuration Explorerで、ターゲット・コンピュータを右クリックし、「Import XML definitions」を選択します。
XMLファイルをターゲット・プラットフォームにインポートします。
Oracle Connectは、プラットフォームのセキュリティ・システムの範囲内で動作します。 たとえば、RACFがインストールされたOS/390コンピュータでは、ワークスペースのサーバー・モードがマルチタスクに設定されている場合、クライアント接続に応じてアドレス空間のタスクごとにRACROUTE VERIFY
が実行されます。
さらに、Oracle Connectでは次のセキュリティが提供されています。
バイナリXML暗号化メカニズム: 次のようにアクティブ化します。
サーバーへのクライアントの最初のメッセージには、事前に定義された共有鍵が含まれています。この共有鍵は、鍵の名前と値が接続文字列に含まれます。 サーバーは、固有のオブジェクト・ストア(NOS)から、クライアントから渡された鍵の名前に対する鍵値を取得します。
サーバーは共有鍵を使用して、クライアントに暗号化して返すランダム128ビットのRC4セッション鍵を生成します。 事前に定義された共有鍵がない場合、事前定義済みのハードコードされた鍵を使用します(この鍵はクライアントおよびサーバー上にハードコードされます)。
セッション全体の暗号化の有無にかかわらず、通信時、パスワードは128ビットのRC4セッション鍵を使用して常に暗号化されます。
事前に定義された共有鍵がある場合、セッション全体が暗号化されます。 共有鍵がない場合、パスワードの交換のみが暗号化されます(ハードコードされた鍵を使用)。
資格証明: ネットワーク上で交換されるパスワードとユーザー名は、事前定義済みのハードコードされた128ビットのRC4セッション鍵を使用して暗号化されます。
設計時: Oracle Studio内で、Oracle Studio自体へのアクセス権限を付与し、コンピュータ、ユーザー・プロファイルおよびワークスペースへのアクセス権限を付与するためのセキュリティ。
実行時: アクセス用のデーモンの制御を含めて、VSAMへのアクセスで使用するセキュリティ。
設計時セキュリティの設定については、次の各項で説明します。
Oracle Studioへのアクセスの保護については、「Oracle Studioへのパスワード・アクセスの設定」で説明します。
Oracle Studioでコンピュータを構成する権限の保護については、「管理権限を持つユーザーの指定」で説明します。
ユーザー・プロファイルへのアクセスを保護するには、Oracle Studioで該当するユーザー・プロファイルを右クリックし、「Change Master Password」を選択します。表示されたダイアログ・ボックスで、今後、特定のユーザー・プロファイルを編集する際に入力する必要があるパスワードを指定します。
ワークスペースへのアクセスを保護するには、Oracle Studioで該当するワークスペースを右クリックし、「Set Authorization」を選択します。表示されたダイアログ・ボックスで、今後、特定のワークスペースを編集する際に入力する必要がある有効なユーザーとパスワードを指定します。
実行時に、セキュリティは次のように実装されます。
クライアント・リクエストでデーモンを介してレガシー・プラットフォームにアクセスする場合は、匿名アクセスが許可されるか、またはユーザー・プロファイルにコンピュータの有効なユーザー名とパスワードを入力する必要があります。 J2CA 1.5 VSAMアダプタのuserName
プロパティとpassword
プロパティは、デーモンにアクセスするためにこの段階で使用されます。
注意: デーモンへのアクセスに使用するユーザー名は、使用するユーザー・プロファイルの名前と同じである必要があります。 |
クライアントによるアクセスは、Oracle Studioの「WS Security」タブの「Workspace Access」セクションで指定されたポートのリストに従って、有効なポートを介する必要があります。「WS Security」タブの詳細は、「ワークスペース・セキュリティ」を参照してください。
注意: NATプロトコルを使用してファイアウォールを介したレガシー・プラットフォームへのアクセスは、コンピュータがOracle Studioに追加されたときに指定します。 |
クライアントは、サーバー・プロセスを割り当てるために、ワークスペースへの匿名アクセスが付与されるか、またはOracle Studioの「WS Security」タブの「Workspace Users」セクションにリストされる必要があります。「WS Security」タブの詳細は、「ワークスペース・セキュリティ」を参照してください。
デーモンの起動や停止、サーバー・プロセスの終了など、デーモンでコマンドを実行する機能を使用できるのは、Oracle Connectにデーモン管理者として登録された管理者のみです。「デーモン・セキュリティ」で説明するように、クライアントはOracle Studioの「Daemon Security」タブで有効なデーモン管理者として登録されます。
OracleAS Adapter for VSAMでは、CICS管理のVSAMデータにアクセスする場合、グローバル・トランザクションをサポートし、分散トランザクションに完全に関与できます。
注意: CICS管理のOracleAS Adapter for VSAMでグローバル・トランザクションを使用するには、RRSがインストールおよび構成されている必要があります。 |
グローバル・トランザクションを使用するには、次の図に示すように、convertAllToDistributedトランザクション環境プロパティをtrue
に設定します。
グローバル・トランザクション機能を使用してOS/390またはz/OSコンピュータ上のデータにアクセスするには、ATTSRVR JCLのすべてのライブラリをAPF許可ライブラリとして定義します。
DSNをAPF許可として定義するには、SDSF画面で次のコマンドを入力します。
"/setprog apf,add,dsn=instroot.library,volume=ac002"
ac002はOracle Connectをインストールしたボリュームで、INSTROOTはOracle Connectのインストール先の高位修飾子です。
Oracle Connectのインストール・ボリュームがSMSで管理されている場合は、APF許可を定義するときに、SDSF画面で次のコマンドを入力します。
"/setprog apf,add,dsn=instroot.library,SMS"
コンピュータのIPL(再起動)後であっても、ライブラリがAPF許可であることを確認します。
次の図に示すように、トランザクション環境プロパティlogFile
にキーワードNORRS
が含まれる場合は、RRSが実行されていないとき、OracleAS Adapter for VSAMは唯一の1フェーズ・コミット・リソースとして分散トランザクションに関与できます。
注意: ログ・ファイルが指定されていない場合、RRSが実行していないときのlogFile パラメータの書式は,NORRS になります。 |