B树

半世苍凉 提交于 2019-12-15 10:11:39

B-Tree就是B树,"-"是横杠,不读作"减"

(1)树中每个结点至多有m 棵子树(注:m指的是树的阶);

(2)若根结点不是叶子结点,则至少有两棵子树(注:根节点至少有两个儿子);

(3)除根结点之外的所有非叶子结点至少有p个子节点(

, 

为向上取整。);

(4)所有的非叶子结点中包含以下数据:(n,P0,K1,P1,K2,…,Kn,Pn); K是Key, P是指针

B+Tree的非底层节点是不包含具体Value数据的;B-Tree的所有节点都含Value数据;

B+Tree最底层节点是完整的全量数据,可按顺序遍历;B-Tree最底层节点的数据是不完整的;

B+Tree可以把只把Key索引放在上层(内存可缓存下更多的索引);B-Tree把数据也放在上层了,数据夹杂索引的方式;

度是M(即节点大小约为M),底层节点个数是N,问查询复杂度:

   注意:此N时底层节点个数,不是元素个数(元素个数时N*M)

 

聚集索引和非聚集索引

都是B+Tree;

非聚集索引的"数据域"放的是指向数据的指针;聚集索引的“数据域”放的是具体数据(建表之前就要指定主键);

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!