格式|MySQL 8.0 InnoDB压缩行格式性能测试( 二 )
2.2 数据量超过内存ibp容量
sysbench参数调整ROWS , 其余不变 。
ROWS=5000000 #每个表500万行数据
2.2.1 数据压缩率
未压缩格式(KB) 压缩格式(KB) 压缩率(1-压缩格式/未压缩格式)59596904 40210556 34.03%2.2.2 TPS相差值
本文插图
2.2.3 平均延迟差值 avg Latency (ms)
本文插图
2.2.4 99%延迟差值 99th percentile Latency (ms)
本文插图
根据测试结果的几点结论:
a) 当数据无法全部放在buffer pool中的时候 , 如果是读多写少的业务场景 , 则用Compressed行格式性能更高 。
b) 当数据无法全部放在buffer pool中的时候 , 如果是写多读少的业务场景 , 则用Dynamic行格式性能更高 。
综上 , 当数据量比较小的时候 , 并且读多写少的业务场景中 , 可以考虑使用压缩行格式 。
3. 总结
根据上面的测试结果来看 , 如果是下面几种业务场景 , 则可以考虑使用InnoDB表想要使用compressed行格式:
a) 对压缩比需求不是特别高 , 本案中 , 只压缩了 25% ~ 34% 数据量 , 优势不大 。
b) 数据量无法全部加载到buffer pool中的时候 , 读多写少的业务场景 。
本案中 , 测试条件存在几点不足:
a) 服务器配置不算高 。
b) 测试持续时长不够 , 只有15分钟 。
c) 测试表和实际业务预计相差比较大 , 实际业务环境中 , 可能文本类型列会多一些 , 这样压缩比也会高一些 。
综合来看 , 类似下面的业务场景 , 可以考虑使用compressed格式:
a) 数据量较大 , 且文本数据较多 。
b) 磁盘比较紧张 。
c) 读多写少 。
最后 , 最好还是自己再亲自测试下比较靠谱哈 。
延伸阅读
- 15.9 InnoDB Table and Page Compression, https://dev.mysql.com/doc/refman/8.0/en/innodb-compression.html
推荐阅读
- Voluntour义工旅行|这部8.0分的电影主角离世:一只猫能改变什么?
- 苏童|均分8.0的7本中国小说,任选一本过周末
- 若尔盖花湖|1158.03万亩天然草场,数十公里花海浩瀚盛放,这儿空气都是甜的
- 格式化孤单|中公教育李永新:创业并非儿戏,最忌“真假坚持” 上
- 网易蜗牛读书|豆瓣8.0+,看懂了这5本书,你就看懂了人性
- 格式|什么是“引用格式” (Citation Style)?
- 一杯咖啡|人际格式塔:如何在第一次谈话中,简易区分出人格障碍类型?
- 购车网|又一中型车价格亲民,由9.49万降至8.09万,轴距2770mm值得买吗?
- 轮胎|15.96万起,实测8.06秒破百,这款国产SUV性能不俗
- 毕业经历“云毕业” 68.0%受访毕业生表示会更珍惜身边人
