计算
弹性云服务器 ECS
Flexus云服务
裸金属服务器 BMS
弹性伸缩 AS
镜像服务 IMS
专属主机 DeH
函数工作流 FunctionGraph
云手机服务器 CPH
Huawei Cloud EulerOS
网络
虚拟私有云 VPC
弹性公网IP EIP
虚拟专用网络 VPN
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
VPC终端节点 VPCEP
云连接 CC
企业路由器 ER
企业交换机 ESW
全球加速 GA
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
边缘安全 EdgeSec
威胁检测服务 MTD
CDN与智能边缘
内容分发网络 CDN
CloudPond云服务
智能边缘云 IEC
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
迁移中心 MGC
大数据
MapReduce服务 MRS
数据湖探索 DLI
表格存储服务 CloudTable
云搜索服务 CSS
数据接入服务 DIS
数据仓库服务 GaussDB(DWS)
数据治理中心 DataArts Studio
数据可视化 DLV
数据湖工厂 DLF
湖仓构建 LakeFormation
企业应用
云桌面 Workspace
应用与数据集成平台 ROMA Connect
云解析服务 DNS
专属云
专属计算集群 DCC
IoT物联网
IoT物联网
设备接入 IoTDA
智能边缘平台 IEF
用户服务
账号中心
费用中心
成本中心
资源中心
企业管理
工单管理
国际站常见问题
ICP备案
我的凭证
支持计划
客户运营能力
合作伙伴支持计划
专业服务
区块链
区块链服务 BCS
Web3节点引擎服务 NES
解决方案
SAP
高性能计算 HPC
视频
视频直播 Live
视频点播 VOD
媒体处理 MPC
实时音视频 SparkRTC
数字内容生产线 MetaStudio
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
存储容灾服务 SDRS
高性能弹性文件服务 SFS Turbo
弹性文件服务 SFS
云硬盘备份 VBS
云服务器备份 CSBS
数据快递服务 DES
专属分布式存储服务 DSS
容器
云容器引擎 CCE
容器镜像服务 SWR
应用服务网格 ASM
华为云UCS
云容器实例 CCI
管理与监管
云监控服务 CES
统一身份认证服务 IAM
资源编排服务 RFS
云审计服务 CTS
标签管理服务 TMS
云日志服务 LTS
配置审计 Config
资源访问管理 RAM
消息通知服务 SMN
应用运维管理 AOM
应用性能管理 APM
组织 Organizations
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
应用身份管理服务 OneAccess
数据库
云数据库 RDS
文档数据库服务 DDS
数据管理服务 DAS
数据复制服务 DRS
云数据库 GeminiDB
云数据库 GaussDB
分布式数据库中间件 DDM
数据库和应用迁移 UGO
云数据库 TaurusDB
人工智能
人脸识别服务 FRS
图引擎服务 GES
图像识别 Image
内容审核 Moderation
文字识别 OCR
AI开发平台ModelArts
图像搜索 ImageSearch
对话机器人服务 CBS
华为HiLens
视频智能分析服务 VIAS
语音交互服务 SIS
应用中间件
分布式缓存服务 DCS
API网关 APIG
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
多活高可用服务 MAS
事件网格 EG
企业协同
华为云会议 Meeting
云通信
消息&短信 MSGSMS
云生态
合作伙伴中心
云商店
开发者工具
SDK开发指南
API签名指南
Terraform
华为云命令行工具服务 KooCLI
其他
产品价格详情
系统权限
管理控制台
客户关联华为云合作伙伴须知
消息中心
公共问题
开发与运维
应用管理与运维平台 ServiceStage
软件开发生产线 CodeArts
需求管理 CodeArts Req
部署 CodeArts Deploy
性能测试 CodeArts PerfTest
编译构建 CodeArts Build
流水线 CodeArts Pipeline
制品仓库 CodeArts Artifact
测试计划 CodeArts TestPlan
代码检查 CodeArts Check
代码托管 CodeArts Repo
云应用引擎 CAE
开天aPaaS
云消息服务 KooMessage
云手机服务 KooPhone
云空间服务 KooDrive
更新时间:2022-07-29 GMT+08:00

