��⑴�访问类型:能有效支持的数据访问类型,包括根据指定的属性值进行查询,以及根据给定属性值的范围进行查询;
��⑵�访问时间:访问一个或多个数据项所需要的时间;
��⑶�插入时间:在文件中插入一个新数据项所需要的时间,包括找到插入该项的正确位置和修改索引结构所需要的时间;
��⑷�删除时间:在文件中删除一个数据项所需要的时间,包括找到待删除项的正确位置和修改索引结构所需要的时间;
��⑸�空间开销:索引结构所需要的额外存储空间。一般来说,索引是用空间代价来换取系统性能的提高。在这里我们要注意到,索引在提高数据查询性能的同时,要影响数据插入、删除和更新的性能。因为在插入、删除和更新数据时会破坏索引结构,因此维护索引结构也要花费一定的时间。这就是为什么在建立数据库的初期一般先不建立索引,而等数据库比较稳定(插入和删除操作不太频繁)时才建立索引的原因。

��许多查询只涉及文件中的少量记录。例如,查询"Perryridge分支机构的所有帐户信息"就只涉及所有帐户记录中的一部分。在这种情况下,如果系统将所有记录依次读出,并逐个检查各记录的branch-name字段是否为"Perryridge",效率显然很低。理想的做法是系统能够直接定位这些记录。为了实现这种访问数据的方式,我们设计了数据文件的附加结构,并将其同文件联系起来。这就是本章的主要内容--索引,索引最早是由Bayer和McCreight在1972年提出,而Cormen在1990年对索引的基本数据结构进行了详细的讨论。