Btree索引
- 索引存储在磁盘上所用的基础的通用的存储结构,无论是mysql,mongodb,或者其他的数据库,在磁盘上存储索引时,用的都是Btree结构
特点
- 一个Btree节点,会存储多个关键字,多少是由节点的大小和关键字的大小(关键字越小,节点存的越多)来确定的,通常节点的大小是固定的,由计算机的文件系统来确定,一次性磁盘读取的内容量,就是一个节点的大小
- 大量的关键字分散到多个多个节点进行存储,通过上层节点的子节点指针,来关联所有的节点,子节点指针位于关键字之间
- 指针指向的子节点中的关键字顺序,一定位于指针两侧的关键字之间
以上的结构,可以在尽量少的磁盘读取下,遍历大量的节点关键字
减少磁盘读取,可以大幅提升速度
无论是普通,主键,唯一,全文索引用的都是BTree结构