负载管理

未对数据库资源做控制时,容易出现并发任务抢占资源导致操作系统过载甚至最终崩溃。操作系统过载时,其响应用户任务的速度会变慢甚至无响应;操作系统崩溃时,整个系统将无法对用户提供任何服务。GaussDB(DWS)的负载管理功能能够基于可用资源的多少均衡数据库的负载,以避免数据库系统过载。

use_workload_manager

参数说明:是否开启资源管理功能。此参数需在CN和DN同时应用。

参数类型:SIGHUP

取值范围:布尔型

  • on表示打开资源管理。
  • off表示关闭资源管理。
    • 当使用GUC参数设置来修改参数值时,新参数值只能对更改操作执行后启动的线程生效。此外,对于后台线程以及线程复用执行的新作业,该参数值的改动不会生效。如果希望这类线程即时识别参数变化,可以使用kill session或重启节点的方式来实现。
    • use_workload_manager参数由off变为on状态后,资源管理视图变为可用,并且可以查询off状态下统计的存储资源使用情况。若存在些许误差的情况下,需要矫正用户使用的存储资源,可数据库中执行如下命令,在执行该命令的过程中,如果对表中插入数据,可能会出现统计不够准确的情况:
      1
      select gs_wlm_readjust_user_space(0);
      

默认值:on

enable_control_group

参数说明:是否开启Cgroups功能。此参数需在CN和DN同时应用。

参数类型:SIGHUP

取值范围:布尔型

  • on表示打开Cgroups管理。
  • off表示关闭Cgroups管理。

默认值:on

当使用GUC参数设置来修改参数值时,新参数值只能对更改操作执行后启动的线程生效。此外,对于后台线程以及线程复用执行的新作业,该值的改动不会生效。如果希望这类线程即时识别参数变化,可以使用kill session或重启节点的方式来实现。

enable_backend_control

参数说明:是否控制数据库常驻线程到DefaultBackend控制组。此参数需在CN和DN同时应用。

参数类型:POSTMASTER

取值范围:布尔型

  • on表示控制常驻线程到DefaultBackend控制组。
  • off表示不控制常驻线程到DefaultBackend控制组。

默认值:on

enable_vacuum_control

参数说明:是否控制数据库常驻线程autoVacuumWorker到Vacuum控制组。此参数需在CN和DN同时应用。

参数类型:POSTMASTER

取值范围:布尔型

  • on表示控制数据库常驻线程autoVacuumWorker到Vacuum控制组。
  • off表示不控制数据库常驻线程autoVacuumWorker到Vacuum控制组。

默认值:on

enable_perm_space

参数说明:是否开启perm space功能。此参数需在CN和DN同时应用。

参数类型:POSTMASTER

取值范围:布尔型

  • on表示打开perm space管理。
  • off表示关闭perm space管理。

默认值:on

enable_verify_active_statements

参数说明:在静态自适应负载场景下,是否开启后台校准功能。此参数需在CN上应用。

参数类型:SIGHUP

取值范围:布尔型

  • on表示打开后台校准功能。
  • off表示关闭后台校准功能。

默认值:on

max_active_statements

参数说明:设置全局的最大并发数量。此参数只应用到CN,且针对一个CN上的执行作业。

数据库管理员需根据系统资源(如CPU资源、IO资源和内存资源)情况,调整此数值大小,使得系统支持最大限度的并发作业,且防止并发执行作业过多,引起系统崩溃。

参数类型:SIGHUP

取值范围:整型,-1 ~ INT_MAX。设置为-1和0表示对最大并发数不做限制。

默认值:60

parctl_min_cost

参数说明:设置语句受到资源池并发控制的最小执行代价。

参数类型:SIGHUP

取值范围:整型,-1 ~ INT_MAX

  • 值为-1时或者执行语句的代价小于10时,作业受快车道管控。
  • 值大于等于0时,如果执行语句的代价大于或等于10并且超过这个参数值就会受到资源池并发控制。

默认值:100000

cgroup_name

