CSV
数据以文本方式存储在文件中
myisam和innodb均为二进制
.CSV文件存储表内容
.CSM文件存储表的元数据如表状态和数据量
.frm文件存储表结构信息
特点
1. 以CSV格式进行数据存储
2. 所有列必须都是不能为null的
3. 不支持索引
4. 可以对数据文件直接编辑
使用场景
1. 适合作为数据交换的中间表
Archive
1. 以zlib对表数据进行行压缩,磁盘I/O更少
2. 数据存储在ARZ为后缀的文件中
3. 只支持insert和select操作
3. 只支持在自增id列上增加索引
适用场景:
1. 日志和数据采集类应用
Memory
1. 也称HEAP存储引擎,数据保存在内存中。
2. 支持hash索引和btree索引(默认hash索引)
hash索引等值查询快,btree范围查询快
3. 所有字段都为固定的长度
4. 不支持BLOG和TEXT等大字段
5. 适用表级锁
6. 最大大小由max_heap_table_size 默认为16M
对已经存在的表无效
适用场景:
1. 用于查找或者是映射表,例如邮编和地区的对应表
2. 用于爆粗数据分析中产生的中间表
3. 用于缓存周期性聚合数据的结果表
memory数据容易丢失,所以要求数据可再生
Federated
特点:
1. 提供了访问远程MySQL服务器上表的方法
2. 本地不存储数据,数据全部放到远程服务器上
3. 本地需要保存表结构和远程服务器的连接信息
使用:
默认禁止,启用时需要在启动时增加federated参数
mysql://user_name[:password]@host_name[:port]/db_name/table_name