检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
相近的情况下,倾向于选择参数化路径执行表连接。注意:此参数生效有两个必要的前置条件:1、参数化路径被生成;2、参数化路估计的代价和其他索引扫描算子类似。 该参数属于USERSET类型参数,请参考表2中对应设置方法进行设置。 取值范围:布尔型 默认值:off enable_ai_watchdog
obin的数据分布方式,但是使用约束较多(并行度设置,关闭FQS优化)一般不建议使用。 local_roundrobin hint只有在表扫描并行度为1的时候才会生效,建议和scandop hint一起使用。 父主题: 使用Plan Hint进行调优
描述:当前事务中参数为表时通过顺序扫描读取的行数,或参数为索引时返回的索引条目数。 返回值类型:bigint pg_stat_get_xact_numscans(oid) 描述:当前事务中参数为表时执行的顺序扫描次数,或参数为索引时执行的索引扫描次数。 返回值类型:bigint
样的结果。 STABLE 表示该存储过程不能修改数据库,对相同参数值,在同一次表扫描里,该函数的返回值不变,但是返回值可能在不同SQL语句之间变化。 VOLATILE 表示该存储过程值可以在一次表扫描内改变,不会做任何优化。 LEAKPROOF 表示该存储过程没有副作用,指出参数
active_statements integer 资源池上最大的并发数。 max_dop integer 最大并发度。用作扩容的接口,表示数据重分布时,扫描并发度。 memory_limit name 资源池最大的内存。 parentid oid 父资源池OID。 io_limits integer
建成本更低。 创建索引时指定此关键字,需要执行先后两次对该表的全表扫描来完成build,第一次扫描的时候创建索引,不阻塞读写操作;第二次扫描的时候合并更新第一次扫描到目前为止发生的变更。 由于需要执行两次对表的扫描和build,而且必须等待现有的所有可能对该表执行修改的事务结束。
参数说明:依赖HTAP特性开启状态,设置是否打开HTAP内存列扫描算子IMCVScan。 参数类型:布尔型 参数单位:无 取值范围: on:打开HTAP内存列扫描算子IMCVScan。 off:关闭HTAP内存列扫描算子IMCVScan。 默认值:on 设置方式:该参数属于USE
表示该函数在给出同样的参数值时总是返回同样的结果。 STABLE 表示该函数不能修改数据库,对相同参数值,在同一次表扫描里,该函数的返回值不变,但是返回值可能在不同SQL语句之间变化。 VOLATILE 表示该函数值可以在一次表扫描内改变,不会做任何优化。 SHIPPABLE NOT SHIPPABLE 表示该函数是否可以下推到DN上执行。
参数说明:扫描算子是否等待BloomFilter创建完成。多租场景下,该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示算子必须等待BloomFilter创建完成再开始扫描。 off:表示算子无需等待BloomFilter创建完成即可开始扫描。待Bl
Agg查询重写规则(消除子查询中的聚集运算)。 magicset:使用Magic Set查询重写规则(将带有聚集算子的子查询提前和主查询进行关联,减少子链接的重复扫描)。 partialpush:使用Partial Push查询重写规则(对于不可下推的语句,下推部分子查询到DN执行,剩余不下推的部分在CN执行)。
BACKWARD 从当前关联位置开始,抓取前面一行(和PRIOR一样) 。 BACKWARD count 从当前关联位置开始,抓取前面的count行(向后扫描)。 取值范围:有符号的整数 count为正数就抓取当前关联位置之前的count行。 count为负数就抓取当前关联位置之后的abs(count)行。
描述:如果参数是一个表,则顺序扫描读取的活跃行数目。如果参数是一个索引,则返回的活跃索引行的数目。 返回值类型:bigint pg_stat_get_tuples_fetched(oid) 描述:如果参数是一个表,则位图扫描抓取的行数目。如果参数是一个索引,则用简单索引扫描在原表中抓取的行数目。
ROACH模块数据的校验。 默认值:UPAGE:UBTREE:UNDO index_trace_level:控制开启索引追踪并控制打印级别,开启后在索引扫描的过程中,会根据不同的打印级别对符合条件的索引元组的信息进行打印 取值范围:取值见表格描述 默认值:NO 表3 index_trace_level取值含义说明
rows) 由于目标列中的相关子查询(select avg(c2) from t2 where t2.c2=t1.c2)无法提升的缘故,导致每扫描t1的一行数据,就会触发子查询的一次执行,效率低下。如果打开intargetlist参数会把子查询提升转为JOIN,来提升查询的性能: yshen=#
group by a + a having rownum < 5。 having子句中如果存在ROWNUM条件则不允许having子句下推至扫描节点: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 gaussdb=# CREATE TABLE
可以看到t1.a = t2.a条件过滤在Join上面,此时可以通过predpush_same_level(t1, t2)将条件下推至t2的扫描算子上: 1 2 3 4 5 6 7 8 openGauss=# explain select /*+predpush_same_level(t1
active_statements integer 资源池上最大的并发数。 max_dop integer 只用于扩容的接口,表示数据重分布时,扫描并发度。 memory_limit name 资源池最大的内存。 parentid oid 父资源池OID。 io_limits integer
constant的行。这样的操作符必须返回布尔值,并且它的左输入类型必须匹配索引的字段数据类型。 ordering操作符表明这个操作符族的一个索引可以被扫描,返回以ORDER BY indexed_column operator constant顺序表示的行。这样的操作符可以返回任意可排序的数
Cond: (f1 IS NOT NULL) (4 rows) 可以看到use_minmax hint成功生效。 use_minmax优化只有在表扫描使用indexscan的时候生效。 父主题: 使用Plan Hint进行调优
表示该函数在给出同样的参数值时总是返回同样的结果。 STABLE 表示该函数不能修改数据库,对相同参数值,在同一次表扫描里,该函数的返回值不变,但是返回值可能在不同SQL语句之间变化。 VOLATILE 表示该函数值可以在一次表扫描内改变,不会做任何优化。 LEAKPROOF 表示该函数没有副作用,指出参数只包括