索引结构

1、存储结构由文件构成,这个文件的概念和操作系统中文件的概念类似。
2、一个数据文件能拥有一个或多个索引文件,每个索引文件建立查找键和数据记录之间的关系,查找键的指针指向与查找键具有相同属性值的记录。
3、主索引能确定记录在数据文件中的位置,而辅助索引不能。通常我们会在关系的主键上建立主索引,而在其他的属性上建立辅助索引。

顺序文件:是对关系中的元组按主键进行排序而生成的文件。
稠密索引:如果记录是排好序的,我们可以在记录上建立稠密索引,它是这样一系列存储块:块中只存放记录的键以及指向记录本身的指针。
稀疏索引:只为数据文件的每个存储块设一个键–指针对。

辅助索引:可用于任何索引目的:这种数据结构有助于查找给定一个或多个字段值的记录。辅助索引总是稠密索引;谈论一个稀疏的辅助索引是毫无意义的,因为辅助索引不影响记录的存储位置,我们也不能根据它来预测键值不在索引中显式指明的任何记录的位置。
a、除了能在被组织成顺序文件的关系上建立附加索引外,辅助索引甚至还用作某些数据结构的主键索引。例如“堆”,在这种结构中,关系的记录之间没有特定的顺序。
b、第二种需要辅助索引的常见数据结构是聚集文件。
c、辅助索引中的间接
假如某个索引键值在数据文件中出现n次,那么这个键值在索引文件中就要写n次,避免键值重复的一种简便方法是使用一个称为桶的间接层,它介于辅助索引和数据文件之间。每个查找键K有一个键–指针对,指针指向一个桶文件,该文件中存放K的桶,从这个位置开始,直到索引指向的下一个位置,其间指针指向索引键值为K的所有记录。(在辅助索引上使用间接层的另一个好处:我们通常可以在不访问数据文件记录的前提下利用桶的指针来帮助回答一些查询。特别是,当查询有多个条件是,而每个条件都有一个可用的辅助索引时,我们可以通过在主存中将指针集合求交来找到满足所有条件的指针,然后只需要检索交集中指针指向的记录。)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值