物理组织
- 常用的磁盘块分配方式
- 数据分类
- 数据主体与辅助数据
- 数据字典:数据的描述信息
- 数据间的联系信息
- 数据存储路径信息
- 其它信息:日志信息,用户信息,审计信息
- 文件记录组织
- 数据文件:储存关系表中元组的记录式文件
- 堆文件组织
- 顺序文件组织:按照某个属性的取值进行排序构成的数据文件
- 散列文件组织
- 聚集文件组织
索引技术
- 索引关键字:查询条件的属性
- 索引项:索引关键字-元组指针
- 索引文件:与某个数据文件相关的所有索引项组成的文件
- 稠密索引:数据文件中每条记录在索引文件中都存在一个对应索引项
- 磁盘I/O时间小
- 索引关键字排序:加速
- 可在内存中操作
- 稀疏索引:数据文件为顺序文件,为每个磁盘块设计一个索引项
- 多级索引:在索引上建立稀疏索引
- 重复键值顺序文件稠密索引
- 为每个索引关键字定义一个索引项(索引文件中索引关键字唯一)
- 读取直到不为 $K$
- 重复键值顺序文件稀疏索引
- 为每个磁盘块定义索引项,关键字值为磁盘块中第一条记录的关键字值(关键字不唯一)
- 重复键值非顺序文件索引
- 多维索引:根据多个属性值的组合来建立的索引文件
B/B+树
- B+树性质
- B+树的查找
- B+树的区间查找
- B+树的插入
- B+树的删除
- B树:索引关键字可以出现在B树任意一个结点中
散列技术
- $h:K\rightarrow B$: 将项值集合映射到桶地址集合
- 扩展散列
- 增加溢出页
- 重组(代价大)
- 使用仅储存桶指针的目录数组,翻倍目录数组
- 位图索引:对于关系上的属性的每个可能取值,bit_v[i]=1 if 取值为 $v_i$