- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章数据库存储技术
6.4 索引技术与散列技术 6.4.1 文件的定长记录 6.4.2 文件的变长记录 6.4.3 散列技术 6.4.1 索引技术 在索引技术中对文件(一般用顺序文件)的查找采用类似书刊中目录的方法,即对文件中记录的指定项(称索引项)的项值给出其记录的地址,它们称索引,索引一般也用文件表示,其结构如图6.4所示。 6.4.1 索引技术 1. 主索引 主索引是索引中最常用的一种,它一般可以分为以下三类:(1)稠密索引所谓稠密索引(dense index)是指对主文件索引项的每个“项值”建立一个索引项值,即索引记录包括索引项中的所有项值以及指向该值的记录链表中第一个记录的指针,图6.5给出了稠密索引的一个例子。(2)稀疏索引稀疏索引(sparse index)是指只对主文件索引项的部分项值建立索引记录,这些部分项值的选择具有一定的稀疏特征,即每隔一定距离选择一个。每个索引记录也包括一个项值和指向该项值的第一个数据记录的指针。(3)多级索引当索引本身数量很大时,还有一种办法是采用多级索引,即对索引本身采用索引。图6.7给出了二级索引的例子。 6.4.1 索引技术 6.4.1 索引技术 6.4.1 索引技术 2. 辅助索引 由于主索引中具有相同索引项值的记录在同一地址或相邻地址中,因而查找速度慢,有时还需要使用辅助索引。采用辅助索引查找速度快,一般采用下面的方法:即仍采用索引记录(索引项值与对应的指针),不过此时指针指向的不是主文件记录地址而是指向一个桶(bucket),桶内存放指向具有同一索引项值的指针。如在前稀疏索引示例中,建立以Jldw为索引项的辅助索引。如图6.8所示,在这种结构中,以辅助索引为中介,可以通过二层指针方便地查到对应的主文件地址。 6.4.2 B+树索引文件 1. B+树的结构 B+树索引是一个多级索引,但是其结构不同于多级索引顺序文件。B+树的索引结构是树的形式,最上一级索引是树的根结点,最下一级索引是树的叶结点。该级索引指针指向主文件的记录地址,一般采用稠密索引;而非叶的其他结点(包括根结点)的索引指向下一级结点的地址,一般为稀疏索引。 6.4.2 B+树索引文件 6.4.2 B+树索引文件 6.4.2 B+树索引文件 典型的B+树结点结构如图6.9所示,其中P为指针,K为索引项值,每个结点中的索引项值按次序存放,即如果ij,那么KiKj。 6.4.2 B+树索引文件 图6.10给出了一个B+树的例子,每个大写字母代表索引项值。为简单起见,省略了空指针和指向主记录的指针。 6.4.2 B+树索引文件 2. B树上的查询 假设要查询索引项值为K的所有记录,查询方法为: (1)检查根结点,找到大于K的最小索引值,假设为K,那么顺着P走到第二层结点。如果找不到这样的值,就沿着P走到第二层结点。 (2)在走到的第二层结点中用类似(1)的方法找到相应指针并到达第三层。 (3)如此重复,最终到达一个叶结点。如果该结点中有某个索引项值K等于K,那么指针P指向我们所需要的记录,如果在该叶结点中找不到值K,则不存在索引项值为K的记录。 6.4.3 散列技术 提高数据库查找速度的另一种方法是散列(hash)技术。其基本原理是利用一种散列函数建立起主文件中指定项值与磁盘物理块间的映射联系,这样只要给出指定项的值立即可通过散列函数得到其对应的存储物理块地址。在对散列的描述中,将使用术语桶(bucket)来表示能存储一条或多条记录的一个存储单位。通常一个桶就是一个磁盘块,但也可能小于或者大于一个磁盘块。 形式化地,令K表示所有指定项值的集合,令B表示所有桶地址的集合,散列函数H就是一个从K到B的函数。我们用H表示散列函数。 散列技术的具体实现方法如下: (1)建立主文件的指定项K以及该项值的集合{ K1,K2… Kn}。 (2)建立磁盘物理存储单位桶以及桶地址的集合{B1,B2…Bn}。 (3)建立散列函数H(Ki),它建立主文件指定项的值与桶间的对应关系,对应一个Ki必通过H(Ki)找到惟一的一个桶地址。 6.4.3 散列技术 第6章 数据库存储技术 * 索引项值 对应记录地址 ? ? 因此,索引技术中一个索引文件一般由主文件与索引两部分组成,其中主文件存放数据,而索引则存放数据地址。 索引 主文件 图6.5 稠密索引示例 70 Wzbm 指针 ? Wzbm Wzmc Jldw Price 010101 010101 铍铜合金 Kg 010301 010301 铅锑合金 Kg 010401 010401 锆镁合金 Kg 020101 020101 25铜管材
您可能关注的文档
- 知識社會學-東海大學社會學系.doc
- 直毛灰身、分叉毛黑身、直毛黑身.ppt
- 破阵子.ppt.ppt
- 矮个子穿衣TIPS,秒变性感大长腿.doc
- 石油天然气工业术语系列国家标准研讨会纪要-石油工业标准化信息网.doc
- 福寿宫道教经忏高功学习班招生简章为弘扬道教文化,继承全真道统.doc
- 祝福好友每天都快樂.ppt
- 私立及人高級中學一百學年度第二學期高中部一年級歷史科-及人首頁.doc
- 种植-北京五洲恒通认证有限公司.doc
- 福建省外国语文学会2016年年会.doc.doc
- 浙江衢州市卫生健康委员会衢州市直公立医院高层次紧缺人才招聘11人笔试模拟试题参考答案详解.docx
- 浙江温州泰顺县退役军人事务局招聘编外工作人员笔试备考题库及参考答案详解一套.docx
- 江苏靖江市数据局公开招聘编外工作人员笔试模拟试题及参考答案详解.docx
- 广东茂名市公安局电白分局招聘警务辅助人员40人笔试模拟试题带答案详解.docx
- 江苏盐城市大丰区住房和城乡建设局招聘劳务派遣工作人员4人笔试模拟试题带答案详解.docx
- 浙江舟山岱山县东沙镇人民政府招聘笔试模拟试题及参考答案详解1套.docx
- 最高人民检察院直属事业单位2025年度公开招聘工作人员笔试模拟试题含答案详解.docx
- 浙江金华市委宣传部、中共金华市委网信办所属事业单位选调工作人员笔试备考题库及答案详解1套.docx
- 广东深圳市党建组织员招聘40人笔试模拟试题及答案详解1套.docx
- 江苏南京水利科学研究院招聘非在编工作人员4人笔试模拟试题及参考答案详解.docx
最近下载
- 《无人机测绘技术》项目3任务4无人机激光点云数据处理.pptx VIP
- 2023甘肃培黎职业学院招聘12人笔试备考试题及答案解析.docx VIP
- 《广告策划实务》全套教学课件.pptx
- 环境污染事故放射性气溶胶扩散的应急控制及消除方法.docx VIP
- 2024-2025学年小学信息技术(信息科技)泰山版2024六年级上册教学设计合集.docx
- 化学反应热力学与热平衡的实验研究的探究与研究.pptx VIP
- 华荣QJZ-2×□SF煤矿风机用隔爆兼本质安全型双电源真空电磁起动器.doc
- 黄旭华精神课件PPT.pptx VIP
- 孕产妇产后康复指导考核试卷.docx VIP
- 《罗斯福新政》2教学设计.doc VIP
文档评论(0)