数据库索引结构(4)---基于B+树的查询

news/2024/12/23 5:40:21/

回顾我们学习的线性和课扩展哈希 他们都只能进行等值操作 但是不能进行区间操作 为了进行区间操作和关系的比较和速度考虑 引入数据结构B+树

序言:磁盘存储

1. mysql面试题-深入理解B+树原理_哔哩哔哩_bilibili

信息是存取在磁盘块中的每个 磁盘最小的存取单位是512KB  要定位磁盘某一个区域 需要通过是确定扇区和磁道 虽然绿色的位置比 外圈的短但是存储信息的容量是相等的。

 以这个为例 磁盘大概需要500个扇区。

通过不断建立索引之后减少了IO的次数

结构特点

 

B+树的数据结构

等值查找 & 区间查找

区间查询 先利用下节进行一次查找然后沿着根节点指向的链表进行区间查询

B树的插入

引入middel  key这个概念

 插入理想的情况:

 插入不理想的情况:

以插入15为例 首先先找到15需要插的位置 此时发现 13 15 17 19已经装不下了, 此时将13 15 17两段  生成一个middel key 17 23始终指向 block 17 19

 删除索引项

顺利的话 他就是半满的情况很简单

不顺利 需要使用节点合并策略;

 可以向兄弟借指针

 

树可视化工具 

B+ Tree Visualization (usfca.edu)

压缩存储

前缀压缩

 后缀截断: 

只需要前几个的字母就可以了 不需要后面的字母所以后边的字母直接截断。

批量加载

 当分裂的节点不够的时候, 需要进行拆解

如图所示进行结果的分裂


http://www.ppmy.cn/news/80702.html

相关文章

DOM 监测

如何定义DOM监测: 新加 DOMDOM 属性变更移除 DOM 通常有两种方式,早期使用 DOM 事件监听节点的变化,目前已不再推荐。当前推荐使用MutationObserver。 一、DOM 事件 事件作用注意事项DOMNodeInsertedIntoDocument用于检测节点的插入当 No…

5月25日第壹简报,星期四,农历四月初七

5月25日第壹简报,星期四,农历四月初七坚持阅读,静待花开1. 教育部:2023年为中西部乡镇卫生院培养订单定向免费五年制本科医学生共计6150人。2. 全球第一个集成人工智能功能的PC系统诞生!微软宣布将在6月推出Windows Co…

将核心交换机配置为NTP服务器

AR配置外源NTP 1&#xff0e;配置ntp <XQ-R1220>sys [XQ-R1220]ntp-service unicast-server 120.25.115.20 #阿里云ntp [XQ-R1220]ntp-service unicast-server 203.107.6.88 #阿里云ntp 2&#xff0e;查看ntp状态 <XQ-R1220>display ntp status clock sta…

django admin后台管理系统中配置可上传多张图片功能

目录 一、默认的常规方式只能上传一张图片的示例 二、配置可上传多张图片 问题&#xff1a;在django自带的admin后台管理系统中常规的方式只能上传一张图片&#xff0c;无法上传添加多张图片&#xff0c;如下图。所以现在需要配置可上传多张图片的功能&#xff01; 一、默认的…

内网渗透(七十七)之域权限维持之ACL滥用(中)

ACL滥用(中) 3、msDS-AllowedToActOnBehalfOfOtherldentity 属性权限 如图所示是微软对于msDS-AllowedToActOnBehalfOfOtherldentity 属性的描述 jack是域中的一个普通用户。现在我们获得了域管理员的权限,并想进行权限维持,可以进行如下的操作:使用Empire下的powerview…

了解操作系统的基本原理和常见操作,提高计算机使用效率

部分数据来源&#xff1a;ChatGPT 简介 计算机基础知识对于IT从业者来说是非常重要的&#xff0c;它可以帮助我们深入地理解计算机的工作原理&#xff0c;掌握一些核心概念和技术。在这篇文章中&#xff0c;我们将介绍计算机基础知识的一些主要内容。 1、计算机的组成和工作原…

园区网络安全设计——核心层

园区网络安全设计——核心层 本机防攻击 本机防攻击是交换机的一个重要功能集合&#xff0c;可保护CPU&#xff0c;解决CPU因处理大量正常上送CPU的报文或者恶意攻击报文造成的业务中断问题&#xff0c;保证设备在受到攻击时已有业务可以正常运转&#xff0c;主要功能有&…

Linux :: 【基础指令篇 :: 用户管理:(2)】::设置用户密码(及本地Xshell 登录云服务器操作演示) :: passwd

前言&#xff1a;本篇是 Linux 基本操作篇章的内容&#xff01; 笔者使用的环境是基于腾讯云服务器&#xff1a;CentOS 7.6 64bit。 目录索引&#xff1a; 1. 基本语法 2. 基本用法 3. 注意点 4. 补充&#xff1a;指定用户设置密码操作实例测试及登录本地 Xshell 登录演…