之前我们了解过了b树索引原理,那么关于它的各种结构也是一定要知道的,下面一起看看吧。
b树基本概念
一棵B树一定是有着下面几点性质的二叉查找树:
a、每个节点中x有以下域:
1)、num,当前存储在节点x的关键字个数,关键字以非降序存放,所以key[i]<=key[i+1]<=……key[n]。
2)、isleaf,一个bool值,假如,x为叶子节点,那么,isleaf为true。
3、)所有节点当中,包括num+1个指向其子女的指针p[0],p[1],……p[num]。
假如,x为叶子,p就为NULL。
4)、每个节点包括num个关键字key[0],key[1],……key[num-1]。
各关键字key[i]对存储在各子树中的关键字范围加以分隔: k1<=key[1]<=k2<=key[2]……
b、在b树当中,它的每个叶节点有着相同的深度。
c、在b树当中,它的每一个节点包含的关键字有上下界。
在这些界当中,能够用一个叫做b树的最小度数的固定整数M>=2来表示。
所有非根节点的个数n必须满足M-1<=n<=2M-1。
根节点一定要至少包括一个关键字。
b树索引
1)、创建索引不会指定unique ,btimap 那就表示创建的索引是b树索引.
2)、b树索引的组织结构是一颗树,主要数据一般集于叶子节点中,叶子节点包含所有索引列的值和记录行对应的物理地址rowid;
3)、主键默认会创建一个b树索引
4)、不能给包含索引的创建索引
以上就是关于b树索引结构的所有内容,想要成为一个合格的java架构师,这些是一定得知道的。还想了解更多知识,就请关注我们吧。
推荐阅读: