数据仓库服务 GaussDB(DWS)-其他优化器选项:hashjoin_spill_strategy

时间:2025-02-12 15:04:47

hashjoin_spill_strategy

参数说明:选择hashjoin下盘策略。(该参数8.1.2及以上版本支持)

参数类型:USERSET

取值范围:整型,0~4

  • 0:当内表较大,并且多次下盘无法分开时,尝试外表是否可以放到数据库可用内存建立哈希表。如果内外表均很大,执行NestLoop。
  • 1:当内表较大,并且多次下盘无法分开时,尝试外表是否可以放到数据库可用内存建立哈希表。如果内外表均很大,强制执行HashJoin。
  • 2:当内表较大,并且多次下盘无法分开时,强制执行HashJoin。
  • 3:当内表较大,并且多次下盘无法分开时,尝试外表是否可以放到数据库可用内存建立哈希表。如果内外表均很大,则报错。
  • 4:当内表较大,并且多次下盘无法分开时,则报错。
  • 此参数只对向量化HashJoin生效。
  • 对于数据distinct值很小且数据量很大的场景,可能出现无法下盘导致使用内存过大产生内存不受控的问题。 取值0时通过尝试内外表交换或者Nestloop可以避免出现此类内存不受控问题。 执行Nestloop可能造成某些场景性能劣化。
  • 取值0对向量化Full Join不生效,行为与取值1相同。只尝试外表是否可建立哈希表,不执行NestLoop。

默认值:0

support.huaweicloud.com/devg-dws/dws_04_0912.html