索引与哈希
第4章 索引与哈希 索引的基本概念 树结构索引 ISAM索引 B+树索引 基于哈希的索引 静态哈希 可扩展哈希 线性哈希 4.1 索引的基本概念 一个索引是用来基于查找关键字字段加快查找速度,查找关键字不同于关键字的概念,一般索引由查找关键字值,记录指针的集合组成 索引性能评价指标 访问类型:值查找与范围查找 时间开销:查找时间、插入时间、删除时间 空间开销:索引结构需要额外存储空间 (3) 索引分类 -- 主索引与辅助索引 主索引:如果数据文件是按某个索引的查找关键字来排序的话则称该索引是主索引,主索引的记录排序与数据文件相同 辅助索引:如果数据文件的排序关键字与某个索引的查找关键字不同的话则称该索引为辅助索引,辅助索引的记录排序与数据文件不同 顺序文件:一个主索引文件+在查找关键字上排序的数据文件 (3) 索引分类 -- 聚簇与非聚簇索引 (3) 索引分类 --稠密索引和稀疏索引 稠密索引:在数据文件中对于每个查找关键字的值都对应一个索引记录或索引入口 稀疏索引:在数据文件中某些(而不是所有)查找关键字的值在索引文件中存在索引记录 4.2 树结构索引 -- ISAM 索引顺序存取方法(ISAM—Indexed Sequential Access Method ) ISAM索引结构如下图所示 索引入口:查找关键字值, pid 当索引文件本身变得很大时,可以形成索引文件的索引,这样就形成一个树形结构 4.2 树结构索引 -- ISAM ISAM树示例 假定一个节点可以存放2个入口项 插入23*,48*,41*,42* 删除42*,51*,97* ISAM树 查找 cost = logFN, F=索引页中入口项数, N=叶子页面数 插入:找到适当的叶子数据入口进行插入 删除:找到适当的叶子数据入口进行插入 ISAM: 静态树结构 4.2 树结构索引 -- B+树 B+树示例 B+树的主要特征 树上的操作(插入、删除)能保持树的平衡。 除了根结点外,每一个节点都将保证最小的50%占有率。 搜索记录需要从根开始遍历到合适的叶子。从根到叶子的路径长度称为树的高度。由于高扇出率,B+树的高度很少超过3或4。 每个节点包含m个目录项,其中d=m=2d,d是B+树的一个参数,称为树的秩,它是树节点容量的度量。根结点只需满足1=m=2d。 B+树 -- 8K页 索引页中平均入口项数=200, 平均填充率=0.67,平均fanout=200*0.67=133 索引能力 h=3:1333=2,352,637(个记录) h=4:1334=312,900,700 (个记录) 索引大小 h=1:1页=8K h=2:133页=1M h=3:1332=17,689页=133M B+树上的操作—搜索 func find(搜索码值K) returns nodepointer //给定一个搜索码值,找出它的叶子节点 返回tree_search( root , K );//从根开始搜索 endfunc func tree_search( nodepointer , 搜索码值K) returns nodepointer //在树上搜索数据项 如果 *nodepointer是一个叶子,返回nodepointer; 否则, 如果KK1,则返回tree_search(P0 , K); 否则, 如果K=Km , 则返回tree_search(Pm , K);//m=#节点包含的目录项数 否则, 找到满足Ki=KKi+1条件的i; 返回tree_search(Pi , K); endfunc 代价:cost = logFN 4.2 树结构索引 -- B+树 B+树示例 B+树上的操作—插入 插入 找到适当的页子节点L 向L插入数据入口 若L有空闲入口项,则插入 分裂L==L和L2 均匀分配入口项 将指向L2的索引入口插入到L的父节点中 可能会引起递归分裂 Cost = logFN B+树上的操作—插入 proc insert ( nodepointer , entry , newchildentry ) //把entry插入到根为“*nodepointer”的子树中;秩为d; // “newchildentry”开始时是null,除非孩子被分裂,否则将一直返回为null 如果*nodepointer是一个非叶子节点,设为N 找到满足Ki=entry的码值Ki+1条件的i; //选择子树 insert (Pi , entry , newchildentry ); //递归插入entry 如果newchildentry为null,返回; //通常的情况,不分裂孩子 否则,
您可能关注的文档
- 立刻检查是否有明显型变或完全无法负重-台湾师范大学体育室-国立.PDF
- 突破数学B复习讲义-排列组合-184.DOC
- 立式氢化物气相外延反应器生长GaN模拟研究.PDF
- 站前广场石材采购招标文件-如皋公共资源交易网.DOC
- 竞争性谈判文件项目编号:HXZC-2016L123项目名称:英文百科视频.DOC
- 竞争性内源RnAceRnAs研究进展———RnA对话的新机制.PDF
- 竞磋文件-招标-东北师范大学.DOC
- 章节5025F车身修理-无漆凹痕去除.DOC
- 笔记-会计的基.DOC
- 竹叶叶绿素铁钠的制备及性质研究-林产化学与工业.PDF
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
原创力文档

文档评论(0)