华为云用户手册

  • skew_option 参数说明:控制是否使用优化策略。 参数类型:枚举类型 参数单位:无 取值范围:off、normal、lazy off:关闭策略。 normal:采用激进策略。对于不确定是否出现倾斜的场景,认为存在倾斜,并进行相应优化。 lazy:采用保守策略。对于不确定是否出现倾斜场景,认为不存在倾斜,不进行优化。 默认值:normal 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:会影响优化器是否针对倾斜进行优化,设置不当会影响计划生成性能或查询执行性能。
  • enable_iud_fusion 参数说明:控制IUD语句优化特性的开关。 参数类型:布尔型 参数单位:无 取值范围: on:表示对输入进行类型转换时做优化处理。 off:表示关闭本功能。 默认值:off 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值,IUD语句性能需优化时可考虑开启。 设置不当的风险与影响:打开可能会增加优化器的开销,无明显风险。
  • try_vector_engine_strategy 参数说明:设置行存表走向量化执行引擎的策略。通过设置该参数,可以使包含行存表的查询转换为向量化的执行计划执行计算,从而提升类AP场景的复杂查询的执行性能。 参数类型:枚举类型 参数单位:无 取值范围: off:表示关闭本功能,即行存表不会转换为向量的执行计划执行。 force:表示只要查询中不包含向量化引擎不支持的类型或者表达式,则查询的基表为行存表,强制将查询转换为向量化的执行计划执行计算。在这种情况下,针对不同的查询场景可能出现性能下降。 optimal:表示在force的基础上,由优化器根据查询的复杂度进行选择是否将查询语句转换为向量化的执行计划,尽可能避免转换为向量化的执行计划后出现性能下降。 默认值:off 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:会影响优化器是否选择向量化的执行计划,设置不当可能会影响部分场景下查询的性能。
  • default_limit_rows 参数说明:设置生成genericplan的缺省limit估算行数。 参数类型:浮点型 参数单位:无 取值范围:-100 ~ DBL_MAX 设置为非负数时,表示直接将设置的值作为估算limit的行数。 设置为负数时,表示使用百分比的形式设置默认的估算值,负数转换为默认百分比,即-5代表5%。 默认值:-10 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:设置不当可能影响带有limit算子genericplan查询的性能。
  • enable_smp_partitionwise 参数说明:控制是否在SMP场景下,开启Partition-wise Join的能力。 参数类型:布尔型 参数单位:无 取值范围: on:表示在SMP场景下,开启Partition-wise Join的能力。 off:表示在SMP场景下,不开启Partition-wise Join的能力。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:可能影响SMP场景下数据查询操作的性能。
  • force_smp_partitionwise_scan 参数说明:在SMP场景下,打开Partition-wise Join开关enable_smp_partitionwise后,是否在全局范围内开启Partition-wise Scan的并行扫描方式。 参数类型:布尔型 参数单位:无 取值范围: on:表示在SMP场景下,开启Partition-wise Scan的并行扫描方式。 off:表示在SMP场景下,不开启Partition-wise Scan的并行扫描方式。 默认值:off 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:可能影响SMP场景下读取分区表数据的性能。
  • enable_opfusion_reuse 参数说明:控制复用opfusion obj内存特性的开关。 参数类型:布尔型 参数单位:无 取值范围: on:表示在满足条件情况下,复用opfusion obj内存。 off:表示关闭本功能。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:关闭可能会导致计划重新生成,查询性能下降。
  • enable_nodegroup_debug 参数说明:控制优化器在多Node Group环境下,是否使用强制弹性计算。Node Group目前为内部机制,用户无需设置。该参数只在expected_computing_nodegroup被设置为具体Node Group时生效。 参数类型:布尔型 参数单位:无 取值范围: on:表示强制将计算弹性到expected_computing_nodegroup所指定的Node Group进行计算。 off:表示不强制使用某个Node Group进行计算。 默认值:off 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:设置不当可能影响查询性能。
  • enable_valuepartition_pruning 参数说明:是否对DFS分区表进行静态/动态优化。 参数类型:布尔型 参数单位:无 取值范围: on:表示对DFS分区表进行静态/动态优化。 off:表示不对DFS分区表进行静态/动态优化。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:关闭后DFS分区表相关查询性能可能下降。
  • expected_computing_nodegroup 参数说明:标识选定的计算Node Group模式或目标计算Node Group。Node Group目前为内部机制,用户无需设置。共四种计算Node Group模式,用于关联操作和聚集操作时选定计算Node Group。在每一种模式中,优化器有针对性地选定几个候选计算Node Group,然后根据代价,从中为当前算子挑选最佳计算Node Group。 参数类型:字符串 参数单位:无 取值范围: optimal:候选计算Node Group列表包含算子操作对象所在的Node Group和由当前用户具有COMPUTE权限的所有Node Group包含的所有DN构成的Node Group。 query:候选计算Node Group列表包含算子操作对象所在的Node Group和由当前查询涉及的所有基表所在Node Group包含的所有DN构成的Node Group。 Node Group名(enable_nodegroup_debug被设置为off):候选计算Node Group列表包含算子操作对象所在的Node Group和该指定的Node Group。 Node Group名(enable_nodegroup_debug被设置为on):候选计算Node Group为指定的Node Group。 默认值:query 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:设置不当可能会导致优化器不能选择更优的计算Node Group,从而影响查询性能。
  • qrw_inlist2join_optmode 参数说明:控制是否使用inlist-to-join查询重写。 参数类型:字符串 参数单位:无 取值范围: disable:关闭inlist-to-join查询重写。 cost_base:基于代价的inlist-to-join查询重写,即基于代价自动评估是否使用inlist-to-join查询重写。 rule_base:基于规则的inlist-to-join查询重写,即强制使用inlist-to-join查询重写。 任意正整数(1 ~ 2147483647):inlist-to-join查询重写阈值,即list内元素个数大于该阈值,进行inlist-to-join查询重写。 默认值:cost_base 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值,除非有异常场景或者发现优化器选择的计划查询性能低,需要手动调优才使用其他值。 设置不当的风险与影响:该参数会影响优化器是否进行inlist-to-join查询重写,设置不当会导致未生成更优计划。
  • enable_expr_fusion 参数说明:控制SRF、表达式展平、共享聚合函数的转移状态和Step步数优化特性的开关。 参数类型:布尔型 参数单位:无 取值范围: on:表示同时启用SRF、表达式展平、共享聚合函数的转移状态和Step步数优化特性。 off:表示关闭本功能。 默认值:off 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:打开会增加优化器运行开销。 SRF只支持query_dop=1的场景。
  • enable_absolute_tablespace 参数说明:控制表空间是否可以使用绝对路径。 参数类型:布尔型 参数单位:无 取值范围: on:表示可以使用绝对路径。 off:表示不可以使用绝对路径。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:关闭该参数创建表空间时将不允许使用绝对路径,建议根据业务实际需要设置,无其他风险。
  • enable_default_index_deduplication 参数说明:设置btree索引默认情况下是否对键值重复的元组进行去重压缩。去重压缩功能对主键索引和唯一索引不生效。在重复键值的索引较多时,去重压缩功能可以有效降低索引占用空间。若创建索引时带有with (deduplication=on/off)语法时,优先根据deduplication参数决定该索引是否使用去重压缩功能。 参数类型:布尔型 参数单位:无 取值范围: on:表示btree索引默认开启索引去重压缩功能。 off:表示btree索引默认关闭索引去重压缩功能。 默认值:off 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值,对于非唯一索引、索引键值重复度较高,且索引占用空间较大的情况,可以打开。 设置不当的风险与影响:非唯一索引且索引键值重复度很低或者唯一的场景,去重压缩功能会使索引插入性能小幅度劣化。
  • stream_multiple 参数说明:设置优化器计算Stream算子开销时的加权。在原代价模型的基础上,最终Stream代价将被乘以此加权参数。 此参数仅对Redistribute和Broadcast类型的Stream有效。 参数类型:浮点型 参数单位:无 取值范围:0 ~ DBL_MAX 默认值:1 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值,并依据部署环境适时调整。 设置不当的风险与影响:设置不当会导致优化器错估Stream算子开销,从而影响查询性能。
  • enable_stream_recursive 参数说明:控制是否将with recursive关联查询下推DN分布式执行。 参数类型:布尔型 参数单位:无 取值范围: on:表示支持使用with recursive关联查询下推DN分布式执行。 off:表示不支持使用with recursive下推。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:关闭可能会导致查询性能下降。
  • max_recursive_times 参数说明:控制with recursive的最大迭代次数。 参数类型:整型 参数单位:无 取值范围:0 ~ 2147483647 默认值:200 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐根据实际业务评估合理值。 设置不当的风险与影响:对于with recursive语句,此参数用于避免陷入死循环,层次查询可用nocycle跳出循环。若要更改,请在理解参数含义后谨慎操作,避免因误操作产生意料之外的风险。
  • enforce_a_behavior 参数说明:控制正则表达式的规则匹配模式。 参数类型:布尔型 参数单位:无 取值范围: on:表示正则表达式采用A格式的匹配规则。 off:表示正则表达式采用POSIX格式的匹配规则。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:根据业务场景进行设置。 设置不当的风险与影响:查询语句中正则表达式无法按预期匹配。
  • enable_change_hjcost 参数说明:控制优化器在Hash Join代价估算路径选择时,是否使用将内表运行时代价排除在Hash Join节点运行时代价外的估算方式。如果使用,则有利于选择条数少,但运行代价大的表做内表。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用。 off:表示不使用。 默认值:off 设置方式:该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:设置不当可能会导致Hash Join代价估算有误,从而影响带有Hash Join计划生成的准确性。
  • enable_stream_operator 参数说明:控制优化器对stream的使用。当enable_stream_operator参数关闭时,会有大量关于计划不能下推的日志记录到日志文件中。如果用户不需要这些日志内容,建议用户在enable_stream_operator参数关闭时,也同时关闭enable_unshipping_log参数。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用。 off:表示不使用。 默认值: 独立部署:off
  • best_agg_plan 参数说明:本参数用于控制优化器生成哪种hashagg的计划。对于stream下的Agg操作,优化器会生成三种计划: hashagg+gather(redistribute)+hashagg。 redistribute+hashagg(+gather)。 hashagg+redistribute+hashagg(+gather)。 参数类型:整型 参数单位:无 取值范围:0 ~ 3 0:优化器会根据以上三种计划的估算cost选择最优的一种计划生成。 1:强制生成第一种计划。 2:如果group by列可以重分布,强制生成第二种计划,否则生成第一种计划。 3:如果group by列可以重分布,强制生成第三种计划,否则生成第一种计划。 默认值:0 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:该参数会影响hashagg的生成方式,通常建议使用默认值,设置其他值会倾向于某一类hashagg,设置不当可能会影响部分场景下查询的性能。
  • enable_stream_concurrent_update 参数说明:控制优化器在并发更新场景下对stream的使用,该参数受限于enable_stream_operator参数。如果出现并发update冲突,有一定可能会出现报错,可以通过本参数控制。 参数类型:布尔型 参数单位:无 取值范围: on:表示允许优化器对update语句生成stream计划。 off:表示优化器对update语句仅能生成非stream计划。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:关闭该参数会导致优化器倾向于选择其他方法,对update语句仅能生成非stream计划,产生的不良影响较小,通常建议打开。
  • enable_broadcast 参数说明:控制优化器在stream代价估算时对broadcast分布方式的使用。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用。 off:表示不使用。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:设置不当可能会影响stream计划生成的准确性,从而影响查询性能。
  • agg_redistribute_enhancement 参数说明:进行Agg操作时,如果包含多个group by列且均不为分布列,进行重分布时会选择某一group by列进行重分布。本参数控制选择重分布列的策略。 参数类型:布尔型 参数单位:无 取值范围: on:表示会选择估算distinct值最多的一个可重分布列作为重分布列。 off:表示会选择第一个可重分布列作为重分布列。 默认值:off 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:打开会增加计划生成时间,但可能会选择更合理的重分布列。
  • enable_index_nestloop 参数说明:控制优化器对内表参数化索引扫描嵌套循环连接规划类型的使用。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用。 off:表示不使用。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:关闭该参数会导致部分场景下无法生成参数化路径,通常参数化路径可以提升查询性能,因此一般建议开启。
  • enable_remote_param 参数说明:控制XC参数化路径特性的打开与关闭,打开后能够生成XC参数化路径计划。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用。 off:表示不使用。 默认值:off 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:在相关子链接和Nestloop场景中,如果外表规模较小且内表规模较大,并且内表在关联条件上有能够最左匹配的索引时,设置为on,能够提高性能。 设置不当的风险与影响:在相关子链接和Nestloop场景中,如果外表规模较大且内表规模较小,设置为on,可能会导致性能变差。 仅支持XC计划,不支持Stream和FQS计划。 当且仅当基表生成索引参数化路径时,才对基表生成带参数rescan的计划。 仅支持基础表的参数化路径,不支持join表的参数化路径。 不支持Stream和XC计划自适应选择。 Nestloop参数化路径仅支持内表为RemoteQuery的场景。 不支持predpush Hint。 不支持带PBE参数的RemoteQuery下推。 在部分场景参数化路径场景执行性能无明显优势,需要人工调优。 M-Compatibility模式数据库下,不支持max_datanode_for_plan参数大于0时显示DN计划。
  • enable_seqscan 参数说明:控制优化器对顺序扫描规划类型的使用。完全消除顺序扫描是不可能的,但是,若关闭这个参数,当存在其他方法时,优化器会优先选择其他方法。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用。 off:表示不使用。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:关闭该参数会导致优化器倾向于选择其他扫描方法,降低顺序扫描方法的优先级,部分场景下可能会影响查询性能。
  • enable_tidscan 参数说明:控制优化器对TID扫描规划类型的使用。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用。 off:表示不使用。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:关闭该参数会导致优化器倾向于选择其他方法,降低TID扫描方法使用的优先级,产生的不良影响较小,通常建议打开。
  • enable_nestloop 参数说明:控制优化器对内表全表扫描嵌套循环连接规划类型的使用。完全消除嵌套循环连接是不可能的,但是,若关闭这个参数,当存在其他方法时,优化器会优先选择其他方法。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用。 off:表示不使用。 默认值:off 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:打开该参数优化器会对满足条件的Join连接生成NestloopJoin路径,可能导致该场景下选择的连接算子非实际最优。
  • enable_mergejoin 参数说明:控制优化器对融合连接规划类型的使用。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用。 off:表示不使用。 默认值:off 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:打开该参数优化器会对满足条件的Join连接生成融合连接路径,可能导致该场景下选择的连接算子非实际最优。
共100000条