Innodb压缩

压缩目的:

在IO密集型应用场景下,CPU比较空闲,对数据进行压缩来节约存储资源的一种方式;

什么样的数据适合压缩:

字符串适合压缩,图片,二进制,视频等不适合压缩;

操作步骤:

1, 确保版本高于v5.1;

2, innodb_file_per_table =1 

3, innodb_file_format = Barracuda

4, 建表的时候加入 row_format=compressed key_block_size=8;

5, 如果对历史归档表压缩,ALTER TABLE tb_name ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;

key_block_size 表示每个块的大小,默认8,可以根据需要给1/2/4/8/16 ,如果想要最优的值可以按照不同的值写一定数据量进行测试;

压缩影响:

1, 查看历史CPU使用率,如果使用率较高不建议启用压缩;毕竟计算资源还是比存储资源昂贵的;

2, 如果是大的历史表压缩,会耗费较长时间,从而造成主从延时,具体延时时间按照数据量的多少而定;线上业务操作的时候尤其注意安全第一,避免对业务造成影响;

实测物理机对1T的表进行压缩,执行耗时22小时;

压缩率:

不同的数据压缩率不一样,我这边的数据压缩供参考:


压缩前:
16K     table_compress_table.frm
1.1T    table_compress_table.ibd
+----------------+----------------------------------------+-----------+------------+---------+------------+
| TABLE_SCHEMA   | TABLE_NAME                             | data_size | index_size | free_MB | TABLE_ROWS |
+----------------+----------------------------------------+-----------+------------+---------+------------+
| task_component | table_compress_table        | 460.83GB  | 522.36GB   | 4.00MB  | 4439494908 |
+----------------+----------------------------------------+-----------+------------+---------+------------+

压缩后:
16K     table_compress_table.frm
433G    table_compress_table.ibd
+----------------+----------------------------------------+-----------+------------+---------+------------+
| TABLE_SCHEMA   | TABLE_NAME                             | data_size | index_size | free_MB | TABLE_ROWS |
+----------------+----------------------------------------+-----------+------------+---------+------------+
| task_component | table_compress_table        | 226.93GB  | 197.75GB   | 2.00MB  | 4790999032 |
+----------------+----------------------------------------+-----------+------------+---------+------------+

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值