Vsam-components
提供:Dev Guides
VSAM-コンポーネント
VSAMは次のコンポーネントで構成されています-
- VSAMクラスター
- コントロールエリア
- 制御間隔
VSAMクラスター
VSAMは、レコードを保存するための論理データセットであり、クラスターと呼ばれます。 クラスターは、データセットのインデックス、シーケンスセット、およびデータ部分の関連付けです。 VSAMクラスターが占有するスペースは、制御インターバルと呼ばれる連続した領域に分割されます。 制御間隔については、このモジュールの後半で説明します。
VSAMクラスターには2つの主要なコンポーネントがあります-
- *インデックスコンポーネント*にはインデックス部分が含まれます。 インデックスレコードは、インデックスコンポーネントに存在します。 インデックスコンポーネントを使用すると、VSAMはデータコンポーネントからレコードを取得できます。
- *データコンポーネント*にはデータ部分が含まれます。 実際のデータレコードは、データコンポーネントに存在します。
制御間隔
VSAMの制御間隔(CI)は、非VSAMデータセットのブロックと同等です。 非VSAMメソッドでは、データの単位はブロックによって定義されます。 VSAMは、制御間隔と呼ばれる論理データ領域で動作します。
制御間隔は、ディスクとオペレーティングシステム間の転送の最小単位です。 レコードがストレージから直接取得されるたびに、レコードを含むCI全体がVSAM入出力バッファーに読み込まれます。 次に、目的のレコードがVSAMバッファーから作業域に転送されます。
制御間隔は-
- 論理レコード
- 制御情報フィールド
- フリースペース
VSAMデータセットがロードされると、制御間隔が作成されます。 デフォルトの制御間隔サイズは4Kバイトで、最大32Kバイトまで拡張できます。
制御間隔の分析
以下は、上記のプログラムで使用される用語の説明です-
- R1..R5 -制御間隔に保存されるレコード。
- FS -FSは空き領域であり、データセットをさらに拡張するために使用できます。
- RDF -RDFはレコード定義フィールドとして知られています。 RDFは3バイト長です。 レコードの長さを記述し、同じ長さの隣接するレコードの数を示します。
- CIDF -CIDFは、制御間隔定義フィールドとして知られています。 CIDFは4バイト長で、制御間隔に関する情報が含まれています。
コントロールエリア
制御領域(CA)は、2つ以上の制御間隔をまとめることによって形成されます。 VSAMデータセットは、1つ以上のコントロールエリアで構成されます。 VSAMのサイズは、常にその制御域の倍数です。 VSAMファイルは、制御域の単位で拡張されます。
以下は、コントロールエリアの例です-