检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
DBMS_OUTPUT 接口介绍 高级功能包DBMS_OUTPUT支持的所有接口请参见表1。 表1 DBMS_OUTPUT 接口名称 描述 DBMS_OUTPUT.PUT_LINE 输出指定的文本,文本长度不能超过32767字节。 DBMS_OUTPUT.PUT 将指定的文本输出
算子级调优 算子级调优介绍 一个查询语句要经过多个算子步骤才会输出最终的结果。由于个别算子耗时过长导致整体查询性能下降的情况比较常见。这些算子是整个查询的瓶颈算子。通用的优化手段是EXPLAIN ANALYZE/PERFORMANCE命令查看执行过程的瓶颈算子,然后进行针对性优化。
案例:调整局部聚簇键 局部聚簇 (Partial Cluster Key,简称PCK),列存储下一种通过min/max稀疏索引实现基表快速扫描的索引技术。Partial Cluster Key可以指定多列,但是一般不建议超过2列。PCK适用于列存大表点查询加速。 优化前 创建一个
案例:改写SQL排除剪枝干扰 分区表查询中表达式一般不是单纯的分区键,而是包含分区键的表达式的Filter条件,这种类型的Filter条件是不能用来剪枝的。 优化前 t_ddw_f10_op_cust_asset_mon为分区表,分区键为year_mth,此字段是由年月两个值拼接而成的整数。
DBMS_OUTPUT 接口介绍 高级功能包DBMS_OUTPUT支持的所有接口请参见表1。 表1 DBMS_OUTPUT 接口名称 描述 DBMS_OUTPUT.PUT_LINE 输出指定的文本,文本长度不能超过32767字节。 DBMS_OUTPUT.PUT 将指定的文本输出
PG_USER_MAPPING PG_USER_MAPPING系统表存储从本地用户到远程的映射。 需要有系统管理员权限才可以访问此系统表。普通用户可以使用视图PG_USER_MAPPINGS进行查询。 表1 PG_USER_MAPPING字段 名字 类型 引用 描述 oid oid
GLOBAL_WORKLOAD_SQL_ELAPSE_TIME GLOBAL_WORKLOAD_SQL_ELAPSE_TIME视图显示集群中所有Workload控制组内SQL语句执行的响应时间的统计信息,包括SELECT、UPDATE、INSERT、DELETE语句的最大、最小、平均、以及总响应时间,单位为微秒。
PG_GET_SENDERS_CATCHUP_TIME PG_GET_SENDERS_CATCHUP_TIME视图显示单个DN上当前活跃的主备发送线程的追赶信息。 表1 PG_GET_SENDERS_CATCHUP_TIME字段 名称 类型 描述 pid bigint 当前sender的线程ID。
PG_STAT_XACT_USER_TABLES PG_STAT_XACT_USER_TABLES视图显示命名空间中用户表的事务状态信息。 表1 PG_STAT_XACT_USER_TABLES字段 名称 类型 描述 relid oid 表的OID。 schemaname name
PGXC_OS_RUN_INFO PGXC_OS_RUN_INFO视图显示集群中各节点上操作系统运行的状态信息,除新增node_name(节点名称)字段外,其余字段内容和PV_OS_RUN_INFO视图相同。需要有系统管理员权限或预置角色gs_role_read_all_stats权限才可以访问此视图。
PGXC_STAT_BGWRITER PGXC_STAT_BGWRITER视图显示集群中各节点上后端写进程活动的统计信息,除新增node_name(节点名称)字段外,其余字段内容和PG_STAT_BGWRITER视图相同。需要有系统管理员权限才可以访问此视图。 表1 PGXC_STAT_BGWRITER字段
PGXC_REL_IOSTAT PGXC_REL_IOSTAT视图显示集群中各节点上磁盘读写的统计信息。除新增node_name(节点名称)字段外,其余字段内容和GS_REL_IOSTAT视图相同。需要有系统管理员权限才可以访问此视图。 表1 PGXC_REL_IOSTAT字段 名称
PG_PROC PG_PROC系统表存储函数或过程的信息。 表1 PG_PROC字段 名称 类型 描述 proname name 函数名。 pronamespace oid 此函数所在命名空间的OID。 proowner oid 函数的所有者。 prolang oid 实现语言或函数的调用接口。
GLOBAL_REDO_STAT GLOBAL_REDO_STAT视图显示集群中所有节点上XLOG重做过程中的统计信息总和。除avgiotim(表示所有节点平均的重做写入时间)外,其余字段名称和PV_REDO_STAT视图相同,但其余字段含义为各节点上PV_REDO_STAT视图同名字段的数值之和。
开发前准备 如果用户在APP的开发中,使用了连接池机制,那么需要遵循如下规范: 如果在连接中设置了GUC参数,那么在将连接归还连接池之前,必须使用“SET SESSION AUTHORIZATION DEFAULT;RESET ALL;”将连接的状态清空。 如果使用了临时表,那么
SQL自诊断 用户在执行INSERT/UPDATE/DELETE/SELECT/MERGE INTO或者CREATE TABLE AS语句时,可能会遇到性能问题。产品内置集成了性能自动诊断功能,并把相关的诊断信息保存到实时TopSQL中,当配置参数enable_resource_
使用Plan Hint进行调优 Plan Hint调优概述 Join顺序的Hint Join方式的Hint 行数的Hint Stream方式的Hint Scan方式的Hint 子链接块名的hint 运行倾斜的hint 配置参数的hint Hint的错误、冲突及告警 Plan Hint实际调优案例
动态调用匿名块 动态调用匿名块是指在动态语句中执行匿名块,使用EXECUTE IMMEDIATE…USING语句后面带IN、OUT来输入、输出参数。 语法 语法请参见图1。 图1 call_anonymous_block::= using_clause子句的语法参见图2。 图2 using_clause-4
开发前准备 如果用户在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