第七课(二)|学习笔记

简介: 快速学习第七课(二)

开发者学堂课程【高校精品课-西安交通大学-数据库理论与技术:第七课】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/12/detail/15863


第七课(二)

 

内容介绍:

一、指针混写

二、虚拟存储器

三、索引

四、无序索引

五、稀疏索引

六、有序索引

七、稠密索引

八、多级索引

九、索引更新

十、辅助索引

 

五、稀疏索引

稀疏索引是对小有序管大有序的一个改索引文件和被索引的文件,叫主文件都是排序的,可以采取不是对每一个关键字都抽出来都介绍一下,而是隔一段处理的这种叫稀疏索引,比如英文字典,ABCD 就是一个稀疏作用,可以把每个单词都给抽出来,只是把每个单词的第一个字母抽出来,这样隔一段抽出来,建立起的索引集合就缩小到原来的n/1了,定位误差就大了,因为稀疏定位误差越大,定位到这个地方,里头还有还有一堆东西,相当于在里头要进行一个线性搜索,这是要稀疏作用英文字典的页眉索引,每页列出前每一页的开始的一个单词和最结尾的单词,相于的优点,节省空间。另一个例子中文的字典,像新华字典,字典当中的字,用偏旁部首,比如说飞字,第一画像乙字,一画在第十五页,到第十五页再去找,其实这就是一个多级索引。一级索引在这,然后到这里头又有一个二级索引,最后才找到的内容。

image.png

索引技术的评价基于以下:可以支持的访问类型和存储类型,一类就是等值查找,等于特定值的另外一种范围查找。从值的比较来说,等号来作为比较条件,而这个就是用不等号小于等于大于等于可以两有两种类型,另外就是存取时间要花多长时间,还有插入的时间就是在主文件里增加记录了,索引也要做相应的维护插入,还有删除也做相应操作,还有空间开销,这就是他评价要考虑因素。

 

六、有序索引

有序索引索引项按照搜索键值的顺序,有序存储的作用,这叫有序作用。另外一个主索引就是顺序文件的记录顺序索引键的顺序一样的,聚簇索引,叫法不统一索引的搜索键通常是主键,通常情况下是选用表的子键,比如学生用学号做,但不一定必须这样。索引顺序文件就是带有主文件的顺序文件,有主索引的顺序存储的文件,学生按照学号顺序去存,然后用学号做主索引。另外一种叫辅助索引,就是所建的顺序与文件的顺序不同,也称为非聚簇索引。

 

七、稠密索引

稠密索引就是说跟需求索引对应的每个关键字时都有一个索引,每个关键字词在主文件当中每一个不同的关键字值都会有一个索引叫稠密索引,这个就是稠密索引稠密索引中间是有重复的,并不是主键,并不一定要一定是主,其实索引还有叫唯一索引和非唯一索引,唯一索引叫 unique,保证每一个关键字只出现一次,所以在数据库里头关数据库里的主键物理实践,一般就是通过建立一个唯一索引,还有候选键都是通过这种方法。比如学表,声明学号是主键在学号上创建一个唯一索引意思说索引当中每一个关键字值只能出现一次,如果出现重复物理上就给卡死了,也就是在学生表里头插入学生记录,学生记录的学号要插到学号的索引里头,是文件索引如果学前面已经出现过,就给卡死了。保证不可能在学生表里头有两个学生有一样的号,就是通过唯一键索引来实现,这个叫唯一键索引

非唯一键索引,最典型的就是在学生表上,班级上建班级是不唯一的,因为一个学生表里有可能我有30个同学是一个班的,这30个同学的班级的属性取值是一样的,就可预期的重复,叫非唯一,所以有唯一和非唯一键。稠密索引是说每一个都备一个,如果隔了一个是稀疏的记录之间是一对一的,稀疏索引是只对某些搜索键值索引记录,只有文件进入的按索引键排序就是说稀疏索引对文件记录必须是按取出的,才能键稀疏索引,否则是不能建的,有限制。定位具有一个搜索键值配备记录的过程量,首先要找到 K小的最大搜索键值索引记录实际上找到这个边界,然后沿着索引记录指向的文件记录开始顺序再去找这就是这个过程。对于插入删除操作需要的空间比较少,另外维护开销比较少第二块比较节省空间缺点查找记录一般比稠密索引慢,因为稠密索引每一个关键词都被索引到,稀疏索引是隔一段有一个另外稀疏索引还有个问题就是在索引中没找到,不等于没有。稠密索引没有找到则这个记录是不存在的稀疏索引没有找到,必须还要在文件里头去再去搜一下。折衷就是对文件的每一个块建立其中索引的索引项,这个就是对应于该块的最小搜索键值来做,按区间来做,这是叫稀疏索引。

后面讲的多级索引一般越往上一级的是越稀疏的作用,就是上一级索引是下一级的更稀疏的索引,这就是稀疏索引刚才那个例子是针对分行名称来讲

image.png

要针对分行名称,但不是针对所有的,比如说第一个针对 Brighton,Brighton 到 Downtown 然后 Mianus 没有 Downtown,所以是稀疏作用,要查找 Downtown 的话,Mianus 比较大,又会比下面索引比较小,就是从这个地方开始,第一个不等,然后相等相等最后后面不会有,因为只剩一台了。

