• 1.摘要
  • 2.概述
  • 3.索引顺序文件
  • 4.索引非序文件
  • 5.注意

索引文件

在文件中随机存取记录,需要指导记录的地址。例如,一个客户想要查询银行账户,客户和出纳员都不知道客户记录的地址,客户只能给出纳员自己的帐号(键)。这里,索引文件可以把帐号和记录地址关联起来。

概述

索引文件由数据文件组成,它是带 索引的顺序文件。 索引本身非常小,只占两个字段;顺序文件的键和在磁盘上相应记录的地址。存取文件中的记录需按以下步骤:

(1)整个索引文件都载入到内存中(文件很小,只占用很小的内存空间)。

(2)搜索项目,用高效的算法(如折半查询法)查找目标键。

(3)检索记录的地址。

(4)按照地址,检索数据记录并返回给用户。

由 索引表和 主文件两部分构成。

索引表是一张指示逻辑记录和物理记录之间对应关系的表。索引表中的每项称作索引项。索引项是按键(或逻辑 记录号)顺序排列。若文件本身也是按关键字顺序排列,则称为索引 顺序文件。否则,称为索引非 顺序文件。

索引顺序文件

(Indexed Sequential File)

主文件按 主关键字有序的文件称索引 顺序文件。在索引 顺序文件中,可对一组记录建立一个索引项。这种索引表称为稀疏索引。

索引非序文件

(Indexed NonSequentail File)

主文件按 主关键字无序的文件称索引非 顺序文件。在索引非 顺序文件中,必须为每个记录建立一个索引项,这样建立的索引表称为稠密索引。

索引文件的好处之一就是可以有多个索引,每个索引有不同的键。例如,职员的文件可以按社会保险号或姓名来检索。这种索引文件被称为 倒排文件。

注意

① 通常将索引非 顺序文件简称为索引文件。

② 索引非 顺序文件主文件无序,顺序存取将会频繁地引起磁头移动,适合于 随机存取,不适合于顺序存取。

③ 索引 顺序文件的主文件是有序的,适合于 随机存取、顺序存取。