sysbench oltp_read_only 33万qps 32c128g 1-1-1

测试流程 完全参考使用obd 运行sysbench, 没有对observer 进行额外优化.

参考文档 OceanBase 社区

oltp_read_only: thds: 1024 tps: 20868.75 qps: 333963.95 (r/w/o: 292226.06/0.00/41737.89) lat (ms,95%): 108.68 err/s: 0.00 reconn/s: 0.00

oltp_write_only:thds: 1024 tps: 25568.93 qps: 153799.43 (r/w/o: 0.00/102559.39/51240.04) lat (ms,95%): 64.47 err/s: 0.00 reconn/s: 0.00

oltp_read_write: thds: 1024 tps: 9011.22 qps: 180156.33 (r/w/o: 126102.98/36042.59/18010.76) lat (ms,95%): 257.95 err/s: 0.00 reconn/s: 0.00

硬件配置:

阿里云ecs: 32core 128g, 系统盘essd 200GiB (4200 IOPS), 数据盘 essd 500GiB (26800 IOPS)

操作步骤:

  1. 用obd 部署1-1-1 集群, 这里一个小细节, 因为硬盘不够大, 没有使用autodeploy, 直接使用deploy, observer 内存设置为118g 内存, 系统目录和redo log 都是用系统盘, 数据目录使用数据盘
  2. 用obd 创建租户perf
  3. 有一个细节,sysbench和obproxy运行在同一台虚拟机下,虚拟机配置为32core128g,就一块essd系统盘 200GiB (11800 IOPS)
  4. 运行脚本

#!/bin/bash echo “run oltp_read_only test” obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_read_only.lua --table-size=1000000 --threads=32 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_read_only.lua --table-size=1000000 --threads=64 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_read_only.lua --table-size=1000000 --threads=128 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_read_only.lua --table-size=1000000 --threads=256 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_read_only.lua --table-size=1000000 --threads=512 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_read_only.lua --table-size=1000000 --threads=1024 echo “run oltp_write_only test” obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_write_only.lua --table-size=1000000 --threads=32 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_write_only.lua --table-size=1000000 --threads=64 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_write_only.lua --table-size=1000000 --threads=128 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_write_only.lua --table-size=1000000 --threads=256 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_write_only.lua --table-size=1000000 --threads=512 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_write_only.lua --table-size=1000000 --threads=1024 echo “run oltp_read_write test” obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_read_write.lua --table-size=1000000 --threads=32 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_read_write.lua --table-size=1000000 --threads=64 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_read_write.lua --table-size=1000000 --threads=128 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_read_write.lua --table-size=1000000 --threads=256 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_read_write.lua --table-size=1000000 --threads=512 obd test sysbench obperf --component=obproxy --tenant=perf --script-name=oltp_read_write.lua --table-size=1000000 --threads=1024

有一点遗憾:没有实时去看压测机和observer的cpu利用率,检查cpu是不是还有余量,理论上,如果压测机cpu已经跑满,但observer还有富余时,可以增加压测机进行增进压力

sysbench.log.zip (9985 KB)

1 个赞

欢迎大家添加自己的测试结果