MySQL中的索引分为3种:
1,主键索引:即用主键当唯一索引
2,常规索引:实现方式为B树和哈希表
3,全文索引:实现原理类似倒排索引,常用来查询字段中包含关键字
下面复习下B-TREE和hash-table
1 B-tree
B树可以在O(lgn)的时间内实现许多动态集合操作,除了用在数据库索引上,也被用在磁盘查找上。
B树是一种多路查找平衡多叉树,具有以下属性:
1,如果根节点不是叶节点,则其至少有两棵子树。
2、每个非根节点所包含的关键字个数 j 满足:┌m/2┐ - 1
3、除根结点以外的所有结点(不包括叶子结点)的度数正好是关键字总数加1,故内部子树个数 k 满足:┌m/2┐
4、所有的叶子结点都位于同一层。
每个节点中的元素从小到大排序