
# 开发人员选项
#### enable_light_colupdate
**参数说明**：控制是否使用列存轻量化UPDATE。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示开启列存轻量化UPDATE。
- off表示关闭列存轻量化UPDATE。
**默认值**：off
![](https://support.huaweicloud.com/devg-dws/public_sys-resources/note_3.0-zh-cn.png)
列存轻量化UPDATE与后台列存AUTOVACUUM并发会小概率报错，可以通过ALTER TABLE设置表级参数enable_column_autovacuum_garbage为off来避免。需要注意的是设置表级参数enable_column_autovacuum_garbage为off会关闭该表的后台列存AUTOVACUUM。
 #### enable_fast_query_shipping
**参数说明**：控制查询优化器是否使用分布式框架。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示执行计划在CN和DN上各自生成。
- off表示使用分布式框架，即执行计划在CN上生成，然后发送到DN中执行。
**默认值**：on
#### enable_trigger_shipping
**参数说明**：控制触发器场景是否允许将触发器下推到DN执行。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示允许将触发器下推到DN执行。
- off表示不允许将触发器下推到DN执行，在CN执行。
**默认值**：on
#### enable_remotejoin
**参数说明**：设置是否允许连接操作计划下推到DN执行。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示允许连接操作计划下推到DN执行。
- off表示不允许连接操作计划下推到DN执行。
**默认值**：on
#### enable_remotegroup
**参数说明**：设置是否允许group by与aggregates执行计划下推到DN执行。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示允许group by与aggregates执行计划下推到DN执行。
- off表示不允许group by与aggregates执行计划下推到DN执行。
**默认值**：on
#### enable_remotelimit
**参数说明**：设置是否允许LIMIT子句执行计划下推到DN执行。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示允许LIMIT子句执行计划下推到DN执行。
- off表示不允许LIMIT子句执行计划下推到DN执行。
**默认值**：on
#### enable_limit_stop
**参数说明**：控制LIMIT语句是否启用early stop优化。对于LIMIT n语句，若使用early stop优化则CN收取到n条数据后会传递请求使DN提前结束执行，适用于复杂查询且带有LIMIT的场景。该参数仅8.1.3.320及以上集群版本支持。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示允许LIMIT语句使用early stop优化。
- off表示不允许LIMIT语句使用early stop优化。
**默认值**：on
#### enable_remotesort
**参数说明**：设置是否允许ORDER BY子句操作计划下推到DN执行。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示允许ORDER BY子句操作计划下推到DN执行。
- off表示不允许ORDER BY子句操作计划下推到DN执行。
**默认值**：on
#### enable_join_pseudoconst
**参数说明**：设置是否允许与伪常数进行join。伪常数是指join两侧的变量都等于同一个常量。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示允许与伪常数进行join。
- off表示不允许与伪常数进行join。
**默认值**：off
#### cost_model_version
**参数说明**：控制应用场景中估算时cost使用的模型。该参数的影响范围主要涵盖：表达式distinct估算、HashJoin代价模型、行数估算、重分布时分布键的选择及Aggregate的行数估算等。
**参数类型：**USERSET
**取值范围**：0、1、2、3、4
- 0表示使用原始的cost估算模型。
- 1表示在0的基础上，使用增强的表达式distinct估算、HashJoin代价模型、行数估算、重分布时分布键的选择及Aggregate的行数估算。
- 2表示在1的基础上，使用随机性更优的analyze采样算法，以提高统计信息准确性。
- 3表示在2的基础上，优化大集群场景下的broadcast代价估算，以便优化器选择更优计划。该选项仅8.3.0及以上集群版本支持。
- 4表示在3的基础上，优化了hashjoin并行化代价、倾斜代价、列存索引有序性代价的代价估算以及coalesce表达式的行数估算，并支持子查询常量输出列进行join时的倾斜优化识别。
**默认值**：4
#### debug_assertions
**参数说明：**控制打开各种断言检查。能够协助调试，当遇到奇怪的问题或者崩溃，请把此参数打开，因为它能暴露编程的错误。要使用这个参数，必须在编译DWS的时候定义宏USE_ASSERT_CHECKING（通过configure选项 --enable-cassert完成）。
**参数类型：**USERSET
**取值范围：**布尔型
- on表示打开断言检查。
- off表示不打开断言检查。
![](https://support.huaweicloud.com/devg-dws/public_sys-resources/note_3.0-zh-cn.png)
当启用断言选项编译DWS时，debug_assertions缺省值为on 。
**默认值：**off
#### distribute_test_param
**参数说明：**控制分布式测试框架打桩点是否生效。通常开发人员在进行故障注入测试时会在代码中预埋一些打桩点，使用唯一的名称进行标识，使用此参数可以控制代码中预埋的打桩点是否生效。参数采用逗号分隔的三元组形式，分别指定线程级别、测试桩名称和注入故障的错误级别。
**参数类型：**USERSET
**取值范围：**字符串，任一个已预埋的测试桩名称。
**默认值：**-1, default, default
#### ignore_checksum_failure
**参数说明：**设置读取数据时是否忽略校验信息检查失败（但仍然会告警），继续执行。该参数仅在enable_crc_check为on时有效。继续执行可能导致崩溃，传播或隐藏损坏数据，无法从远程节点恢复数据及其他严重问题。不建议用户修改设置。
**参数类型：**SUSET
**取值范围：**布尔型
- on表示忽略数据校验错误。
- off表示数据校验错误正常报错。
**默认值：**off
#### column_default_format
**参数说明：**设置为不同选项会改变建表语句的结果。如果和用户指定的表级参数有冲突（例如，指定enable_hstore_opt=off），该参数不生效。
该参数9.1.0.200及以上集群版本支持。在9.1.0.200集群版本中为商用Beta特性，如需使用，请联系技术支持。
**参数类型：**USERSET
**取值范围：**none、column_hstore_opt
- 设置为none或不设置，表示功能关闭。
- 设置为column_hstore_opt，表示指定列存（包括显式指定orientation=column，或隐式指定）的建表为hstore_opt表。
**默认值：**none
#### default_table_behavior
**参数说明：**支持设置默认表的行为类型，该参数仅8.2.1及以上集群版本支持。
**参数类型：**USERSET
**取值范围：**column_btree_index、column_high_compress、column_middle_compress、column_low_compress
- column_btree_index，表示列存表默认创建索引为B-Tree。
- column_high_compress，表示列存表默认压缩级别为high。
- column_middle_compress，表示列存表默认压缩级别为middle。
- column_low_compress，表示列存表默认压缩级别为low。
**默认值：**空字符串
#### enable_colstore
**参数说明：**创建表时，当不指定存储方式时，默认创建为列存表。使用时，各节点值需要保持一致。属于测试参数，禁止用户启用。
**参数类型：**SUSET
**取值范围：**布尔型
**默认值：**off
#### enable_force_vector_engine
**参数说明**：对于支持向量化的执行器算子，如果其子节点是非向量化的算子，通过设置此参数为on，强制生成向量化的执行计划。当打开enable_force_vector_engine开关时，无论是行存表、列存表或者是行列混存，如果plantree中不包含不支持向量化的场景，则强制走向量化执行引擎。
**参数类型：**USERSET
**取值范围**：布尔型
**默认值**：off
 #### enable_csqual_pushdown
**参数说明**：进行查询时，是否要将过滤条件下推，进行Rough Check。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示进行查询时，要将过滤条件下推，进行Rough Check。
- off表示进行查询时，不要将过滤条件下推，进行Rough Check。
**默认值**：on
#### explain_dna_file
**参数说明：** 指定[explain_perf_mode]为run，导出的csv信息的目标文件。
**参数类型：**USERSET
![](https://support.huaweicloud.com/devg-dws/public_sys-resources/notice_3.0-zh-cn.png)
这个参数的取值必须是绝对路径加上.csv格式的文件名。
**取值范围：**字符串
**默认值：**NULL
 #### explain_perf_mode
**参数说明**：此参数用来指定explain的显示格式。
**参数类型：**USERSET
**取值范围**：normal、pretty、summary、run
- normal：代表使用默认的打印格式。
- pretty：代表使用DWS改进后的新显示格式。新的格式层次清晰，计划包含了plan node id，性能分析简单直接。
- summary：是在pretty的基础上增加了对打印信息的分析。
- run：在summary的基础上，将统计的信息输出到csv格式的文件中，以便于进一步分析。
**默认值**：pretty
#### join_num_distinct
**参数说明**：控制应用场景中Join列或表达式的默认distinct值。
**参数类型：**USERSET
**取值范围**：双精度浮点型，大于或等于-100，客户端显示小数时可能会有截断。
- 值大于0时，表示使用该值作为默认distinct值。
- 值大于等于-100且小于0时，表示估算默认distinct时使用的百分比。
- 值为0时，表示使用200作为默认distinct值。
**默认值**：-20
#### outer_join_max_rows_multipler
**参数说明**：控制应用场景中外连接估算行数的最大值。
**参数类型：**USERSET
**取值范围**：双精度浮点型，0或大于等于1，客户端显示小数时可能会有截断。
- 值为0时，表示不限制outer join的估算行数。
- 值大于等于1时，表示限制估算行数不超过外连接中外表行数的倍数。
**默认值**：1.1
#### qual_num_distinct
**参数说明**：控制应用场景中过滤列或表达式的默认distinct值。
**参数类型：**USERSET
**取值范围**：双精度浮点型，大于或等于-100，客户端显示小数时可能会有截断。
- 值大于0时，表示使用该值作为默认distinct值。
- 值大于等于-100且小于0时，表示估算默认distinct时使用的百分比。
- 值为0时，表示使用200作为默认distinct值。
**默认值**：200
#### trace_notify
**参数说明：** 为LISTEN和NOTIFY命令生成大量调试输出。[client_min_messages](https://support.huaweicloud.com/devg-dws/dws_04_0915.html#ZH-CN_TOPIC_0000001811490985__sbd8ad9bb6b9b48ba97f998f060dc56f3)或[log_min_messages](https://support.huaweicloud.com/devg-dws/dws_04_0915.html#ZH-CN_TOPIC_0000001811490985__s1ffb0797361d413d875381200fed970b)级别必须是DEBUG1或者更低时，才能把这些输出分别发送到客户端或者服务器日志。
**参数类型：**USERSET
**取值范围：**布尔型
- on表示打开输出功能。
- off表示关闭输出功能。
**默认值：**off
#### trace_sort
**参数说明：**控制是否在日志中打印排序操作中的资源使用相关信息。这个选项只有在编译DWS的时候定义了TRACE_SORT宏的时候才可用，不过目前TRACE_SORT是由缺省定义的。
**参数类型：**USERSET
**取值范围：**布尔型
- on表示打开控制功能。
- off表示关闭控制功能。
**默认值：**off
#### zero_damaged_pages
**参数说明：**控制检测导致DWS报告错误的损坏的页头，中止当前事务。
**参数类型：**SUSET
**取值范围：**布尔型
- on表示打开控制功能。
- off表示关闭控制功能。
![](https://support.huaweicloud.com/devg-dws/public_sys-resources/note_3.0-zh-cn.png)
- 设置为on时，系统报告一个警告，把损坏的页面填充为零然后继续处理。该行为会破坏数据，即被损坏页面上的所有行。但是它允许绕开损坏页面然后从表中存在的未损坏页面上继续检索数据行。因此该参数在硬件或者软件错误导致的数据损坏中进行恢复是有作用的。通常不建议该参数设置为on，除非不需要从损坏的页面中恢复数据。
- 对于列存表，会将整个CU跳过然后继续处理。支持的场景包括crc校验失败、magic校验失败以及读取的CU长度错误。
 
**默认值：**off
#### replication_test
**参数说明：**此参数用于数据复制的内部功能测试。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示启用功能测试。
- off表示关闭功能测试。
**默认值：**off
#### cost_param
**参数说明**：该参数用于控制在特定的客户场景中，使用不同的估算方法使得估算值与真实值更接近。此参数可以同时控制多种方法，与某一方法对应的位做与操作，不为0表示该方法被选择。
当cost_param \& 1 不为0，表示对于求不等值连接选择率时选择一种改良机制，此方法在自连接（两个相同的表之间连接）的估算中更加准确，V300R002C00版本开始，已弃用cost_param \& 1 不为0时的路径，默认选择更优的估算公式；
当cost_param \& 2 不为0，表示求多个过滤条件（Filter）的选择率时，选择最小的作为总的选择率，而非两者乘积，此方法在过滤条件的列之间关联性较强时估算更加准确；
当cost_param \& 4 不为0，表示在进行stream节点估算时，选用调试模型，该模型不推荐用户使用。
当cost_param \& 16不为0，表示在计算两个及以上过滤条件或Join条件的综合选择率时，采用介于完全相关和完全不相关之间的一种模型，过滤条件较多时倾向于相关性较强的模型。
**参数类型：**USERSET
**取值范围**：整型，1～INT_MAX
**默认值**：16
#### convert_string_to_digit
**参数说明**：设置隐式转换优先级，是否优先将字符串转为数字。
**参数类型：**USERSET
**取值范围：**布尔型
- on表示优先将字符串转为数字。
- off表示不优先将字符串转为数字。
**默认值**：on
![](https://support.huaweicloud.com/devg-dws/public_sys-resources/notice_3.0-zh-cn.png)
请谨慎调整该参数，调整该参数会修改内部数据类型转换规则并可能导致不可预期的行为。
#### nls_timestamp_format
**参数说明**：设置时间戳默认格式。
**参数类型：**USERSET
**取值范围**：字符串
**默认值**：DD-Mon-YYYY HH:MI:SS.FF AM
#### enable_partitionwise
**参数说明**：分区表连接操作是否选择智能算法。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示选择智能算法。
- off表示不选择智能算法。
**默认值**：off
#### enable_partition_dynamic_pruning
**参数说明**：分区表扫描是否支持动态剪枝。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示分区表扫描开启动态剪枝。
- off表示分区表扫描关闭动态剪枝。
**默认值**：on
#### max_user_defined_exception
**参数说明**：异常最大个数，默认值不可更改。
**参数类型：**USERSET
**取值范围**：整型
**默认值**：1000
#### datanode_strong_sync
**参数说明**：目前该参数已废弃，无实际意义。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示启用stream节点间强同步。
- off表示不启用stream节点间强同步。
**默认值**：off
#### enable_global_stats
**参数说明：**标识当前统计信息模式，为便于进行全局统计信息生成计划和单DN统计信息计划对比使用，默认创建为全局统计信息模式。属于测试参数，禁止用户启用。
**参数类型：**SUSET
**取值范围：**布尔型
- on/true表示全局统计信息。
- off/false表示单DN统计信息。
**默认值：**on
#### enable_fast_numeric
**参数说明：**标识是否开启Numeric类型数据运算优化。Numeric数据运算是较为耗时的操作之一，通过将Numeric转化为int64/int128类型，提高Numeric运算的性能。
**参数类型：**USERSET
**取值范围：**布尔型
- on/true表示开启Numeric优化。
- off/false表示关闭Numeric优化。
**默认值：**on
#### enable_row_fast_numeric
**参数说明：**标识行存表numeric数据落盘的格式。
**参数类型：**USERSET
**取值范围：**布尔型
- on/true表示行存表numeric落盘格式为bigint格式。
- off/false表示行存表numeric落盘格式为原始格式。
![](https://support.huaweicloud.com/devg-dws/public_sys-resources/notice_3.0-zh-cn.png)
参数值设置为on时，建议同步打开enable_force_vector_engine, 可提升大数据集query的查询性能。但相比于原始格式，大概率会占用更多磁盘空间。以TPC-H测试集为例，大约多占7%空间（不同环境参考值可能有差异）。
**默认值：**off
#### rewrite_rule
**参数说明**：标识开启的可选查询重写规则。有部分查询重写规则是可选的，开启它们并不能总是对查询效率有提升效果。在特定的客户场景中，通过此GUC参数对查询重写规则进行设置，使得查询效率最优。
此参数可以控制查询重写规则的组合，比如有多个重写规则：rule1、rule2、rule3、rule4。可以设置：
```
set rewrite_rule=rule1;          --启用查询重写规则rule1
set rewrite_rule=rule2,rule3;    --启用查询重写规则rule2和rule3
set rewrite_rule=none;           --关闭所有可选查询重写规则
```
**参数类型：**USERSET
**取值范围**：字符串
- none：不使用任何可选查询重写规则。
- lazyagg：使用Lazy Agg查询重写规则（消除子查询中的聚集运算）。
- magicset : 使用Magic Set查询重写规则（从主查询中下推条件到提升的子链接）。
- uniquecheck : 使用Unique Check重写规则（允许目标列不含聚集函数的表达式子链接场景提升，需在子链接按关联列聚集后目标列值唯一才能开启，建议专业调优人员使用）。
- disablerep : 使用禁止复制表的子链接提升规则（针对复制表禁止子链接提升）。
- projection_pushdown：使用Projection Pushdown重写规则（子查询中消除父查询不使用的列）。
- or_conversion：使用OR转换重写规则（消除执行效率低下的关联OR条件）。
- plain_lazyagg: 使用Plain Lazy Agg查询重写规则（消除单子查询中的聚集操作）。该选项仅8.1.3.100及以上集群版本支持。
- eager_magicset: 使用eager_magicset查询重写规则（从主查询中下推条件到子查询）。该选项仅8.2.0及以上集群版本支持。
- casewhen_simplification：使用casewhen语句改写的重写规则，开启后对(case when xxx then const1 else const2)=const1场景进行改写，用于简化CASE WHEN语句，减少冗余计算从而提升查询性能。该选项仅8.3.0及以上集群版本支持。
- outer_join_quality_imply：left outer join和right outer join存在等值关联条件时，外表关联列上的表达式条件下推到内表的关联列上。该选项仅8.3.0及以上集群版本支持。
- inlist_merge：使用inlist_or_inlist查询重写规则，支持基表相同列的or语句合并，开启后对(where a in (list1) or a in (list2))进行合并改写，合并后可支持inlist2join。该选项仅8.3.0及以上集群版本支持。
- subquery_qual_pull_up：对于无法提升的子查询，若子查询与其它表进行关联的关联列在子查询内部有过滤条件，支持从子查询中提取过滤条件并传递到关联条件另一侧。目前只支持不存在类型转换的var op const形式，例如a \> 2。打开该开关时，则认为outer_join_quality_imply也是打开的。该选项仅9.1.0及以上集群版本支持。
- not_distinct_from_opt：开启后，将is not distinct from表达式通过临时改写为等号表达式的方式，使包含该语法的语句能够生成hashjoin或mergejoin计划，从而提升执行性能。该选项仅9.1.0.218及以上集群版本支持。
**默认值**：magicset, or_conversion, projection_pushdown, plain_lazyagg, subquery_qual_pull_up
 #### mv_rewrite_rule
**参数说明**：标识开启的可选物化视图查询重写规则。
**参数类型：**USERSET
**取值范围**：字符串
- none，不使用任何物化视图重写规则。该取值仅8.2.1.100及以上集群版本支持。
- text，使用文本匹配的物化视图重写规则。该取值仅8.2.1.100及以上集群版本支持。
- general，使用结构匹配。该取值仅9.1.0.200及以上集群版本支持。
- predicate，结构匹配重写使用表达式框架，用于过滤条件和关联条件的预处理和正则化。仅在general开启时生效。该取值仅9.1.0.210及以上集群版本支持。
- view_delta，通过主外键关系消除物化视图中的冗余join后与查询进行匹配。该取值仅9.1.0.210及以上集群版本支持。
- single，单表物化视图使用物化视图重写规则。该取值仅9.1.0.222及以上集群版本支持。
默认值：text, general, predicate, single
![](https://support.huaweicloud.com/devg-dws/public_sys-resources/notice_3.0-zh-cn.png)
**general、predicate和view_delta功能受限商用，如需使用请联系技术支持。**
#### enable_compress_spill
**参数说明：**标识是否开启下盘压缩功能。
**参数类型：**USERSET
**取值范围：**布尔型
- on/true表示开启下盘优化。
- off/false表示关闭下盘优化。
**默认值：**on
#### analysis_options
![](https://support.huaweicloud.com/devg-dws/public_sys-resources/caution_3.0-zh-cn.png)
**此参数主要用于日志定位，非必要不建议用户配置，否则会导致集群不可预知异常，需要配置此参数，请联系技术人员确认。**
**参数说明：**设置是否开启对应的功能选项使用其定位功能，包括数据校验，性能统计等。
**参数类型：**USERSET
**取值范围：**字符串
- LLVM_COMPILE，表示在explain performance显示界面中显示每个线程的codegen编译时间。
- HASH_CONFLICT，表示在DN进程的pg_log目录中的log日志中显示hash表的统计信息，包括hash表大小、hash链长及hash冲突情况。
- STREAM_DATA_CHECK，表示对网络传输前后的数据进行CRC校验。
- TURBO_DATA_CHECK，表示对turbo的ScalarVector和VectorBatch的算子的数据上下文进行校验。该选项仅8.3.0.100及以上集群支持。
- KEEP_SAMPLE_DATA，表示以临时表的形式保留每次analyze操作中使用的采样数据。该选项仅9.1.0及以上集群版本支持。
- BLOCK_RULE，表示在explain performance显示界面中显示查询过滤器检查耗时。该选项仅9.1.0.100及以上集群版本支持。
- PARTITION_INSERT_CHECK，表示范围分区表中插入数据时，如果未匹配到任何分区，设置该参数时会在日志中输出分区列的值和分区表当前的分区边界值。该选项9.1.0集群版本中仅9.1.0.210及以上版本支持。
**默认值：**off(ALL)，不开启任何定位功能。
#### resource_track_log
**参数说明**：控制自诊断的日志级别。目前仅对多列统计信息进行控制。
**参数类型：**USERSET
**取值范围：**字符串
- summary：显示简略的诊断信息。
- detail：显示详细的诊断信息。
目前这两个参数值只在显示多列统计信息未收集的告警的情况下有差别，summary不显示未收集多列统计信息的告警，detail会显示这类告警。
**默认值：**summary
#### hll_default_log2m
**参数说明：** 该参数可以指定hll数据结构桶的个数。桶的个数会影响hll计算distinct值的精度，桶的个数越多，误差越小。误差范围为：\[-1.04/2^log2m\*1/2^,+1.04/2^log2m\*1/2^\]。
**参数类型：**USERSET
**取值范围：**整型，10\~16。
**默认值：**11
#### hll_default_regwidth
**参数说明：** 该参数可以指定hll数据结构每个桶的位数，该值越大，hll所占内存越高。hll_default_regwidth和hll_default_log2m可以决定当前hll能够计算的最大distinct value。具体对应关系可以参见[表1 hll_default_log2m和hll_default_regwidth与当前能计算的最大distinct value值的关系]。
**参数类型：**USERSET
**取值范围：**整型，1\~5。
**默认值：**5
 表1hll_default_log2m和hll_default_regwidth与当前能计算的最大distinct value值的关系 
| log2m | regwidth = 1 | regwidth = 2 | regwidth = 3 | regwidth = 4 | regwidth = 5 |
|:---|:---|:---|:---|:---|:---|
| 10    | 7.4e+02      | 3.0e+03      | 4.7e+04      | 1.2e+07      | 7.9e+11      |
| 11    | 1.5e+03      | 5.9e+03      | 9.5e+04      | 2.4e+07      | 1.6e+12      |
| 12    | 3.0e+03      | 1.2e+04      | 1.9e+05      | 4.8e+07      | 3.2e+12      |
| 13    | 5.9e+03      | 2.4e+04      | 3.8e+05      | 9.7e+07      | 6.3e+12      |
| 14    | 1.2e+04      | 4.7e+04      | 7.6e+05      | 1.9e+08      | 1.3e+13      |
| 15    | 2.4e+04      | 9.5e+04      | 1.5e+06      | 3.9e+08      | 2.5e+13      |
   
#### hll_default_expthresh
**参数说明：**该参数可以用来设置从Explicit模式到Sparse模式的默认阈值大小。
**参数类型：**USERSET
**取值范围：** 整型，-1\~7。-1表示自动模式，0表示跳过Explicit模式，取1-7表示在基数到达2^hll_default_expthresh^时切换模式。
**默认值：**-1
#### hll_default_sparseon
**参数说明：**该参数可用来指定是否默认开启Sparse模式。
**参数类型：**USERSET
**取值范围：**0，1。0表示默认关闭，1表示默认开启。
**默认值：**1
#### hll_max_sparse
**参数说明：**该参数可以用来指定max_sparse的大小。
**参数类型：**USERSET
**取值范围：**整型，-1\~INT_MAX
**默认值：**-1
#### enable_compress_hll
**参数说明：**该参数可以用来指定是否对hll开启内存优化模式。
**参数类型：**USERSET
**取值范围：**布尔型
- on/true表示对hll开启内存优化模式。
- off/false表示不开启内存优化模式。
**默认值：**off
#### approx_count_distinct_precision
**参数说明：** 该参数表示HyperLogLog++ (HLL++)算法中分桶个数，可以用来调整approx_count_distinct聚集函数的误差率。桶的个数会影响distinct值估算的精度，桶的个数越多，误差越小。误差范围为：\[-1.04/2^log2m\*1/2^,+1.04/2^log2m\*1/2^\]。
**参数类型：**USERSET
**取值范围：**整型，10\~20。
**默认值：**17
 #### udf_memory_limit
**参数说明：**控制每个CN、DN执行UDF时可用的最大物理内存量。
**参数类型：**POSTMASTER
**取值范围：** 整型，200\*1024～[max_process_memory](https://support.huaweicloud.com/devg-dws/dws_04_0893.html#ZH-CN_TOPIC_0000001811610373__sadc1e0e8c1c246a4a6cad3967deebaad)，单位为KB。
**默认值：**0.05 \* max_process_memory
#### FencedUDFMemoryLimit
**参数说明：**控制每个fenced udf worker进程使用的虚拟内存。
**参数类型：**USERSET
**设置建议：** 不建议设置此参数，可用[udf_memory_limit]代替。
**取值范围：**整数，可带单位（KB，MB，GB）。其中0表示不做内存控制。
**默认值：**0
#### enable_pbe_optimization
**参数说明**：设置优化器是否对以PBE（Parse Bind Execute）形式执行的语句进行查询计划的优化。
**参数类型：**USERSET
**取值范围**：布尔型。
- on表示优化器将优化PBE语句的查询计划。
- off表示不使用优化。
**默认值**：on
#### enable_light_proxy
**参数说明**：设置优化器是否对简单查询在CN上优化执行。
**参数类型：**USERSET
**取值范围**：布尔型。
- on表示优化器将优化CN上简单查询的执行。
- off表示不使用优化。
**默认值**：on
#### backend_flush_after
**参数说明**：设置backend线程在连续写多少个磁盘页后会产生异步刷盘操作。DWS中，磁盘页大小为8KB。
**参数类型：**USERSET
**取值范围**：整型，0\~256 （0表示关闭异步刷盘功能）。例如，取值64，表示backend线程连续写64个磁盘页，即64\*8=512KB磁盘空间后会进行异步刷盘。
**默认值**：0
#### enable_parallel_ddl
**参数说明**：控制多CN对同一数据库对象是否能安全地并发执行DDL操作。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示可以安全地并发执行DDL操作，不会出现分布式死锁。
- off表示不能安全地并发执行DDL操作，可能会出现分布式死锁。
**默认值**：on
#### gc_fdw_verify_option
**参数说明**：在协同分析特性中，控制是否启用结果集行数校验逻辑。该参数仅8.1.3.310及以上集群版本支持。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示开启结果集行数校验逻辑，额外发送select count语句获取预期行数，与实际获取结果集进行比对。
- off表示关闭结果集行数校验逻辑，仅获取所需结果集。
**默认值**：on
![](https://support.huaweicloud.com/devg-dws/public_sys-resources/note_3.0-zh-cn.png)
- 该参数开启时性能会有轻微劣化，性能敏感场景可通过关闭该参数提升性能。
- 结果集行数校验失败时会上报异常，可通过设置参数log_min_messages=debug1和logging_module='on(COOP_ANALYZE)'来打开协同分析日志。
 
#### show_acce_estimate_detail
**参数说明** ：在DWS集群使用加速集群场景下（即[acceleration_with_compute_pool](https://support.huaweicloud.com/devg-dws/dws_04_0945.html#ZH-CN_TOPIC_0000001811490665__section13787157164412)设置为on），控制explain命令是否显示用于评估执行计划下推到加速集群的评估信息。评估信息一般用于运维人员在维护工作中使用，因此该参数默认关闭，此外为了避免这些信息干扰正常的explain信息显示，只有在explain命令的verbose选项打开的情况下才显示评估信息。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示可以在explain命令的输出中显示评估信息。
- off表示不在explain命令的输出中显示评估信息。
**默认值**：off
 #### full_group_by_mode
**参数说明** ：结合[behavior_compat_options](https://support.huaweicloud.com/devg-dws/dws_04_0931.html#ZH-CN_TOPIC_0000001811490801__section1980124735516)中disable_full_group_by_mysql使用，用于控制disable_full_group_by_mysql语法开关打开后的两种不同行为。
**参数类型：**USERSET
**取值范围**：字符串
- nullpadding表示对于非聚集列而言，对该列NULL值进行填充，取该列非NULL值，结果集可能为不同行。
- notpadding表示对于非聚集列而言，不处理NULL值，取该行整行数据，非聚集列结果集为随机的一行。
**默认值**：notpadding
![](https://support.huaweicloud.com/devg-dws/public_sys-resources/notice_3.0-zh-cn.png)
该参数生效前提为MySQL兼容库下打开disable_full_group_by_mysql，且查询中出现非聚集列场景生效。该参数的两种行为也仅针对查询中的非聚集列生效。
#### enable_pg_class_visibility_debug
**参数说明**：控制是否允许输出与pg_class系统表可见性相关的日志。该参数仅限开发及维护定位相关问题，不建议普通用户使用。该参数9.1.0.226及以上的9.1.0.xxx集群版本支持。
**参数类型：**USERSET
**取值范围**：布尔型
- on/true表示开启此日志开关。
- off/false表示关闭此日志开关。
**默认值**：off
#### is_db_oid_consistent
**参数说明**：用于标识数据库OID是否在所有节点上一致。该参数仅9.1.0.100及以上集群版本支持。
**参数类型：**SUSET
**取值范围**：布尔型
- true表示数据库OID在所有节点上一致。
- false表示数据库OID在不同节点中不一致。
**默认值**：false
![](https://support.huaweicloud.com/devg-dws/public_sys-resources/caution_3.0-zh-cn.png)
DWS标准数仓类型转为存算分离集群时会自动设置此参数，用于判断数据库是否支持创建V3表。该参数仅用于查看，不建议用户设置。
#### enable_cudesc_streaming
**参数说明**：在存算分离架构下，控制跨逻辑集群访问是否选择cudesc streaming路径（从表所在逻辑集群获取cudesc、delta表数据等信息）。该参数仅9.1.0及以上集群版本支持。
**参数类型：**SUSET
**取值范围** ：枚举型
- off表示关闭cudesc streaming。
- on表示开启cudesc streaming。
- only_read_on表示只在数据读取时支持cudesc streaming。
 
**默认值**： on
#### force_read_from_rw
**参数说明**：在存算分离架构下，强制从其他逻辑集群上读取数据（从表所在逻辑集群上读取数据）。该参数仅9.0.0及以上集群版本支持。
**参数类型：**USERSET
**取值范围**：布尔型
**默认值**：off
#### kv_sync_up_timeout
**参数说明**：在存算分离架构下，设置KV同步等待超时时间。该参数仅9.0.0及以上集群版本支持。
**参数类型：**USERSET
**取值范围**：整型，0\~2147483647
**默认值**： 10min
#### enable_insert_foreign_table_dop
**参数说明**：控制OBS外表写出时是否启用dop加速。每个DN的dop线程数量由query_dop决定，可以设置query_dop控制并行度。该参数仅9.1.0.200及以上版本支持。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示启用外表dop加速。
- off表示禁用外表dop加速。
**默认值**：off
#### enable_insert_foreign_table_dop_opt
**参数说明**：控制外表insert dop启用后，是否启用分区重分布优化。导出分区数较多时（导出分区数大于10倍分区数），建议开启，可以减少单分区内的小文件同时提高导出性能。该参数仅9.1.0.200及以上版本支持。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示启用分区外表insert dop重分布优化。
- off表示禁用分区外表insert dop重分布优化。
**默认值**：off
 #### enable_hstore_binlog_table
**参数说明：**控制是否可以创建binlog表。
**参数类型：**SIGHUP
**取值范围**：布尔型
- on表示可以创建binlog表。
- off表示不可以创建binlog表。
**默认值：**off
 #### enable_generate_binlog
**参数说明：**控制当前会话的binlog表上的DML操作是否产生binlog。该参数仅9.1.0.200以上集群版本支持。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示产生binlog。
- off表示不产生binlog。
**默认值：**on
#### binlog_consume_timeout
**参数说明：**控制在线扩缩容binlog表或者vacuum full binlog表时，循环判断binlog记录是否都被消费的超时时间。该参数仅8.3.0.100及以上版本支持。单位秒。
**参数类型：**SIGHUP
**取值范围：**整型，0\~86400
**默认值：** 3600
#### enable_shipping_arrayexpr
**参数说明：**控制是否开启Array相关的表达式计算下推。该参数仅9.1.0.100及以上集群版本支持。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示开启Array表达式下推。
- off表示关闭Array表达式下推。
**默认值：**off
#### enable_vectorization_array
**参数说明：**控制Array相关的表达式计算是否支持向量化引擎。该参数仅9.1.0.100及以上集群版本支持。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示开启Array表达式向量化。
- off表示关闭Array表达式向量化。
**默认值：**off
#### enable_update_optimization
**参数说明：**控制是否优化以全部主键为更新条件的DELETE/UPDATE语句，仅适用hstore_opt表。该参数仅9.1.0.100及以上集群版本支持。
**参数类型：**USERSET
**取值范围**：布尔型
- on表示开启优化。
- off表示关闭优化。
**默认值：**on
#### with_recursive_wait_timeout
**参数说明：**用于控制with recursive算子执行等待超时退出的时间。该参数仅9.1.0.100及以上集群版本支持。
**参数类型：**USERSET
**取值范围：**整型，0\~INT_MAX，单位为秒。其中，0表示不设置超时时间。
**默认值：** 0
