通过配置slob.conf,你可以修改负载的属性,包括表扫描的大小和UPDATE的比例。从而调整压力的负载类型。起到不同场景的压测作用。
启动压测后,系统负载很快就可以达到最高峰:
可以看出,当前的IO负载很快就让dm-12压到出现性能问题了。从系统的健康模型上看:
IO相关的问题也已经显现出来了。从数据库的实时监控情况看,在IO方面的问题也显现出来了:
对于SLOB,通过调整下面的参数,可以修改相关的行为,进行一些除了IO压测之外的压测:
UPDATE_PCT=5 调整UPDATE的比例到0,可以大幅度减少修改操作,从而把测试重点放在读IO上,增加UPDATE的比例,可以测试高修改比例下的IO性能
SCAN_PCT=10 调整全表扫描的比例
RUN_TIME=900 运行时间
WORK_LOOP=0
SCALE=80M 目标表的大小
SCAN_TABLE_SZ=20M 扫描大小
WORK_UNIT=64
REDO_STRESS=LITE REDO产生量的大小
LOAD_PARALLEL_DEGREE=8
THREADS_PER_SCHEMA=20 每个SCHEMA的会话数,在SETUP的时候可以创建多个SCHEMA,压测时runit.sh 的数量不能超过SETUP时创建的SCHEMA数量。
如果有人对SLOB有兴趣,可以深度修改相关代码,做一些自己想做的压测。同时,因为SLOB的2.4版本对12c支持不够,因此要用2.4版本压测12c,需要对代码做一些修改,最新的2.5版本对12c的支持已经比较完善了。