Rational Developer for System z
Enterprise COBOL for z/OS バージョン 4.1 プログラミング・ガイド


VSAM パフォーマンスの向上

多くの場合、COBOL および VSAM のパフォーマンスの調整を担当するのはシステム・プログラマーです。 アプリケーション・プログラマーとしては、以下にリストされている VSAM の局面を制御することができます。

表 1. VSAM パフォーマンスを改善する方法
VSAM の局面 行うことができること 理由の説明とコメント
アクセス方式サービス・プログラムの呼び出し IDCAMS を使用した、代替索引の事前作成  
バッファリング 順次アクセスの場合は、もっと多くのデータ・バッファーを要求し、ランダム・アクセスの場合は、もっと多くの索引バッファーを要求します。 ACCESS IS DYNAMIC の場合は、BUFNDBUFNI の両方を指定します。

アプリケーションが対話式に実行される場合を除いて、追加のバッファーのコーディングを避けます。さらに、入出力遅延が原因であることが考えられる応答時間問題が生じた場合にのみ、バッファーをコーディングするようにします。

デフォルトは、1 つの索引バッファー (BUFNI) と 2 つのデータ・バッファー (BUFND) です。
アクセス方式サービス・プログラムを使用してのレコードのロード 以下の場合は、アクセス方式サービス・プログラムの REPRO コマンドを使用します。
  • ターゲット索引付きデータ・セットに既にレコードが入っている。
  • 入力順次データ・セットに、更新されるかまたは索引付きデータ・セットに挿入されるレコードが入っている。

COBOL プログラムを使用してファイルをロードする場合は、OPEN OUTPUT および ACCESS SEQUENTIAL を使用します。

これらの条件のもとでは、REPRO コマンドは、COBOL プログラムと同じ速さまたはそれよりも速く、索引付きデータ・セットを更新することができます。
ファイル・アクセス・モード 最高のパフォーマンスを得るためには、順次にレコードにアクセスします。 動的アクセスは、順次アクセスよりは効率が低く、ランダム・アクセスよりは効率的です。ランダム・アクセスでは、VSAM がそれぞれの要求について索引にアクセスしなければならないため、EXCP が増加します。
キーの設計 レコード内のキーを、高位部分が比較的一定になり、低位部分が頻繁に変わるように設計します。 この方法を使用すると、キーが最適に圧縮されます。
複数の代替索引 複数の代替索引の使用を避けます。 更新は基本パスを介して適用されなければならず、複数の代替パスを介して反映されることになるため、複数の代替索引を使用すると、パフォーマンスが低下する可能性があります。
相対ファイル編成 VSAM 可変長相対データ・セットではなく、VSAM 固定長相対データ・セットを使用します。 VSAM 固定長相対データ・セットは、VSAM 可変長相対データ・セットと比較して、スペース的には効率がよくありませんが、実行時の効率はよくなります。
制御インターバル・サイズ (CISZ) システム・プログラマーに、VSAM データ・セットのデータ・アクセスおよび将来の成長性に関する情報を提供してください。この情報から、システム・プログラマーは最適な制御インターバル・サイズ (CISZ) および FREESPACE サイズ (FSPC) を判別することができます。

制御域 (CA) の分割を最小限にするために、CISZ および FSPC に適切な値を選択します。クラスターに対して LISTCAT ALL コマンドを出して、現在の CA 分割の数を診断してから、すべての CA 分割を定期的に省略するためにクラスターを (EXPORTIMPORT、または REPRO を使用して) 圧縮することができます。

VSAM は、直接アクセス記憶装置 (DASD) の使用アルゴリズムに最も適するように CISZ を計算しますが、これがアプリケーションにとっては効率的でないことがあります。

4K の平均 CISZ はほとんどのアプリケーションに適しています。CISZ をより小さくすることは、挿入を犠牲にして (つまり、CISZ 分割がより多くなり、結果としてデータ・セット内のスペースがより多くなる)、ランダム処理の検索をより速くすることを意味します。CISZ をより大きくすると、各 READ についてチャネル間で転送されるデータがより多くなります。これは、大きな OS BLKSIZE と同様に、順次処理の場合に効率がよりよくなります。

多くの制御域 (CA) 分割は、VSAM のパフォーマンスにとっては不利です。FREESPACE 値は、ファイルの使用法に応じて、CA 分割に影響を与える場合があります。

関連タスク
VSAM ファイルのアクセス・モードの指定  
z/OS DFSMS: Using Data Sets (リソース・プールの作成、フリー・
スペースの最適なパーセントの選択)


ご利用条件 | フィードバック

このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)