Mysql存储引擎
1、MyISAM:
不支持事务、也不支持外键,优势是访问速度快
对事务完整性没有 要求或者以select,insert为主的应用
2、Innodb
支持事务,支持外键
如果需要事务支持,并且有较高的并发读取频率,InnoDB是不错的选择
3、Memory
使用存在于内存中的内容来创建表
Memory类型的表访问非常的快,因为它的数据是放在内存中的,并且默认使用HASH索引
Hash索引缺点:不支持不精确查找,因为hash算法是基于等值计算的,所以对于“like”等范围查找hash索引无效,不支持
Memory类型的存储引擎主要用于哪些内容变化不频繁的代码表,或者作为统计操作的中间结果表
当mysqld守护进程崩溃时,所有的Memory数据都会丢失
4、B+Tree索引
https://blog.csdn.net/u012978884/article/details/52416997
B+Tree
多路搜索树,在B+树中,所有记录节点都是按键值的大小顺序存放在同一层的叶节点中,各叶节点指针进行连接
B+InnoDB中,表数据文件本身就是按B+Tree组织的一个索引结构,这棵树的叶节点data域保存了完整的数据记录。
这个索引的key是数据表的主键,因此InnoDB表数据文件本身就是主索引。
B+ TreeB-Tree与B+Tree
B+Tree是B-Tree的变体,基本相同,除了
1. 非叶子结点的子树指针与关键字个数相同;
2. 非叶子结点的子树指针 P[i] , 指向关键字值属于 [K[i], K[i+1]) 的子树( B- 树是开区间);
3. 为所有叶子结点增加一个链指针;
4. 所有关键字都在叶子结点出现;
B Tree B+Tee
网友评论