观后感-数据库为什么要使用索引这种结构
2017-01-05 19:20
991 查看
http://www.2cto.com/database/201411/351106.html-文章地址
解释:文章中m值为:非叶子节点最多的子树个数。
B-tree 中的m-way查找树:
当为3-way时,则此树有3个子树
B-tree有个别名,叫多平衡查找树.
一棵m阶的B-tree (m叉树)的特性如下:
(其中ceil(x)是一个取上限的函数)
1) 树中每个结点至多有m个孩子;
2) 除根结点和叶子结点外,其它每个结点至少有有ceil(m / 2)个孩子;
3) 若根结点不是叶子结点,则至少有2个孩子(特殊情况:没有孩子的根结点,即根结点为叶子结点,整棵树只有一个根节点);
4) 所有叶子结点都出现在同一层,叶子结点不包含任何关键字信息(可以看做是外部结点或查询失败的结点,实际上这些结点不存在,指向这些结点的指针都为null);
5) 每个非终端结点中包含有n个关键字信息: (n,P0,K1,P1,K2,P2,......,Kn,Pn)。其中:
a) Ki (i=1...n)为关键字,且关键字按顺序排序K(i-1)< Ki。
b) Pi为指向子树根的接点,且指针P(i-1)指向子树种所有结点的关键字均小于Ki,但都大于K(i-1)。
c) 关键字的个数n必须满足: ceil(m / 2)-1 <= n <= m-1。
解释:文章中m值为:非叶子节点最多的子树个数。
B-tree 中的m-way查找树:
当为3-way时,则此树有3个子树
B-tree有个别名,叫多平衡查找树.
一棵m阶的B-tree (m叉树)的特性如下:
(其中ceil(x)是一个取上限的函数)
1) 树中每个结点至多有m个孩子;
2) 除根结点和叶子结点外,其它每个结点至少有有ceil(m / 2)个孩子;
3) 若根结点不是叶子结点,则至少有2个孩子(特殊情况:没有孩子的根结点,即根结点为叶子结点,整棵树只有一个根节点);
4) 所有叶子结点都出现在同一层,叶子结点不包含任何关键字信息(可以看做是外部结点或查询失败的结点,实际上这些结点不存在,指向这些结点的指针都为null);
5) 每个非终端结点中包含有n个关键字信息: (n,P0,K1,P1,K2,P2,......,Kn,Pn)。其中:
a) Ki (i=1...n)为关键字,且关键字按顺序排序K(i-1)< Ki。
b) Pi为指向子树根的接点,且指针P(i-1)指向子树种所有结点的关键字均小于Ki,但都大于K(i-1)。
c) 关键字的个数n必须满足: ceil(m / 2)-1 <= n <= m-1。
相关文章推荐
- 数据库为什么要用B+树结构--MySQL索引结构的实现
- 数据库为什么要用B+树结构--MySQL索引结构的实现
- 数据库为什么使用索引
- 为什么数据库使用B树索引而非散列索引
- DB疑问解答之 --- 为什么使用树结构组织索引
- 数据库为什么要用B+树结构--MySQL索引结构的实现
- 数据库为什么要用B+树结构--MySQL索引结构的实现
- 数据库为什么要用B+树结构--MySQL索引结构的实现
- 数据库为什么要用B+树结构--MySQL索引结构的实现
- 数据库为什么使用索引
- 数据库系统为什么使用三级模式结构
- Relaxlife.net数据库操作的应用,数据库操作/表操作/表结构操作/索引(Index),主键操作/字段值操作(原版)
- C#分析数据库结构,使用XSL模板自动生成代码
- SQL Server 索引结构及其使用(三)
- SQL Server 索引结构及其使用(一)
- 转载--SQL Server 索引结构及其使用
- SQL Server 索引结构及其使用
- SQL Server 索引结构及其使用(二)
- SQL Server 索引结构及其使用(四)
- SQL Server 索引结构及其使用(三)