时间:2021-07-01 10:21:17 帮助过:4人阅读
实际应用中使用MyISAM还是InnoDB好呢?得具体问题具体分析,由你的系统特性决定,
如使用MyISAM,得到性能提升,但将失去了对事务的支持,到底值不值呢,还得充分了解两种方式的优劣程度,
下面是我的一次测试结果:
MyISAM | |||||||
数据量 | 数据占空间(byte) | 索引占空间(byte) | 基于索引查询(s) | 无索引查询(s) | coun(*)查询(s) | 插入100万记录(s) | 插入1000万记录(s) |
500万 | 985,661,796 | 43,043,840 | 0.001 | 1.766 | 0 | 33.873 | |
1000万 | 2,350,000,001 | 234,428,417 | 0.002 | 3.599 | 0 | 38.236 | |
5500万 | 12,925,000,000 | 1,449,609,216 | 0.002 | 19.785 | 0 | 380.007 | |
1亿 | 23,500,000,000 | 2,664,473,600 | 0.002 | 35.797 | 0 | 401.562 | |
InnoDB | |||||||
数据量 | 数据占空间(byte) | 索引占空间(byte) | 基于索引查询(s) | 无索引查询(s) | coun(*)查询(s) | 插入100万记录(s) | 插入1000万记录(s) |
500万 | 2,271,215,616 | 361,758,720 | 0.001 | 4.385 | 2 | 16.771 | |
1000万 | 3,295,674,368 | 524,288,000 | 0.001 | 8.277 | 3 | 21.794 | |
5000万 | 17,087,594,496 | 2,710,568,960 | 0.002 | 43.749 | 10 | 233.402 | |
1亿 | 35,186,016,256 | 5,579,472,896 | 0.001 | 174.403 | 21 | 233.162 | |
结论:MyISAM和InnoDB测试结果对比(平均数) | |||||||
1.517853328 | 占空间:InnoDB是MyISAM的1.5倍 | ||||||
1 | 基于索引查询:两者相差不大,都很快 | ||||||
3.78712652 | 无索引查询耗耗时:InnoDB是MyISAM的3.8倍 | ||||||
1.690019777 | 插入速度耗时:MyISAM是InnoDB的1.7倍 | ||||||
0 | 执行count(*):MyISAM几乎不需要时间,InnoDB千万级别需要3~20秒 |
MySQL基于MyISAM引擎和InnoDB引擎性能测试对比
标签: