首页 > 数据库 > > 租户管理-异常处理(查询规则)
GaussDB 200支持对异常的作业执行终止或者降级操作。系统通过设置控制组参数来进行异常处理。异常阈值如表1中所示。
异常阈值类型 | 说明 | 取值范围(0表示取消设置) | 支持的异常操作 |
|---|---|---|---|
blocktime | 作业的阻塞时间,单位秒。包括全局并发排队以及局部并发排队的总时间。 | 0~UINT_MAX | abort |
elapsedtime | 作业的已被执行时间,单位秒。从开始执行到当前所消耗的时间。 | 0~UINT_MAX | abort |
allcputime | 作业在所有DN上执行时所耗费的CPU总时间,单位秒。 | 0~UINT_MAX | abort,penalty |
cpuskewpercent | 作业在DN上执行时的CPU时间的倾斜率,依赖于qualificationtime的设置。 | 0~100 | abort,penalty |
qualificationtime | 检查作业执行cpu倾斜率的间隔时间,单位秒,需同cpuskewpercent一起设置。 | 0~UINT_MAX | none |
spillsize | 作业在DN上下盘的数据量,单位MB。 | 0~UINT_MAX | abort |
broadcastsize | 作业在DN上算子大表广播数据量,单位MB。 | 0~UINT_MAX | abort |
当作业执行超过以上阈值中的某一个时,就会触发以下任意异常动作类型的操作。
作业满足设置的异常阈值后执行终止作业,可以通过参数“-a”或“--abort”指定。
作业执行中超过设置的异常阈值后对作业执行降级操作,可以通过“--penalty”参数指定。
qualificationtime为检查作业执行CPU倾斜率的间隔时间,单位为秒。
说明:在GaussDB 200中,需要在每个集群节点上执行控制组的创建、更新、删除操作,才能实现对整个集群资源的控制,所以下述步骤中都使用gs_ssh命令执行。
gs_ssh -c "gs_cgroup -S class_a -G workload_a1 -E "blocktime=1200,elapsedtime=2400" -a"设置“class_a”下属“workload_a2”的作业下盘数据量达到256MB或大表广播数据量达到100MB时执行终止动作。
gs_ssh -c "gs_cgroup -S class_a -G workload_a2 -E "spillsize=256,broadcastsize=100" -a"设置“class_b”下属“workload_b1”的作业在所有DN上CPU总时间到达100s时执行降级动作。
gs_ssh -c "gs_cgroup -S class_b -G workload_b1 -E "allcputime=100" --penalty"设置“class_b”下属“workload_b2”的作业在所有DN上执行时间到达2400秒,且倾斜率达到90时执行降级动作。
gs_ssh -c "gs_cgroup -S class_b -G workload_b2 -E "qualificationtime=2400,cpuskewpercent=90" --penalty"说明:
SELECT * FROM gs_respool_exception_info('default_pool');name | class | workload | rule | type | value
---------------------+--------------+----------+-------------------+---------+-------
DefaultClass:Medium | DefaultClass | Medium | BlockTime | Abort |
DefaultClass:Medium | DefaultClass | Medium | ElapsedTime | Abort | 0
DefaultClass:Medium | DefaultClass | Medium | AllCpuTime | Abort |
DefaultClass:Medium | DefaultClass | Medium | QualificationTime | Abort | 0
DefaultClass:Medium | DefaultClass | Medium | CPUSkewPercent | Abort |
DefaultClass:Medium | DefaultClass | Medium | BlockTime | Penalty | 0
DefaultClass:Medium | DefaultClass | Medium | ElapsedTime | Penalty |
DefaultClass:Medium | DefaultClass | Medium | AllCpuTime | Penalty | 0
DefaultClass:Medium | DefaultClass | Medium | QualificationTime | Penalty | 1800
DefaultClass:Medium | DefaultClass | Medium | CPUSkewPercent | Penalty | 30
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3126489/ ,如需转载,请注明出处,否则将追究法律责任。