
数据结构
文章平均质量分 83
じ小奋斗_
这个作者很懒,什么都没留下…
展开
-
Hash索引
Hash索引有些数据库的存储引擎还支持Hash这个数据结构来作为其索引。Hash结构想必大家已经非常熟悉了,这是根据Hash函数的运算,只需一次定位,便能找到需要查询数据所在的头。不像B+索引先从根节点再到非叶子节点再到叶子节点这样才能访问到我们的数据,这样呢可能会经过多次的IO访问,所以呢Hash索引的效率理论上要高于B+树索引如图所示,比如说我们要查找 叫 Sandra Dee 的这么一个人,那么根据Hash函数对key Sandra Dee 的运算只需一次我们便能定位到 152 号头,就是15原创 2021-09-20 12:36:22 · 1390 阅读 · 0 评论 -
BTree简介
B Tree接下来讲B tree 平衡多路查找树如果每个节点最多为M的孩子,那么这样的树为M阶B树。咋们可以看到上图为3阶B树的样子,当然现实中讲的索引每个节点的孩子的树上限呢,肯定是远大于3的。每个存储块中包含着关键字还有指向孩子的指针,那么最多能有几个孩子取决于每个存储块的容量,以及数据库 的相关配置,所以通常情况下这个m是很大的。咋们想来看看B Tree的特征:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Pn3YOipG-1632112341664)(ms图原创 2021-09-20 12:33:15 · 1151 阅读 · 0 评论 -
B+树简介
B+树B+Tree是B树的变体,其定义基本与B树相同,除了:非叶子节点的子树指针与关键字个数相同(B树的非叶子结点,它的关键字像这里的3阶树有两个,而我们的B树则有3个 (5,10,15)跟指针的个数(p1,p2,p3)是一样的,这表明了B+树能存储更多的关键字)非叶子节点的子树指针P[i],指向关键字值[k[i],k[i+1])的子树(如下图,这里我们的K[i]假设是10,那么k[i+1]就等于20,那么可以看到10 对应的子树它的值(10,15,18)均小于k[i+1]这里是20,均大于原创 2021-09-20 12:31:01 · 219 阅读 · 1 评论