负载管理
未对数据库资源做控制时,容易出现并发任务抢占资源导致操作系统过载甚至最终崩溃。操作系统过载时,其响应用户任务的速度会变慢甚至无响应;操作系统崩溃时,整个系统将无法对用户提供任何服务。GaussDB的负载管理功能能够基于可用资源的多少均衡数据库的负载,以避免数据库系统过载。
use_workload_manager
参数说明:设置是否开启资源管理功能。此参数需在CN和DN同时应用。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示打开资源管理。
- off:表示关闭资源管理。
默认值:on
设置方式:该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
- 当使用表1中的方式二来修改参数值时,新参数值只能对更改操作执行后启动的线程生效。此外,对于后台线程以及线程复用执行的新作业,该参数值的改动不会生效。如果希望这类线程即时识别参数变化,可以使用kill session或重启节点的方式来实现。
- use_workload_manager参数由off变为on状态后,不会统计off时的存储资源。如果需要统计off时用户使用的存储资源,请在数据库中执行以下SQL语句:
1
SELECT gs_wlm_readjust_user_space(0);
enable_control_group
参数说明:设置是否开启Cgroups功能。此参数需在CN和DN同时应用。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示打开Cgroups功能。
- off:表示关闭Cgroups功能。
默认值:on
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置,当使用表中的方式二来修改参数值时,新参数值只能对更改操作执行后启动的线程生效。
设置建议:对于后台线程以及线程复用执行的新作业,该值的改动不会生效,如果希望这类线程即时识别参数变化,可以使用kill session或重启节点的方式来实现。
设置不当的风险与影响:同时开启该参数和资源管控功能(use_workload_manager)后会使用户资源管控功能生效,降低用户执行的作业的性能。
enable_cgroup_switch
参数说明:控制数据库执行语句时是否根据类型自动切换到TopWD组。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示数据库执行语句时根据类型自动切换到TopWD组。
- off:表示数据库执行语句时根据类型不自动切换到TopWD组。
默认值:off
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
当且仅当enable_control_group参数取值为on时,该参数设置有效。
cgroup_name
参数说明:设置当前使用的Cgroups的名称以及调整当前group下排队的优先级。
如果先设置cgroup_name,再设置session_respool,那么session_respool关联的控制组起作用,如果再修改cgroup_name,那么新修改的cgroup_name起作用。
修改cgroup_name的过程中如果指定Workload控制组级别,数据库不对级别进行验证。级别的范围只要在1-10范围内都可以。
参数类型:字符串
参数单位:无
取值范围:已有控制组的名称。
默认值:"DefaultClass:Medium"
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。
设置建议:尽量不要混合使用cgroup_name和session_respool。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
DefaultClass:Medium表示DefaultClass下Timeshare控制组中的Medium控制组。
enable_backend_control
参数说明:控制数据库常驻线程是否绑定到DefaultBackend控制组。此参数需在CN和DN同时应用。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示常驻线程绑定到DefaultBackend控制组。
- off:表示常驻线程不绑定到DefaultBackend控制组。
默认值:on
设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
当且仅当enable_control_group参数取值为on时,该参数设置有效。
enable_vacuum_control
参数说明:控制数据库常驻线程中的autoVacuumWorker是否绑定到Vacuum控制组。此参数需在CN和DN同时应用。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示数据库常驻线程中的autoVacuumWorker绑定到Vacuum控制组。
- off:表示数据库常驻线程中的autoVacuumWorker不绑定到Vacuum控制组。
默认值:on
设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
当且仅当enable_control_group参数取值为on时,该参数设置有效。
enable_perm_space
参数说明:设置是否开启perm space功能。此参数需在CN和DN同时应用。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示打开perm space管理。
- off:表示关闭perm space管理。
默认值:on
设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
enable_verify_active_statements
参数说明:在静态自适应负载场景下,是否开启后台校准功能。此参数需在CN上应用。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示打开后台校准功能。
- off:表示关闭后台校准功能。
默认值:on
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
parctl_min_cost
参数说明:设置语句受到资源池并发控制的最小执行代价。
参数类型:整型
参数单位:无
取值范围:-1 ~ 2147483647
- 值为-1时或者执行语句的代价小于10时,不受资源池并发控制。
- 值大于等于0时,当enable_dynamic_workload为off时,如果执行语句的代价大于或等于10并且超过这个参数值就会受到资源池并发控制。
默认值:100000
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
cpu_collect_timer
参数说明:设置语句执行时在DN上收集CPU时间的周期。
参数类型:整型
参数单位:秒(s)
取值范围:1 ~ 2147483647
默认值:30
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。取值不能带单位。
设置建议:数据库管理员需根据系统资源(如CPU资源、I/O资源和内存资源)情况,调整此数值大小,使得系统支持较合适的收集周期,太小会影响执行效率,太大会影响异常处理的精确度。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
memory_tracking_mode
参数说明:设置记录内存信息的模式。
参数类型:枚举类型
参数单位:无
取值范围:
- none:不启动内存统计功能。
- peak:统计query级内存peak值;此数值记入数据库log,也可由explain analyze输出。
- normal:仅做内存实时统计,不生成文件。
- executor:生成统计文件,包含执行层使用过的所有已分配内存的上下文信息。
- fullexec:生成统计文件,包含执行层申请过的所有内存上下文信息。
默认值:none
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
memory_detail_tracking
参数说明:设置需要的线程内分配内存上下文的顺序号以及当前线程所在query的plannodeid,仅用在DEBUG版本。
参数类型:字符串
参数单位:无
取值范围:字符串
默认值:""
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。
设置建议:该参数不允许用户进行设置,建议保持默认值。
设置不当的风险与影响:无
enable_resource_track
参数说明:设置是否开启资源实时监控功能。此参数需在CN和DN同时应用。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示打开资源监控功能。
- off:表示关闭资源监控功能。
默认值:on
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
enable_resource_record
参数说明:设置是否开启资源监控记录归档功能。开启时,对于history视图(GS_WLM_SESSION_HISTORY和GS_WLM_OPERATOR_HISTORY)中的记录,每隔3分钟会分别被归档到相应的info视图(GS_WLM_SESSION_INFO和GS_WLM_OPERATOR_INFO),归档后history视图中的记录会被清除。此参数需在CN和DN同时应用。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示开启资源监控记录归档功能。
- off:表示关闭资源监控记录归档功能。
默认值:off
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
enable_logical_io_statistics
参数说明:设置是否开启资源监控逻辑I/O统计功能。开启时,对于PG_TOTAL_USER_RESOURCE_INFO视图中的read_kbytes、write_kbytes、read_counts、write_counts、read_speed和write_speed字段,会统计对应用户的逻辑读写字节数、次数以及速率;对于GS_WLM_USER_RESOURCE_HISTORY与GS_WLM_INSTANCE_HISTORY系统表中的逻辑读写相关字段,会统计相关用户、实例的逻辑读写对应值。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示开启资源监控逻辑I/O统计功能。
- off:表示关闭资源监控逻辑I/O统计功能。
默认值:on
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
enable_user_metric_persistent
参数说明:设置是否开启用户历史资源监控转存功能。开启时,对于PG_TOTAL_USER_RESOURCE_INFO视图中的数据,会定期采样保存到GS_WLM_USER_RESOURCE_HISTORY系统表(详见《开发指南》的“系统表和系统视图 > 系统表 > GS_WLM_USER_RESOURCE_HISTORY”章节)中。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示开启用户历史资源监控转存功能。
- off:表示关闭用户历史资源监控转存功能。
默认值:on
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
user_metric_retention_time
参数说明:设置用户历史资源监控数据的保存天数。该参数仅在enable_user_metric_persistent参数取值为on时有效。
参数类型:整型
参数单位:天(d)
取值范围:0 ~ 3650
- 值等于0时,用户历史资源监控数据将永久保存。
- 值大于0时,用户历史资源监控数据将保存对应天数。
默认值:7
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。取值如果要带单位,必须为d。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
enable_instance_metric_persistent
参数说明:设置是否开启实例资源监控转存功能。开启时,对实例的监控数据会保存到GS_WLM_INSTANCE_HISTORY系统表(详见《开发指南》的“系统表和系统视图 > 系统表 > GS_WLM_INSTANCE_HISTORY”章节)中。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示开启实例资源监控转存功能。
- off:表示关闭实例资源监控转存功能。
默认值:on
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
instance_metric_retention_time
参数说明:设置实例历史资源监控数据的保存天数。该参数仅在enable_instance_metric_persistent参数取值为on时有效。
参数类型:整型
参数单位:天(d)
取值范围:0 ~ 3650
- 值等于0时,实例历史资源监控数据将永久保存。
- 值大于0时,实例历史资源监控数据将保存对应设置天数。
默认值:7
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。取值如果要带单位,必须为d。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
resource_track_level
参数说明:设置当前会话的资源监控的等级。该参数仅在enable_resource_track参数取值为on时才有效。
参数类型:枚举类型
参数单位:无
取值范围:
- none:不开启资源监控功能。
- query:开启query级别资源监控功能。
- operator:开启query级别和算子级别资源监控功能。
默认值:query
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
resource_track_cost
参数说明:设置对当前会话的语句进行资源监控的最小执行代价。该参数仅在enable_resource_track参数取值为on时才有效。
参数类型:整型
参数单位:无
取值范围:-1 ~ 2147483647
- 值为-1时,不进行资源监控。
- 值大于等于0且小于等于9时,对执行代价大于等于10的语句进行资源监控。
- 值大于等于10时,对执行代价超过该参数值的语句进行资源监控。
默认值:100000
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
resource_track_duration
参数说明:设置资源监控实时视图中记录的语句执行结束后进行历史信息转存的最小执行时间。当执行完成的作业,其执行时间不小于此参数值时,作业信息会从实时视图(以statistics为后缀的视图)转存到相应的历史视图(以history为后缀的视图)中。该参数仅在enable_resource_track参数取值为on时才有效。
参数类型:整型
参数单位:秒(s)
取值范围:0 ~ 2147483647
- 值为0时,资源监控实时视图中记录的所有语句都进行历史信息归档。
- 值大于0时,资源监控实时视图中记录的语句的执行时间超过这个值就会进行历史信息归档。
默认值:60
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。例如,不带单位取值3600,表示resource_track_duration为3600s;带单位取值1h,表示resource_track_duration为1h。取值如果要带单位,必须为s、min、h、d。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
dynamic_memory_quota
参数说明:自适应负载场景下,设置内存控制的比重,即可以使用系统最大可用内存的比例。
参数类型:整型
参数单位:无
取值范围:1 ~ 100
默认值:80
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
disable_memory_protect
参数说明:设置是否禁止内存保护功能。当系统内存不足时如果需要查询系统视图,可以先将此参数置为on,禁止内存保护功能,保证视图可以正常查询。该参数只适用于在系统内存不足时进行系统诊断和调试,正常运行时请保持该参数配置为off。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示禁止内存保护功能。
- off:表示启动内存保护功能。
默认值:off
设置方式:该参数属于USERSET类型参数,且只对当前会话有效,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
query_band
参数说明:用于标识当前会话的作业类型,由用户自定义。
参数类型:字符串
参数单位:无
取值范围:字符串
默认值:""
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
memory_fault_percent
参数说明:设置内存故障测试时内存申请失败的比例,仅用在DEBUG版本。
参数类型:整型
参数单位:无
取值范围:0 ~ 2147483647
默认值:0
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
enable_bbox_dump
参数说明:设置是否开启黑匣子功能,在系统不配置core机制的情况下,是否产生core文件。此功能只对CN或DN有效,CMA、CMS、GTM、fenced UDF等仍需配置系统core机制才能捕获core文件。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示打开黑匣子功能。
- off:表示关闭黑匣子功能。
默认值:on
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
黑匣子功能生成core文件依赖操作系统开放ptrace接口;若发生权限不足(errno = 1),请确保/proc/sys/kernel/yama/ptrace_scope配置合理。
bbox_dump_count
参数说明:在bbox_dump_path定义的路径下,允许存储的GaussDB所产生core文件最大数。超过此数量时,旧的core文件会被删除。此参数仅在enable_bbox_dump参数取值为on时才生效。
在并发产生core文件时,core文件的产生个数可能大于bbox_dump_count。
参数类型:整型
参数单位:无
取值范围:1 ~ 20
默认值:8
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
bbox_dump_path
参数说明:黑匣子core文件的生成路径。此参数仅在enable_bbox_dump参数取值为on时才生效。
参数类型:字符串
参数单位:无
取值范围:合法文件路径。
默认值:""。默认生成黑匣子core文件的路径为读取"/proc/sys/kernel/core_pattern"下的路径,如果这个路径不是一个目录,或者用户对此目录没有写权限,黑匣子core文件将生成在数据库的data目录下。
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
bbox_blanklist_items
参数说明:黑匣子core文件的脱敏数据选项。此参数仅在enable_bbox_dump参数取值为on时才生效。
参数类型:字符串
参数单位:无
取值范围:以逗号分隔的敏感数据选项组成的字符串。
默认值:""。表示bbox生成的core文件脱敏所有支持的敏感数据项。
目前支持脱敏的数据项:
- SHARED_BUFFER:buffer数据缓冲区。
- XLOG_BUFFER:redo日志缓冲区。
- DW_BUFFER:双写数据缓冲区。
- XLOG_MESSAGE_SEND:主备日复制日志发送缓冲区。
- WALRECEIVER_CTL_BLOCK:主备复制日志接收缓冲区。
- DATA_MESSAGE_SEND:主备复制数据发送缓冲区。
- DATA_WRITER_QUEUE:主备复制数据接收缓冲区。
设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
enable_ffic_log
参数说明:设置是否开启FFIC(First Failure Info Capture)功能。此功能只对CN或DN有效,CMA、CMS、GTM、fenced UDF等仍需配置系统core机制才能捕获core文件。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示打开FFIC功能。
- off:表示关闭FFIC功能。
默认值:on
设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
enable_dynamic_workload
参数说明:设置是否开启动态负载管理功能。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示打开动态负载管理功能。
- off:表示关闭动态负载管理功能。
默认值:off
设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
- 开启内存自适应后,不再需要使用work_mem进行算子内存使用调优,由系统根据当前负载情况,为每个语句生成计划,并估算每个算子的内存使用量和整个语句的内存使用量。系统根据负载情况和整个语句内存使用量进行队列调度,所以多并发场景会出现语句排队的情况。
- 由于优化器行数估算不准现象的存在,会出现语句内存使用量低估或高估的情况。低估时,执行时内存会自动扩展。高估时,会导致系统内存利用不足,排队语句增多,可能导致性能非最优。此时需要识别语句估算内存远大于实际DN峰值内存的语句,通过设置query_mem进行调优,详见《开发指南》的“SQL调优指南 > SQL调优关键参数调整”章节。
enable_dywlm_adjust
参数说明:设置是否开启动态调整不准确资源值的功能。此功能需要在CN和DN同时应用。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示打开资源值动态调整功能。
- off:表示关闭资源值动态调整功能。
默认值:on
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
enable_force_memory_control
参数说明:设置是否开启资源池下并发控制时基于内存的使用来管控简单查询的功能。此功能需要在CN和DN同时应用。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示管控简单查询。
- off:表示忽略简单查询。
默认值:off
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
enable_reaper_backend
参数说明:设置是否启用单独线程来回收子线程退出时的信号。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示开启此功能。
- off:表示关闭此功能。
默认值:on
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
bypass_workload_manager
参数说明:设置是否打开I/O管控独立的开关,此参数需在CN和DN同时应用。
在不开启use_workload_manager的情况下,通过此参数单独控制I/O管控功能的开启。打开之后可通过设置io_limits或io_priority进行I/O管控。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示打开I/O管控的独立开关。
- off:表示关闭I/O管控的独立开关。
默认值:
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
io_limits
参数说明:设置每秒触发I/O的上限。
参数类型:整型
参数单位:无
取值范围:0 ~ 1073741823
默认值:0
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
io_priority
参数说明:I/O利用率高达50%时,重消耗I/O作业进行I/O资源管控时关联的优先级等级。
参数类型:枚举类型
参数单位:无
取值范围:
- None:表示不受控。
- Low:表示限制iops为该作业原始触发数值的10%。
- Medium:表示限制iops为该作业原始触发数值的20%。
- High:表示限制iops为该作业原始触发数值的50%。
默认值:None
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
io_control_unit
参数说明:行存场景下,I/O管控时用来对I/O次数进行计数的单位,此参数需在CN和DN同时应用。
记多少次I/O触发为一计数单位,通过此计数单位所记录的次数进行I/O管控。
参数类型:整型
参数单位:无
取值范围:1000 ~ 1000000
默认值:6000
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
session_respool
参数说明:设置当前的session关联的resource pool。
如果先设置cgroup_name,再设置session_respool,那么session_respool关联的控制组起作用,如果再修改cgroup_name,那么新修改的cgroup_name起作用。
修改cgroup_name的过程中如果指定Workload控制组级别,数据库不对级别进行验证。级别的范围只要在1-10范围内都可以。
参数类型:字符串
参数单位:无
取值范围:通过create resource pool所设置的资源池的名称。
默认值:"invalid_pool"
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。
设置建议:尽量不要混合使用cgroup_name和session_respool。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
session_statistics_memory
参数说明:设置实时查询视图的内存大小。
参数类型:整型
参数单位:kB
取值范围:5120 ~ 2147483647
默认值:5120(即5MB)
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。例如,不带单位取值16384,表示session_statistics_memory为16384kB;带单位取值16MB,表示session_statistics_memory为16MB。取值如果要带单位,必须为kB、MB、GB。
设置建议:建议取值不大于max_process_memory的50%。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
session_history_memory
参数说明:设置历史查询视图的内存大小。
参数类型:整型
参数单位:kB
取值范围:10240 ~ 2147483647
默认值:10240(即10MB)
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。例如,不带单位取值16384,表示session_history_memory为16384kB;带单位取值16MB,表示session_history_memory为16MB。取值如果要带单位,必须为kB、MB、GB。
设置建议:建议取值不大于max_process_memory的50%。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
enable_transaction_parctl
参数说明:设置是否管控事务块语句和存储过程语句。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示对事务块及存储过程语句进行管控。
- off:表示不对事务块及存储过程语句进行管控。
默认值:on
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
topsql_retention_time
参数说明:设置历史TopSQL中gs_wlm_session_query_info_all和gs_wlm_operator_info表中数据的保存时间。
参数类型:整型
参数单位:天(d)
取值范围:0 ~ 3650
- 值为0时,表示数据永久保存。
- 值大于0时,表示数据能够保存的对应天数。
默认值:0
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。取值不能带单位。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
transaction_pending_time
参数说明:设置事务块语句和存储过程语句排队的最大时间。此参数仅在enable_transaction_parctl参数取值为on时才生效。
参数类型:整型
参数单位:秒(s)
取值范围:-1 ~ 1073741823
- 值为-1或0时,事务块语句和存储过程语句无超时判断,排队至资源满足可执行条件。
- 值大于0时,事务块语句和存储过程语句排队超过所设数值的时间后,无视当前资源情况强制执行。
默认值:0
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。取值不能带单位。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
node_group_mode
参数说明:显示当前的node group模式。
参数类型:字符串
参数单位:无
取值范围:node group模式名称。
默认值:"node group"
设置方式:该参数属于INTERNAL类型参数,为固定参数,用户无法修改此参数,只能查看。
设置建议:该参数不允许用户进行设置,只能查看。
设置不当的风险与影响:无
resilience_ctrlslot_available_maxpercent
参数说明:最多允许慢SQL占用线程池的的线程占用百分比。仅对非sysadmin/monitoradmin用户执行的select类型的语句生效。
参数类型:整型
参数单位:无
取值范围:0 ~ 100
默认值:100,表示允许慢SQL使用所有的线程池线程。
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
resilience_ctrlstmt_detect_timelimit
参数说明:正常SQL语句被标记为慢SQL所需的执行时间,0表示不做慢SQL识别,大于0表示当SQL执行时间超过该时间时被标记为慢SQL。仅对非sysadmin/monitoradmin用户执行的select类型的语句生效。
参数类型:整型
参数单位:ms
取值范围:0 ~ 2147483647,0表示关闭慢SQL超时检测功能。
默认值:0
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。例如,不带单位取值6000,表示resilience_ctrlstmt_detect_timelimit为6000ms;带单位取值6s,表示resilience_ctrlstmt_detect_timelimit为6s。取值如果要带单位,必须为ms、s、min、h、d。
设置建议:根据实时数据库执行sql的平均时长来设置。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
resilience_ctrlstmt_control_iopslimit
参数说明:正常SQL语句被标记为慢SQL后,慢SQL可使用的最大IOPS上限。仅对非sysadmin/monitoradmin用户执行的select类型的语句生效。
参数类型:字符串
参数单位:无
取值范围:"Low"、"Medium"、"High"、"None"、0 ~ 2147483647。级别越低管控越严格。
- "Low":低级。
- "Medium":中级。
- "High":高级。
- "None":关闭慢SQL逻辑I/O管控功能。
- 0 ~ 2147483647:数值越小越严格,越大越宽松。
默认值:"None"
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。如果设置为数值,需要使用字符串的形式,如resilience_ctrlstmt_control_iopslimit = '1024'。
设置建议:I/O访问满时设置为较小值,I/O空闲时可设置为较大值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
session_max_dynamic_memory
参数说明:管控会话级内存上限,会话内存使用超过该值后会报错中断。此参数仅在enable_memory_limit参数取值为on时才生效。
参数类型:整型
参数单位:kB
取值范围:-1 ~ 2147483647
默认值:-1,表示不管控。
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。取值不能带单位。
设置建议:设为默认值,不做调整。
设置不当的风险与影响:该参数不能设置太小,设置太小会导致该会话执行的语句因内存不足失败,若是通过表2中的方式三设置值,且因为内存不足导致无法调大该参数时,只能通过退出会话来消除该限制。当设置的值小于16MB时会给出对应的提示信息。
max_concurrency
参数说明:管控全局并发数上限。
参数类型:整型
参数单位:无
取值范围:-1 ~ 2147483647
默认值:-1,表示不管控。
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:数据库管理员需根据系统资源(如CPU资源、I/O资源和内存资源)的使用情况,调整此参数大小,使得系统支持最大限度的并发作业操作,并且防止由于并发执行作业过多导致系统崩溃的情况。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
enable_workload_rule
参数说明:设置是否启用SQL限流功能。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示启用SQL限流功能。
- off:表示不启用SQL限流功能。
默认值:on
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:如果不需要SQL限流功能,可以设置成off,关闭该功能。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
workload_uncontrolled_users
参数说明:负载管理的用户白名单列表,位于列表中的用户,不对其进行负载管理,目前仅对SQL限流生效。
参数类型:字符串
参数单位:无
取值范围:用户列表,以“,”分隔,例如“user1, user2, user3”。
默认值:""
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:根据业务需要设置,对于一些不具备sysadmin权限的用户,但不希望其执行SQL语句时被负载管理限制时,可以添加到该参数中。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。