1.2 通用指标
95%SQL语句执行平均时长 |
1.3 环境配置
1.4 优化模型
- ./dminit PATH=/data/dmdata PAGE_SIZE=32 EXTENT_SIZE=32 LOG_SIZE=2048 CHARSET=1 CASE_SENSITIVE=1 BLANK_PAD_MODE=1
- 使用Adj3.4优化脚本优化。
- 本次测试的目的主要是针对于bios层对数据库的影响。
1.5 性能对比
- 测试一到八以默认为100%来对比,测试九以测试四为100%来对比,红色为负优化,蓝色为正优化。
- 上下浮动2~3%为误差,可以忽略不记.
- oltp_read_only:测试只读场景的性能,其中SQL事务包括点查、范围查询、聚合函数查询、排序查询、distinct查询
- oltp_read_write:测试读写场景的性能,其中SQL事务包括点查、范围查询、聚合函数查询、排序查询、distinct查询、更新索引列、更新非索引列、插入、删除。
- oltp_point_select:测试点查场景的性能,其中SQL事务仅包含点查。
100%/86%/99%/99%/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
100%/97%/99%/99%/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
103%/94% | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
98%/100% | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
100%/91%/96%/99%/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
100%/94%/96%/95%/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
103%/100%/100%/102%/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
100%/95%/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
二、压力测试模型
2.1 数据模
create tablespace "SYSBENCH" datafile '/data/dmdata/DAMENG/SYSBENCH.DBF' size 20480 autoextend on maxsize 67108863 CACHE = NORMAL;
create user "SYSBENCH" identified by "SYSBENCH" password_policy 0
default tablespace "SYSBENCH"
default index tablespace "SYSBENCH";
grant "PUBLIC","SOI","VTI","DBA"to "SYSBENCH";
2.2 压力测试
默认
oltp_read_only
oltp_read_write
oltp_point_select
测试一
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12 prepare
oltp_read_only
测试二
oltp_read_only
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60 --report-interval=5 run
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run
清理数据
测试三
oltp_read_only
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60 --report-interval=5 run
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run
图片省略
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60 --report-interval=5 run
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run
图片省略ltp_point_select
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60 --report-interval=5 run
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run
图片省略
清理数据
测试四
oltp_read_only
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60 --report-interval=5 run
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run
图片省略
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60 --report-interval=5 run
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run
图片省略
测试五
oltp_read_only
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60 --report-interval=5 run
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run
图片省略
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60 --report-interval=5 run
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run
图片省略
清理数据
测试六
oltp_read_only
oltp_read_write
测试七
oltp_read_only
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60 --report-interval=5 run
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run
oltp_read_write
图片省略
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60 --report-interval=5 run
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run
图片省略
清理数据
测试八
oltp_read_only
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60 --report-interval=5 run
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run
图片省略
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60 --report-interval=5 run
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run
oltp_point_select
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60 --report-interval=5 run
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run
清理数据
测试九
oltp_read_only
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60 --report-interval=5 run
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run
oltp_read_write
- 测试结论:
测试过程中均未发现内存、硬盘、网络瓶颈,且CPU占用率基本对等,说明服务器发挥出正常性能,以下为各参数对性能影响。
- 结论1:电源模式修改为性能,服务器负载与内存使用增加,性能未提升,使用默认节能模式即可。
- 结论2:内存刷新频率修改为Auto,内存使用增加30%,性能降低,使用默认32ms即可。
- 结论3:PCI-E带宽修改为512,性能提升5~10%,内存使用增加30%,内存充足的情况下可以优化此参数增加性能,否则默认即可。
- 结论4:CPU预取关闭,点查场景CPU降低10%使用率,读写场景下功耗降低7~10%使用率,三种场景下内存均降低10~15%使用率,只读场景的提升很大并且稳定提升20%,但是读写混合场景性能不稳定+-15%,cpu利用率忽高忽低。因此,对于经常读写的系统,看情况修改此参数。