参数说明:设置当前使用的Cgroups的名字或者调整当前group下排队的优先级。

即如果先设置cgroup_name,再设置session_respool,那么session_respool关联的控制组起作用,如果再切换cgroup_name,那么新切换的cgroup_name起作用。

切换cgroup_name的过程中如果指定到Workload控制组级别,数据库不对级别进行验证。级别的范围只要在1-10范围内都可以。

参数类型:USERSET

建议尽量不要混合使用cgroup_name和session_respool。

取值范围:字符串

默认值:DefaultClass:Medium

DefaultClass:Medium表示DefaultClass下Timeshare控制组中的Medium控制组。

cpu_collect_timer

参数说明:设置语句执行时在DN上收集CPU时间的周期。

数据库管理员需根据系统资源(如CPU资源、IO资源和内存资源)情况,调整此数值大小,使得系统支持较合适的收集周期,太小会影响执行效率,太大会影响异常处理的精确度。

参数类型:SIGHUP

取值范围:整型,1 ~ INT_MAX, 单位为秒。

默认值:30

enable_cgroup_switch

参数说明:是否控制数据库执行语句时根据类型自动切换到TopWD组。

参数类型:USERSET

取值范围:布尔型

  • on表示控制数据库执行语句时根据类型自动切换到TopWD组。
  • off表示控制数据库执行语句时根据类型不自动切换到TopWD组。

默认值:off

memory_tracking_mode

参数说明:设置记录内存信息的模式。

参数类型:USERSET

取值范围

  • none,不启动内存统计功能。
  • normal,仅做内存实时统计,不生成文件。
  • executor,生成统计文件,包含执行层使用过的所有已分配内存的上下文信息。
  • fullexec,生成文件包含执行层申请过的所有内存上下文信息。

默认值:none

memory_detail_tracking

参数说明:设置需要的线程内分配内存上下文的顺序号以及当前线程所在query的plannodeid。

参数类型:USERSET

取值范围:字符型

默认值:

该参数不允许用户进行设置,建议保持默认值。

enable_resource_track

参数说明:设置是否开启资源实时监控功能。此参数需在CN和DN同时应用。

参数类型:SIGHUP

取值范围:布尔型

  • on表示打开资源监控。
  • off表示关闭资源监控。

默认值:on

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同时应用。

参数类型:SIGHUP

取值范围:布尔型

  • on表示开启资源监控记录归档功能。
  • off表示关闭资源监控记录归档功能。

默认值:off

enable_user_metric_persistent

参数说明:设置是否开启用户历史资源监控转存功能。开启时,对于PG_TOTAL_USER_RESOURCE_INFO视图中数据,会定期采样保存到GS_WLM_USER_RESOURCE_HISTORY系统表中。

参数类型:SIGHUP

取值范围:布尔型

  • on表示开启用户历史资源监控转存功能。
  • off表示关闭用户历史资源监控转存功能。

默认值:on

user_metric_retention_time

参数说明:设置用户历史资源监控数据的保存天数。该参数仅在enable_user_metric_persistent为on时有效。

参数类型:SIGHUP

取值范围:整型,0~3650,单位为天。

  • 值等于0时,用户历史资源监控数据将永久保存。
  • 值大于0时,用户历史资源监控数据将保存对应天数。

默认值:7

enable_instance_metric_persistent

参数说明:设置是否开启实例资源监控转存功能。开启时,对实例的监控数据会保存到GS_WLM_INSTANCE_HISTORY系统表中。

参数类型:SIGHUP

取值范围:布尔型

  • on表示开启实例资源监控转存功能。
  • off表示关闭实例资源监控转存功能。

默认值:on

instance_metric_retention_time

参数说明:设置实例历史资源监控数据的保存天数。该参数仅在enable_instance_metric_persistent为on时有效。

参数类型:SIGHUP

取值范围:整型,0~3650,单位为天。

  • 值等于0时,实例历史资源监控数据将永久保存。
  • 值大于0时,实例历史资源监控数据将保存对应设置天数。

默认值:7

resource_track_level

