VSAM - 组件


VSAM 由以下组件组成 -

  • VSAM集群
  • 控制区
  • 控制间隔

VSAM集群

VSAM 是用于存储记录的逻辑数据集,称为簇。簇是数据集的索引、序列集和数据部分的关联。VSAM 簇占用的空间被划分为称为控制间隔的连续区域。我们将在本模块稍后讨论控制间隔。

VSAM 集群中有两个主要组件 -

  • 索引组件包含索引部分。索引记录存在于索引组件中。使用索引组件 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)是通过将两个或多个控制间隔放在一起形成的。VSAM数据集由一个或多个控制区域组成。VSAM 的大小始终是其控制区域的倍数。VSAM 文件以控制区域为单位进行扩展。

以下是控制区域的示例 -

控制区