|
4.2 测试环境
- Dell PowerEdge R410
- RAM:64G
- Kernel: 2.6.32
- MongoDB:3.0.7
- MySQL:5.5.40
- Linux OS:CentOS release 6.5 x86_64
- CPU:Intel(R) Xeon(R) CPU X5650 @2.67GHz / 24 cores
4.3 测试过程
测试的数据量变量名假定为size,分别取值为200w、400w、600w、800w、1000w.
每次使用单进程对单个表压测,每个表均含有4个字段,每次压测时间不超过30分钟.
为了让数据更加符合我们想要的结果,每轮测试完成后,我们都重启mysqld和mongodb实例,并且用下面的方法删除系统cache,释放swap.
#sync — 将脏数据刷新到磁盘
#echo 3 > /proc/sys/vm/drop_caches — 清除OS Cache
#swapoff -a && swapon -a
4.3.1 sysbench
4.3.1.1 准备工作
(1) 创建测试库
mysql> drop database if exists sysbench_test;
mysql> create database if not exists sysbench_test character set utf8 collate utf8_general_ci;
(2) 查看表结构
`id` int(10) unsigned NOT NULL auto_increment,
`k` int(10) unsigned NOT NULL default ‘0’,
`c` char(120) NOT NULL default ”,
`pad` char(60) NOT NULL default ”,
PRIMARY KEY (`id`),
KEY `k` (`k`));
4.3.1.2 只读测试
测试命令:
# ./bin/sysbench –db-driver=mysql –test=oltp.lua –num-threads=1
–oltp_tables_count=1 –oltp-table-size=${size} –report-interval=10
–oltp-dist-type=uniform –rand-init=on –max-requests=0
–oltp-test-mode=nontrx –oltp-nontrx-mode=select
–oltp-read-only=on –oltp-skip-trx=on –mysql-table-engine=innodb
–mysql-socket=/tmp/mysql.sock –mysql-user=root –mysql-host=localhost
–mysql-password=`cat /data/save/mysql_root` –mysql-port=3306
–mysql-db=sysbench_test [ prepare | run | cleanup ]
4.3.1.3 只更新测试
测试命令:
#./bin/sysbench –db-driver=mysql –test=./share/sysbench/update_index.lua
–num-threads=1 –oltp_tables_count=1 –oltp-table-size=${size} –report-interval=10
–oltp-dist-type=uniform –rand-init=on –max-requests=0
–oltp-read-only=off –mysql-table-engine=innodb –mysql-socket=/tmp/mysql.sock
–mysql-user=root –mysql-host=localhost –mysql-password=`cat /data/save/mysql_root`
–mysql-port=3306 –mysql-db=sysbench_test [ prepare | –max-time=1800 run | cleanup ]
4.3.1.4 只插入测试
测试命令:
#./bin/sysbench –db-driver=mysql –test=./share/sysbench/insert.lua –num-threads=1
–oltp_tables_count=1 –oltp-table-size=${size} –report-interval=10
–oltp-dist-type=uniform –rand-init=on –max-requests=0 –oltp-read-only=off
–mysql-table-engine=innodb –mysql-socket=/tmp/mysql.sock –mysql-user=root
–mysql-host=localhost –mysql-password=`cat /data/save/mysql_root` –mysql-port=3306
–mysql-db=sysbench_test [ prepare | –max-time=1800 run | cleanup ]
4.3.1.5 混合模式测试
测试命令:
#./bin/sysbench –test=./share/sysbench/oltp.lua –mysql-host=localhost –mysql-port=3306
–mysql-user=root –mysql-password=`cat /data/save/mysql_root`
–mysql-db=sysbench_test –mysql-table-engine=innodb
–oltp-table-size=${size} –report-interval=10 –rand-init=on –max-requests=0
–oltp-read-only=off –oltp-point-selects=$((size/3)) –oltp-point-inserts=$((size/3))
–oltp-index-updates=$((size/3)) –num-threads=1 –mysql-ignore-errors=all
–oltp-skip-trx=off –oltp_tables_count=1 [ prepare | –max-time=1800 run | cleanup ]
参数含义请参考上面的使用说明章节.
4.3.2 ycsb
4.3.2.1 准备工作
(编辑:网站开发网_盐城站长网 )
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|