ISAM文件和VSAM文件是常用的索引顺序文件 ISAM文件 ISAM为Indexed Sequential Access Methed(索引顺序存取方法)的缩写它是一种专为磁盘存取文件设计的文件组织方式采 用静态索引结构由于磁盘是以盘组柱面和磁道三级地址存取的设备则可对磁盘上的数据文件建立盘组柱面和磁道多级索引 下面只讨论在同一个盘组上建立的ISAM文件 ISAM文件的组成 ISAM文件由多级主索引柱面索引磁道索引和主文件组成 文件的记录在同一盘组上存放时应先集中放在一个柱面上然后再顺序存放在相邻的柱面上对同一柱面则应按盘面的次序 顺序存放 【例】图所示的文件是存放在同一个磁盘组上的ISAM文件 其中 ① C表示柱面; ② T表示磁道; ③ C i T i 表示i号柱面j号磁道; ④ R i 表示主关键字为i的记录 分析 从图中可看出主索引是柱面索引的索引这里只有一级主索引若文件占用的柱面索引很大使得一级主索引也很大时可采 用多级主索引当然若柱面索引较小时则主索引可省略 通常主索引和柱面索引放在同一个柱面上(如图是放在号柱面上)主索引放在该柱面最前的个磁道上其后的磁道中存放 柱面索引每个存放主文件的柱面都建立有一个磁道索引放在该柱面的最前面的磁道To上其后的若干个磁道是存放主文件记录的 基本区该柱面最后的若干个磁道是溢出区基本区中的记录是按主关键字大小顺序存储的溢出区被整个柱面上的基本区中各磁道 共享当基本区中某磁道溢出时就将该磁道的溢出记录按主关键字大小链成一个链表(以下简称溢出链表)放人溢出区 各级索引中的索引项结构 注意 磁道索引中的每一个索引项都由两个子索引项组成基本索引和溢出索引项 |