MySQL 8.0 InnoDB压缩行格式性能测试(2)

本文涉及的产品
RDSClaw,2核4GB
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS AI 助手,专业版
简介: 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相差值


image.png


2.2.3 平均延迟差值 avg Latency (ms)


image.png


2.2.4 99%延迟差值 99th percentile Latency (ms)


image.png


根据测试结果的几点结论:

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) 读多写少。

最后,最好还是自己再亲自测试下比较靠谱哈。

延伸阅读

enjoy MySQL :)

全文完。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
12月前
|
存储 网络协议 关系型数据库
MySQL8.4创建keyring给InnoDB表进行静态数据加密
MySQL8.4创建keyring给InnoDB表进行静态数据加密
454 1
|
7月前
|
存储 关系型数据库 MySQL
介绍MySQL的InnoDB引擎特性
总结而言 , Inno DB 引搞 是 MySQL 中 高 性 能 , 高 可靠 的 存 储选项 , 宽泛 应用于要求强 复杂交易处理场景 。
295 15
|
存储 缓存 关系型数据库
【MySQL进阶篇】存储引擎(MySQL体系结构、InnoDB、MyISAM、Memory区别及特点、存储引擎的选择方案)
MySQL的存储引擎是其核心组件之一,负责数据的存储、索引和检索。不同的存储引擎具有不同的功能和特性,可以根据业务需求 选择合适的引擎。本文详细介绍了MySQL体系结构、InnoDB、MyISAM、Memory区别及特点、存储引擎的选择方案。
2254 57
【MySQL进阶篇】存储引擎(MySQL体系结构、InnoDB、MyISAM、Memory区别及特点、存储引擎的选择方案)
|
12月前
|
SQL 缓存 关系型数据库
使用温InnoDB缓冲池启动MySQL测试
使用温InnoDB缓冲池启动MySQL测试
226 0
|
存储 关系型数据库 MySQL
MySQL存储引擎详述:InnoDB为何胜出?
MySQL 是最流行的开源关系型数据库之一,其存储引擎设计是其高效灵活的关键。InnoDB 作为默认存储引擎,支持事务、行级锁和外键约束,适用于高并发读写和数据完整性要求高的场景;而 MyISAM 不支持事务,适合读密集且对事务要求不高的应用。根据不同需求选择合适的存储引擎至关重要,官方推荐大多数场景使用 InnoDB。
725 7
|
8月前
|
前端开发 Java jenkins
Jmeter压力测试工具全面教程和使用技巧。
JMeter是一个能够模拟高并发请求以检查应用程序各方面性能的工具,包括但不限于前端页面、后端服务及数据库系统。熟练使用JMeter不仅能够帮助发现性能瓶颈,还能在软件开发早期就预测系统在面对真实用户压力时的表现,确保软件质量和用户体验。在上述介绍的基础上,建议读者结合官方文档和社区最佳实践,持续深入学习和应用。
1710 10
|
10月前
|
Java 测试技术 容器
Jmeter工具使用:HTTP接口性能测试实战
希望这篇文章能够帮助你初步理解如何使用JMeter进行HTTP接口性能测试,有兴趣的话,你可以研究更多关于JMeter的内容。记住,只有理解并掌握了这些工具,你才能充分利用它们发挥其应有的价值。+
1400 23
|
监控 网络协议 Java
一些适合性能测试脚本编写和维护的工具
一些适合性能测试脚本编写和维护的工具
660 59
|
监控 测试技术 开发工具
移动端性能测试工具
移动端性能测试工具
1322 2
|
运维 测试技术 Linux
关于Stress 压力测试工具的介绍与使用
在日益复杂的计算环境中,保证系统的稳定性和性能成为了每个Linux管理员的核心任务。面对不断增长的数据量和业务需求,如何有效评估系统极限和潜在瓶颈? 压力测试工具:stress,成为了不可或缺的助手。这篇记录描述stress工具的使用方法及其在模拟真实负载中的实用性。
关于Stress 压力测试工具的介绍与使用

推荐镜像

更多
下一篇
开通oss服务