参数说明:设置当前会话的资源监控的等级。该参数只有当参数enable_resource_track为on时才有效。

参数类型:USERSET

取值范围:枚举型

  • none,不开启资源监控功能。
  • query,开启query级别资源监控功能,开启此功能会把SQL语句的计划信息(类似explain输出信息)记录到top SQL中。
  • perf,开启perf级别资源监控功能,开启此功能会把包含实际执行时间和执行行数的计划信息(类似explain analyze输出信息)记录到top SQL中。
  • operator,开启operator级别资源监控功能,开启此功能不仅会把包含实际执行时间和执行行数的信息记录到top SQL中,还会把算子级别执行信息刷新到top SQL中。

默认值:query

resource_track_cost

参数说明:设置对当前会话的语句进行资源监控的最小执行代价。该参数只有当参数enable_resource_track为on时才有效。

参数类型:USERSET

取值范围:整型,-1~INT_MAX

  • 值为-1时,不进行资源监控。
  • 值大于或等于0时,对执行代价超过该参数值的语句进行资源监控。

默认值:100000

resource_track_duration

参数说明:设置资源监控实时视图(参见表1)中记录的语句执行结束后进行历史信息转存的最小执行时间。当执行完成的作业,其执行时间不小于此参数值时,作业信息会从实时视图(以statistics为后缀的视图)转存到相应的历史视图(以history为后缀的视图)中。

参数类型:USERSET

取值范围:整型,0~INT_MAX,单位为秒。

  • 值为0时,资源监控实时视图(表1)中记录的所有语句都进行历史信息归档。
  • 值大于0时,资源监控实时视图(表1)中记录的语句的执行时间超过这个值就会进行历史信息归档。

默认值:1min

dynamic_memory_quota

参数说明:自适应负载场景下,设置内存控制的比重,即可以使用系统最大可用内存的比例。

参数类型:SIGHUP

取值范围:整型,1~100

默认值:80

disable_memory_protect

参数说明:禁止内存保护功能。当系统内存不足时如果需要查询系统视图,可以先将此参数置为on,禁止内存保护功能,保证视图可以正常查询。该参数只适用于在系统内存不足时进行系统诊断和调试,正常运行时请保持该参数配置为off。

参数类型:USERSET

取值范围:布尔型

  • on表示禁止内存保护功能。
  • off表示启动内存保护功能。

默认值:off

query_band

参数说明:用于标示当前会话的作业类型,由用户自定义。

参数类型:USERSET

取值范围:字符型

默认值:

enable_bbox_dump

参数说明:是否开启黑匣子功能,在系统不配置core机制的时候仍可产生core文件。此功能需要在CN和DN同时应用。

参数类型:SIGHUP

取值范围:布尔型

  • on表示打开黑匣子功能。
  • off表示关闭黑匣子功能。

默认值:off

enable_dynamic_workload

参数说明:是否开启动态负载管理功能。

参数类型:POSTMASTER

取值范围:布尔型

  • on表示打开动态负载管理功能。
  • off表示关闭动态负载管理功能。

默认值:on

  • 开启内存自适应后,收集统计信息后不再需要使用work_mem进行算子内存使用调优,由系统根据当前负载情况,为每个语句生成计划,并估算每个算子的内存使用量和整个语句的内存使用量。系统根据负载情况和整个语句内存使用量进行队列调度,所以多并发场景会出现语句排队的情况。
  • 由于优化器行数估算不准现象的存在,会出现语句内存使用量低估或高估的情况。低估时,执行时内存会自动扩展。高估时,会导致系统内存利用不足,排队语句增多,可能导致性能非最优。此时需要识别语句估算内存远大于实际DN峰值内存的语句,通过设置query_max_mem进行调优,详见SQL调优关键参数调整

bbox_dump_count

参数说明:在bbox_dump_path定义的路径下,允许存储的GaussDB(DWS)所产生core文件最大数。超过此数量,旧的core文件会被删除。此参数只有当enable_bbox_dump为on时才生效。

参数类型:USERSET

取值范围:整型,1~20

默认值:8

在并发产生core文件时,core文件的产生个数可能大于bbox_dump_count。

