1,什么是索引,为什么要使用索引?
索引是帮助Mysql高效获取数据的排好序的数据结构。建立索引可以帮助我们快速检索我们需要的信息,减少磁盘的I/O次数,加快检索速度。索引的数据结构包括:二叉树,红黑树,Hash表,B-树等。
2,数据查询的方式
二叉查找树的方式查找信息
普通情况下,在一个二叉树中查找到5非常快速。只需要2步,但在某些极端情况下,如对于顺序插入信息的二叉树,查找到我们需要的信息就非常麻烦了。
红黑树
红黑树是一种自平衡二叉查找树,就是会自动平衡更新根节点和其它节点的位置,也就是说根节点和其它节点的位置是不固定,会根据插入的信息进行动态改变的。
按照1~5的顺序插入数据后,会重新排列分支节点的位置。
对于少量数据使用红黑树是完全可以的,但是一个项目的数据库中存储的数据都是10万条以上,再使用红黑树,树的度又会变得很大了。这个时候就可以使用B 树了。
B 树
B树是一种多路自平衡搜索树,它是一种特殊的平衡二叉树,但B树允许每个节点有更多的子节点。B树示意图如下:
B树的特点:
(1)所有键值分布在整个树中(2)任何关键字出现且只出现在一个节点中
(3)搜索有可能