SAS vs SSD各种模式下MySQL TPCC OLTP对比测试结果

在各种测试组合方案中,组合10(组合10:SSD * 2, RAID 0, XFS,WB,nobarrier,noop)的综合性能最高,因此以它为基准,其他方案与其对比,下表是各组合和组合10的对比:

相应的对比线形图:

测试环境:

结语
1. 在xfs文件系统模式下,SSD设备的性能是SAS设备性能的6 ~ 13倍,平均:9倍,在并发16线程时最高(和MySQL的内部机制有关);
2. SSD设备使用noop模式的IO调度器效率最高(关于Linux内核IO调度器详见:http://www.redhat.com/magazine/008jun05/features/schedulers/);
3. xfs设置为nobarrier相比启用barrier效率高(关于barrier介绍详见:http://xfs.org/index.php/XFS_FAQ#Write_barrier_support);
4. 建议仍旧启用阵列卡的WB策略以提高整体阵列随机IO性能;
5. 在ext4文件系统模式下,SSD设备的性能是SAS设备性能的4.9~8.6倍,平均:6.6倍,在并发16线程时最高(和MySQL的内部机制有关);
6. 在SSD设备模式下,xfs文件系统的性能是ext4文件系统性能的1.06~1.39倍,平均:1.15倍;
7. 在SSD设备模式下,OLTP并发32线程时效率最高,相比8线程提升 37.1%,相比16线程提升3.9%,相比64线程提升7.2%,相比128线程提升19.5%,相比256线程提升41.6%;
8. 使用SSD设备时,2块盘组成RAID 0相比RAID 1的性能提升并不明显,提升最高约9%;
9. 需要使用LVM时,也尽量先把硬盘组成物理阵列以提升性能,不要把裸盘直接组成LVM组,基于硬件阵列的LVM性能最高是基于裸盘的LVM的2.723倍;
10. 由于ext3下运行mysql效率较低,没有进行测试。

--------------------------------------分割线--------------------------------------

知数堂 (http://zhishuedu.com)培训是由资深MySQL专家叶金荣、吴炳锡联合推出的专业优质培训品牌,主要有MySQL DBA实战优化和Python运维开发课程,是业内最有良心、最有品质的培训课程。

时间: 2024-10-06 02:13:49

SAS vs SSD各种模式下MySQL TPCC OLTP对比测试结果的相关文章

命令行模式下 MYSQL导入导出.sql文件的方法

一.MYSQL的命令行模式的设置:桌面->我的电脑->属性->环境变量->新建->PATH=“:path\mysql\bin;”其中path为MYSQL的安装路径.二.简单的介绍一下命令行进入MYSQL的方法:1.C:\>mysql -h hostname -u username -p  .C:\>mysql -h localhost -u root-p按ENTER键,等待然后输入密码.这里hostname为服务器的名称,如localhost,username为M

x64 release模式下mysql编译连接错误解决办法

系统:win8 64位 MySQL 5.7 32 原来项目是debug 32位编译的 后来改成release 64位  结果编译没错 连接时候错误  无法解决 的外部符号之类的 解决办法: 1  下载x64位的dll ,lib文件 下载链接:点击打开链接 2  将libmysql64.lib以及libmysql64.dll拷贝到数据库安装目录下面,也就是原来libmysql.lib同级目录下面 3 我的程序里面lib是这样导进去的.所以我在这里改成了libmysql64.lib #pragma

binlog_format=ROW模式下mysql表无主键造成的从库延迟(卡住)

场景: MySQL-5.6.30, 主从架构, 只读从库的SQL线程卡在某一个事务两个多小时没有动过, show processlist发现从库当时没有连接和慢查询语句;show open TABLES where In_use >0; 发现一个表被锁定如下: mysql> show open TABLES where In_use >0; +----------+---------------+--------+-------------+ | Database | Table | I

SAS vs SSD对比测试MySQL tpch性能

早先已经做过一次OLTP性能对比测试:SAS vs SSD各种模式下MySQL TPCC OLTP对比测试结果,这次做OLAP对比测试. 对比测试结果见下: SSD设备相应的性能提升比例: 测试环境: --------------------------------------分割线-------------------------------------- 知数堂 (http://zhishuedu.com)培训是由资深MySQL专家叶金荣.吴炳锡联合推出的专业优质培训品牌,主要有MySQL

MySQL 解密 --> 如何查看二进制日志ROW模式下最原始的SQL语句

MySQL的binlog的ROW模式解析          在mysql5.6以后,对主从数据一致性要求变高了,statement格式逐渐不太适合业务的需求了,所以生产环境大家都采用了row模式,row模式是传输最底层的数据变化的insert的模块来进行主从数据的传输,那么在binlog里面就和普通的statement模式有何差别?能否看到最原始的sql语句呢? 1.准备录入数据 mysql> create table test1(id int,c1 varchar(20),type int,a

3.5 在批处理模式下使用mysql

在前面的章节中,你交互式地使用mysql输入查询而且查看结果.你也能够以批模式执行mysql.为了做到这些.把你想要执行的命令放在一个文件里,然后告诉mysql从文件读取它的输入: shell> mysql < batch-file 假设你是在Windows系统下执行,而且你的文件里有一些可能会造成问题的特殊字符,你能够这么做: C:\> mysql -e "source batch-file" 假设你须要在命令行上指定连接參数,命令应为: shell> mys

MySQL 5.7 GTID模式下 skip 1032 Error

一个偶然的事情,线上一部MySQL slave 被人误删了数据,然后又在 master上执行了同样的 delete 操作,导致从库报了1032错误. 其实这种情况下,如果能将缺少的记录重新insert 进去,再 start slave就可以完美解决: 问题在于不知道他具体操作了什么数据,所以想直接跳过这个事务. 脑海里回想了下GTID模式下跳过1032 的步骤,大概步骤是: mysql> SET @@SESSION.GTID_NEXT= '4ab8feff-5272-11e8-9320-0800

mysql交互模式下执行sql文件

进入到mysql交互模式下, 创建库: create database my_database default charset utf8 collate utf8_general_ci; 进入自己的库: use my_database; 执行sql文件语句: source table.sql ; 注意事项:mysql交互模式需要在weixin.sql文件同级目录下打开. 原文地址:https://www.cnblogs.com/qxh-beijing2016/p/12512428.html

Azure ARM (11) ARM模式下,创建虚拟机并配置负载均衡器

<Windows Azure Platform 系列文章目录> 本文内容比较多,请大家仔细阅读,谢谢! 在前几章中,我们做了准备工作: 1.创建ARM Resouce Group,叫LeiResourceGroup 2.创建ARM Storage Account,叫leistorageaccount 3.创建ARM Virtual Network,叫LeiARMVNet 在本章中,笔者将介绍如何在ARM模式下,创建虚拟机VM.主要分为以下几步: 1.创建第一台ARM VM LeiARMWeb0