zoukankan      html  css  js  c++  java
  • 数据库系统实现 第4章 索引结构

     几种索引:

    1)排序文件上的简单索引

    2)非排序文件上的辅助索引

    3)B树

    4)散列表

    主索引

    1)稠密索引:每个主键都有

    2)稀疏索引:每个数据块存放一个键

    3)多级索引:索引上的索引

    4)重复查找键的索引: 比较简单的解决方法是在稠密索引上的每种键值都建立一个索引

    数据修改期间的索引维护

    1)创建或删除一个空溢出块:对两种索引均无影响,因为稠密索引针对记录,稀疏索引针对基本存储快

    2)创建或删除文件的块:对稠密索引无影响,对稀疏索引有影响

    3)插入或删除记录:对稠密索引有相同的影响。当不产生额外块的时候对稀疏索引无影响

    4)移动一个记录,对稠密索引有影响,当记录的移动改变某个块的第一条的时候对稀疏索引有影响。

    辅助索引

    主索引决定了被索引记录的位置,而当查询条件不是对主键的判断的时候,可以利用辅助索引来加速。

    CREATE INDEX DBindex ON MovieStar(birthdate);

    此时

    SELECT name,address

    FROM MovieStar(birthdate);

    WHERE birthdate = DATE'1950-01-01';

    这条查询就会变快

    辅助索引的设计

    辅助索引是稠索引,通常具有重复值,为了便于快速找到给定键值的索引,可是对其构建二级索引。

    B树

    每个B树的索引都有一个参数n,决定了每个存储块对应n个键值与n+1个指针。

    B树中有几个重要的规则

    1)根节点中至少有两个指针被使用,所有指针指向B树的下一层

    2)叶节点中最后一个指针指向它右边的下一个也 

  • 相关阅读:
    vue vmodel input type=checkbox的问题
    springboot配置文件优先级
    原生js实现复制功能
    Long.valueOf和Long.parseLong的区别
    程序员学习参考
    国外开源项目
    .NET快速入门教程
    Microsoft Update Catalog 离线安装包下载
    php header示例代码
    CentOS下iptables设置
  • 原文地址:https://www.cnblogs.com/icodefive/p/7482260.html
Copyright © 2011-2022 走看看