剩一Downtown后面找到 A-215这个项目的时候,比较大,后面的比更大,更不可能有,所以到这里就进入了。进入了稀疏引后,就一定按照索引的顺序排,不按照排索引就没有用,因为意味着索引去找的时候,就等于是要把全部扫一遍。要是排着序就可以,因为知道排序了,所以 Downtown 找到这一项,找到这两个部分,第三个再找到这就知道不存在了,就可以停下来,这就是稀疏索引。

相关文章
|
存储 Kubernetes 开发工具
Kubernetes (K8s) 的几种卷类型
Kubernetes (K8s) 提供了以下几种卷类型: 1. 空白卷(emptyDir):这是一个临时的卷,它在 Pod 生命周期内存在,但在 Pod 关闭或重新启动后会被清空。 2. 主机路径卷(hostPath):将节点上的目录或文件挂载到 Pod 中,可以使用节点上的文件系统或文件。 3. 持久卷(Persistent Volume,PV):PV 是独立于 Pod 的一种资源,它可以由管理员手动创建并供 Pod 使用。PV 存储在集群中,并可以被多个 Pod 共享。 4. 持久卷声明(Persistent Volume Claim,PVC):PVC 是对 PV 的请求,它描述了所需的存
1172 0
|
存储 JSON JavaScript
从创建到维护:掌握package.json的最佳实践(一)
从创建到维护:掌握package.json的最佳实践
|
7月前
|
存储 弹性计算 固态存储
2026年阿里云服务器4核8G配置收费标准与活动价格,最优购买方案与价格对比
2026年阿里云4核8G云服务器提供多样化实例选择,价格跨度显著。经济型e实例年费约1477元起,适配个人网站、开发测试等轻量场景;通用算力型u2a实例年费约898元起,以高性价比支撑企业通用业务;计算型c9i实例年费约3147元起,聚焦高性能计算场景。用户可通过新客专属折扣、九代实例年付6.4折、领券满减等策略降低成本,结合带宽降配+CDN加速、弹性云盘等技巧进一步优化成本,适配小型网站、电商后台、在线游戏等多场景需求。
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
迁移学习:让小数据也能驱动AI大模型
迁移学习:让小数据也能驱动AI大模型
516 99
|
8月前
|
存储 Linux 网络安全
跨平台文件传输工具FileZilla客户端安装使用教程
跨平台文件传输工具FileZilla客户端安装使用教程
2958 0
|
供应链 JavaScript 前端开发
如何开发采购供应链管理系统中的供应商管理看板(附架构图+流程图+代码参考)
在现代企业采购供应链管理中,高效的供应商管理对成本控制、交付周期和产品质量至关重要。本文探讨如何构建供应商管理看板,涵盖功能模块、业务流程、开发技巧及代码示例,助力企业提升供应链透明度与管理效率。
|
机器学习/深度学习 人工智能 监控
什么是信息化?什么是数字化?这两者有什么联系和区别?
本文探讨了信息化与数字化的概念、联系及区别。信息化是将线下业务流程线上化,提升效率;数字化则基于大数据和新技术优化企业运营模式,重构商业逻辑。两者层层递进,信息化为基础,数字化为升级。文中通过实例对比二者在理念、方法、数据应用等方面差异,并强调数字化转型需明确目标,借助低代码等工具实现能力重构,推动企业全价值链连通与效率提升。总结指出,真正的转型是能力的全面提升,而非单纯技术替换。
|
8月前
|
人工智能 监控 Kubernetes
「测试面试官手记」:那些让我眼前一亮的候选人
作为面试官,我想对测试工程师说:面试不是考试,而是技术思维的共鸣。看重的不仅是技能,更是沟通、思考与成长潜力。别让简历成“八股”,用真实项目展现解决问题的能力。别怕问题不会,要会结构化表达。从执行者走向设计者,主动思考质量优化,才能脱颖而出。AI时代,持续学习者赢未来。
|
8月前
|
机器学习/深度学习 人工智能 自然语言处理
大模型专业名词解释手册
本简介系统梳理了大语言模型(LLM)核心技术术语,涵盖基础概念、训练方法、模型优化、推理应用、评估调试及伦理安全六大维度。内容包括Transformer架构、注意力机制、Token化、参数量、涌现与泛化能力,以及预训练、微调、思维链、少样本学习等关键技术;深入解析模型压缩中的量化、剪枝、蒸馏方法,探讨推理应用中的RAG、提示工程、智能代理与多模态能力;并介绍困惑度、BLEU/ROUGE等评估指标,最后聚焦偏见、公平性、可解释性与人类对齐等伦理议题,全面呈现大模型技术体系与发展脉络。(239字)
|
11月前
|
人工智能 自然语言处理 前端开发
利用 AI 助手进行 Web 开发通
AI编程助手如DeepSeek正改变Web开发模式,通过理解自然语言生成可运行代码,提升效率、降低门槛。开发者只需描述需求,AI即可生成框架并协助迭代优化与调试,助力专注创意与架构设计,实现人机协同高效开发。
684 0