io_limits

参数说明:每秒触发IO的上限。

参数类型:USERSET

取值范围:整型,0~1073741823

默认值:0

io_priority

参数说明:IO利用率高达90%时,重消耗IO作业进行IO资源管控时关联的优先级等级。

参数类型:USERSET

取值范围:枚举型

  • None:表示不受控。
  • Low:表示限制iops为该作业原始触发数值的20%。
  • Medium:表示限制iops为该作业原始触发数值的50%。
  • High:表示限制iops为该作业原始触发数值的80%。

默认值:None

session_respool

参数说明:当前的session关联的resource pool。

参数类型:USERSET

即如果先设置cgroup_name,再设置session_respool,那么session_respool关联的控制组起作用,如果再切换cgroup_name,那么新切换的cgroup_name起作用。

切换cgroup_name的过程中如果指定到Workload控制组级别,数据库不对级别进行验证。级别的范围只要在1-10范围内都可以。

建议尽量不要混合使用cgroup_name和session_respool。

取值范围:字符串,通过create resource pool所设置的资源池。

默认值:invalid_pool

enable_transaction_parctl

参数说明:是否管控事务块语句和存储过程语句。

参数类型:USERSET

取值范围:布尔型

  • on表示对事务块及存储过程语句进行管控。
  • off表示对事务块及存储过程语句不进行管控。

默认值:on

session_statistics_memory

参数说明:设置实时查询视图的内存大小。

参数类型:SIGHUP

取值范围:整型,5MB~max_process_memory的50%。

默认值:5MB

session_history_memory

参数说明:设置历史查询视图的内存大小。

参数类型:SIGHUP

取值范围:整型,10MB~max_process_memory的50%。

默认值:100MB

topsql_retention_time

参数说明:设置历史TopSQL中gs_wlm_session_info和gs_wlm_operator_info表中数据的保存时间。

参数类型:SIGHUP

取值范围:整型,0~3650,单位为天。

  • 值为0时,表示数据永久保存。
  • 值大于0时,表示数据能够保存的对应天数。

默认值:0

设置此GUC参数启用数据保存功能前,请先清理gs_wlm_session_info和gs_wlm_operator_info表中的数据。

transaction_pending_time

参数说明:当enable_transaction_parctl为on时,事务块语句和存储过程语句排队的最大时间。

参数类型:USERSET

取值范围:整型,-1~INT_MAX,单位为秒。

  • 值为-1或0:事务块语句和存储过程语句无超时判断,排队至资源满足可执行条件。
  • 值大于0:事务块语句和存储过程语句排队超过所设数值的时间后,无视当前资源情况强制执行。

默认值:0

此参数仅对存储过程及事务块的内部语句有效,即PG_SESSION_WLMSTAT中enqueue字段显示为Transaction或StoredProc的语句才会生效。

wlm_sql_allow_list

参数说明:用于指定资源管理SQL白名单语句,SQL白名单语句不受资源管理监控。

参数类型:SIGHUP

取值范围:字符串

默认值:

  • wlm_sql_allow_list中可指定一条或多条SQL白名单语句,指定多条时,通过“;”进行分隔。
  • 系统通过前置匹配判断SQL语句是否受监控,不区分大小写,例如:wlm_sql_allow_list='SELECT',则所有select语句均不受资源管理监控。
  • 识别参数值白名单字符串头部的空格,例如:'SELECT'与' SELECT'的含义是不一致的,' SELECT'只过滤头部带空格的SELECT语句。
  • 系统默认部分SQL语句为白名单语句,默认白名单语句不可修改;可以通过系统视图gs_wlm_sql_allow查询默认和已经通过GUC设置成功的SQL白名单语句。
  • 通过wlm_sql_allow_list指定的SQL语句不可追加,只能通过覆盖的方式设置;若需追加SQL语句,需要先查出原先指定的GUC值,在原值后面加补上新增的语句,以“;”分隔后重新设置。

我们使用cookie来确保您的高速浏览体验。继续浏览本站,即表示您同意我们使用cookie。 详情