检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
配置参数的hint 功能描述 指明计划生成时配置参数的值,又称作guc hint。 语法格式 set [global](guc_name guc_value) 参数说明 global表示hint设置的配置参数在语句级别生效,不加global表示hint设置的配置参数在子查询级别生
中第9层redistribute并没有数据倾斜,hashjoin慢的原因是由于第18层redistribute后数据倾斜导致。 经过实际数据查证,customer_address的两个join列的不同值数目较少,使用其进行join容易出现数据倾斜,故把customer_addre
202008,这种表达式一侧不是单纯的分区键、而是包含分区键的表达式的Filter条件是不能用来剪枝的,因而导致查询语句扫描了几乎整个分区表的数据。 跟原始SQL语句对比,可以确定表达式 '(year_mth + 1) > 202008' 是从表达式 'b1.year_mth + 1
group by a; 从计划可以看出,对Hash Agg进行倾斜优化后,采用了双层agg实现,大幅度过滤了进行重分布时的数据量,减少了重分布时间。 此外,需要说明的是,对于子查询,支持使用查询内部的列进行hint,如: 1 2 3 4 5 explain select
days'; 设置参数track_activities为on。 1 SET track_activities = on; 当此参数为on时,数据库系统才会收集当前活动查询的运行信息。 查看正在运行的查询语句。 以查看视图pg_stat_activity为例: 1 2 3 4 5 6
days'; 设置参数track_activities为on。 1 SET track_activities = on; 当此参数为on时,数据库系统才会收集当前活动查询的运行信息。 查看正在运行的查询语句。 以查看视图pg_stat_activity为例: 1 2 3 4 5 6
开发前准备 如果用户在APP的开发中,使用了连接池机制,那么需要遵循如下规范: 如果在连接中设置了GUC参数,那么在将连接归还连接池之前,必须使用“SET SESSION AUTHORIZATION DEFAULT;RESET ALL;”将连接的状态清空。 如果使用了临时表,那么
案例:改写SQL消除in-clause 优化前 in-clause/any-clause是常见的SQL语句约束条件,有时in或any后面的clause都是常量,类似于: 1 2 3 4 select count(1) from calc_empfyc_c1_result_tmp_t1
GOTO语句 GOTO语句可以实现从GOTO位置到目标语句的无条件跳转。GOTO语句会改变原本的执行逻辑,因此应该慎重使用,或者也可以使用EXCEPTION处理特殊场景。当执行GOTO语句时,目标Label必须是唯一的。 语法 label declaration ::= goto
开发前准备 如果用户在APP的开发中,使用了连接池机制,那么需要遵循如下规范: 如果在连接中设置了GUC参数,那么在将连接归还连接池之前,必须使用“SET SESSION AUTHORIZATION DEFAULT;RESET ALL;”将连接的状态清空。 如果使用了临时表,那么
动态调用匿名块 动态调用匿名块是指在动态语句中执行匿名块,使用EXECUTE IMMEDIATE…USING语句后面带IN、OUT来输入、输出参数。 语法 语法请参见图1。 图1 call_anonymous_block::= using_clause子句的语法参见图2。 图2 using_clause-4
GS_WORKLOAD_SQL_COUNT GS_WORKLOAD_SQL_COUNT视图显示当前节点上Workload控制组内的SQL语句执行次数的统计信息,包括SELECT、UPDATE、INSERT、DELETE语句的执行次数统计,以及DDL、DML、DCL类型语句的执行次数统计。
PG_SHARED_MEMORY_DETAIL PG_SHARED_MEMORY_DETAIL视图查询所有已产生的共享内存上下文的使用信息。 表1 PG_SHARED_MEMORY_DETAIL字段 名字 类型 描述 contextname text 内存上下文的名字。 level
PG_STAT_REPLICATION PG_STAT_REPLICATION视图用于描述日志同步状态信息,如发起端发送日志位置,收端接收日志位置等。 表1 PG_STAT_REPLICATION字段 名称 类型 描述 pid bigint 线程的PID。 usesysid oid
PG_STAT_XACT_ALL_TABLES PG_STAT_XACT_ALL_TABLES视图显示命名空间中所有普通表和TOAST表的事务状态信息。 表1 PG_STAT_XACT_ALL_TABLES字段 名称 类型 描述 relid oid 表的OID。 schemaname
PG_STATIO_SYS_SEQUENCES PG_STATIO_SYS_SEQUENCES视图显示命名空间中所有系统表为序列的IO状态信息。 表1 PG_STATIO_SYS_SEQUENCES字段 名称 类型 描述 relid oid 序列OID。 schemaname name
USER_CONS_COLUMNS USER_CONS_COLUMNS视图存储当前用户下表中约束列的信息。 名称 类型 描述 table_name character varying(64) 约束相关的表名。 column_name character varying(64) 约束相关的列名。
若发生下盘,所有下盘DN的最小逻辑下盘数据量(MB),默认为0。 max_spill_size integer 若发生下盘,所有下盘DN的最大逻辑下盘数据量(MB),默认为0。 average_spill_size integer 若发生下盘,所有下盘DN的平均逻辑下盘数据量(MB),默认为0。
案例:设置cost_param对查询性能优化 cost_param参数用于控制在特定的客户场景中,使用不同的估算方法使得估算值与真实值更接近。此参数可以同时控制多种方法,与某一方法对应的位做与操作,不为0表示该方法被选择。 场景一:优化前 cost_param的bit0(set
ment将替换相对应的占位符。要注意的是,bind_argument只能是值、变量或表达式,不能是表名、列名、数据类型等数据库对象。如果存储过程需要通过声明参数传递数据库对象来构造动态SQL语句(常见于执行DDL语句时),建议采用连接运算符“||”拼接dynamic_select