temp: tpch测试

来源:互联网 发布:java的todo 编辑:程序博客网 时间:2024/04/30 13:49

1.

http://imysql.cn/2012/12/25/sas-vs-ssd-mysql-tpch-olap-benchmark.html

早先已经做过一次OLTP性能对比测试:SAS vs SSD各种模式下MySQL TPCC OLTP对比测试结果,这次做OLAP对比测试。

对比测试结果见下:

SSD设备相应的性能提升比例:

测试环境:

 

 

2.

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

http://imysql.com/2012/09/11/sas-vs-ssd-mysql-tpcc-oltp-benchmark.html

 

在各种测试组合方案中,组合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效率较低,没有进行测试。

 

3.

http://imysql.cn/comment/9762#comment-9762

 

一、简述
是由原来 MySQL 的作者 Michael Widenius 创办的公司所开发的免费开源的数据库服务器。MariaDB基于事务的Maria存储引擎,替换了MySQL的MyISAM存储引擎,它使用了Percona的 XtraDB,InnoDB的变体。这个版本还包括了 PrimeBase XT (PBXT) 和 FederatedX 存储引擎。(摘自:http://baike.baidu.com/view/2521908.htm)
简单的说:MariaDB是MySQL的一个变种,可以作为官方MySQL版本的一个替代品,并且在一些特性上做了增强。
MariaDB的官网见:http://mariadb.org

二、测试环境
2.1 详细测试环境见下图:

2.2 自动化测试脚本例子见下:

#!/bin/sh#export LD_LIBRARY_PATH=/usr/local/mysql/lib/ . ~/.bash_profile >/dev/null 2>&1BASEDIR="/home/tpcc-mysql"cd $BASEDIRmkdir -p $BASEDIR/logsexec 3>&1 4>&2 1>> tpcc.log 2>&1#执行tpcc测试的数据库IPDBIP=localhostDBUSER='root'DBPASS=''#测试模式:1000个仓库WIREHOUSE=1000DBNAME="tpcc${WIREHOUSE}"#数据预热时间:120秒WARMUP=120#执行测试时长:1小时DURING=3600#测试模式MODE="percona55_innodb_buf26G_1bp_1000dw_xfs_deadline_6disk_raid10"#初始化测试环境if [ -z "`mysqlshow -h$DBIP -u$DBUSER -p$DBPASS|grep -v grep|grep \"$DBNAME\"`" ] ; then mysqladmin -h$DBIP -u$DBUSER -p$DBPASS -f create $DBNAME mysql -h$DBIP -u$DBUSER -p$DBPASS -f $DBNAME  /proc/sys/vm/drop_caches; /etc/init.d/mysql start; sleep 60#开始执行tpcc测试./tpcc_start -h $DBIP -d $DBNAME -u $DBUSER -p "${DBPASS}" -w $WIREHOUSE -c $THREADS -r $WARMUP -l $DURING -f ./logs/tpcc_${MODE}_${NOW}_${THREADS}_THREADS_${CYCLE}.res >> ./logs/tpcc_runlog_${MODE}_${NOW}_${THREADS}_THREADS_${CYCLE} 2>&1doneCYCLE=`expr $CYCLE + 1`done

2.3 重点配置选项差异对比

三、测试结果
备注:

独享是指:使用独立表空间模式;1bp/8bp 分别指:设置innodb buffer pool instance为1或者8。

3.1 TPCC数据初始化对比

3.2 TpmC结果对比

本次对比测试中,在模式 "percona 5.6.6-m9-56(独享,1 bp)"(黄色底) 下的综合TpmC效率最高。因此也直接以它为基准,对比了其他几种测试模式的TpmC效率。

四、小结
本次只做了TpmC简单对比基准测试,MySQL 5.6以及MariaDB所宣称的各种改进以及特性暂未关涉及。
从测试结果来看,Percona 5.6的性能仍然有较大优势;另外,和以前版本对比,在一定线程数之内,并发线程数越多,TpmC效率也越高。