常用的引擎
常用的引擎主要有两个:Innodb和MyIASM
- Innodb引擎,Innodb提供了对数据库ACID事物的支持。并且还提供了行级锁和外键的约束.不保存表的行数,SELECT count(*)
会扫描全表
*MyIASM引擎,不提供事物的支持,不支持行级锁和外键.优点是支持全文索引,保存了表的行数.
Innodb和myisam都用b+树索引,innodb使用聚集索引,myisam使用非聚集索引.
聚集索引和非聚集索引的区别就是聚齐索引value保存的是真实的数据,非聚集索引保存的是真实数据的内存地址.
平衡多路查找树(b-tree)
B-Tree的出现是为了减少磁盘i/o的次数,通过将节点存储多个key来使指针的数量降低.
B+Tree出现的目的是将通过非叶子节点只存储kv信息不保存数据,这样就可以降低整棵树的高度.