InnoDB引擎数据表压缩特性测试 - 20120329

863 views

Published on

InnoDB引擎数据表压缩特性测试,innodb压缩特性不适合OLTP应用

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
863
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

InnoDB引擎数据表压缩特性测试 - 20120329

  1. 1. InnoDB 引擎数据表压缩特性测试 2012 年 3 月 29 日 14:00 一、前言 Innodb Plugin 引擎开始引入多种格式的行存储机制,目前支持:Antelope、Barracuda 两种。 其中 Barracuda 兼容 Antelope 格式。 另外,Innodb plugin 还支持行数据压缩特性,不过前提是采用 Barracuda 行存储格式。 表空间启用压缩的前提是 innodb 表空间文件存储格式修改成:Barracuda,需要修改 2 个选项: innodb_file_format = "Barracuda" innodb_file_format_max = "Barracuda" 下面是对比测试结果 二、表空间压缩比 1. 天龙数据表压缩比 2.1 t_achievement 表 压缩之前 -rw-rw---- 1mysqlmysql 19038208 Mar 21 13:59 t_achievement.ibd(18.1G) 压缩之后 -rw-rw---- 1 mysqlmysql 9.2G Mar 21 19:11 t_achievement.ibd 相差:12414976 ~= 12124 MB ~= 11.83 Gb,节约 49.32% 2.2 t_ability 表 压缩前 -rw-rw---- 1 mysqlmysql 1.1G Mar 21 13:51 tlbbdb/t_ability.ibd 压缩后 -rw-rw---- 1 mysqlmysql 404M Mar 28 09:59 tlbbdb/t_ability.ibd 相差:1.1G - 404Mb ~= 696MB,节约 63.27% 2.3 t_char_3 表 压缩前 -rw-rw---- 1mysqlmysql 16195584 Mar 21 14:25 t_char_3.ibd(15.4G) 压缩后 -rw-rw---- 1mysqlmysql 8130560 Mar 28 10:49 t_char_3.ibd(7.7G) 相差:16195584-8130560 = 8065024 ~= 7G,节约 49.79% 2. tpcc 测试库 数据表 压缩前(单位:字节) 压缩后(单位:字节) 减少字节数 节约比 warehoused 192 128 64 33.33% districtd 9216 5120 4096 44.44% itemd 17408 11264 6144 35.29% new_ordersd 397312 155648 241664 60.82%
  2. 2. ordersd 2957312 786432 2170880 73.41% historyd 4694016 1347584 3346432 71.29% customerd 20619264 12881920 7737344 37.52% stockd 35737600 23801856 11935744 33.40% order_lined 43991040 15740928 28250112 64.22% 全库 109603176 59028260 50574916 46.14% 三、tpcc 对比测试 1. 非压缩表 4212.650 TpmC 4203.600 TpmC 2. 压缩表 428.983 TpmC 663.017 TpmC 707.883 TpmC 707.183 TpmC 四、测试导出 1. 非压缩 timemysqldump tpcc1000 | gzip> tpcc1000.sql.gz real 148m22.614s user 148m56.915s sys 3m33.802s 2. 压缩表 timemysqldump tpcc1000_compress | gzip> tpcc1000_compress.sql.gz real 129m42.541s user 149m12.407s sys 3m44.835s 五、测试导入 1. 非压缩表 1.1 并发导入 开始:2012-04-01 23:43:03.777173866 +0800 结束:2012-04-02 03:21:05.003590866 +0800 耗时:03:38:02 2. 压缩表 1.1 并发导入 开始: 2012-04-01 23:40:34.289173866 +0800 结束:2012-04-03 11:06:44.740992866 +0800 耗时:35:26:10 六、结论
  3. 3. 从测试结果来看,InnoDB 引擎的压缩特色效果不错,压缩完后快和 MyISAM 引擎差不多了。 不过压缩后事务并发性能下降非常严重,从这个角度来看,它适合用于对压缩比较高、但对 并发事务要求不高的场景, 例如一些 CPU 性能较高,同时又需要读大量数据的场景,适用范围有限。

×