检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
PV_INSTANCE_TIME PV_INSTANCE_TIME视图用于统计进程的运行时间信息及各执行阶段所消耗时间,单位为微秒。 提供当前节点下的各种时间消耗信息,主要分为以下类型: DB_TIME: 作业在多核下的有效时间花费。 CPU_TIME:CPU时间的消耗。 EXE
PV_SESSION_MEMORY PV_SESSION_MEMORY视图统计Session级别的内存使用情况,包含执行作业在数据节点上Postgres线程和Stream线程分配的所有内存。 表1 PV_SESSION_MEMORY字段 名称 类型 描述 sessid text 线程启动时间+线程标识。
SHOW_TSC_INFO 查询当前节点TSC信息。该视图仅8.2.1及以上集群版本支持。 表1 返回值字段 名称 类型 描述 node_name text 节点名称。 tsc_mult bigint TSC换算乘数。 tsc_shift bigint TSC换算位移数。 tsc_frequency
PV_RUNTIME_ATTSTATS PV_RUNTIME_ATTSTATS视图显示autoanalyze产生的内存中表级统计信息,各字段含义与PG_STATS视图一样。该视图仅8.2.0及以上集群使用。 表1 PV_RUNTIME_ATTSTATS字段 名称 类型 引用 描述
案例:NOT IN转NOT EXISTS NOT IN语句需要使用nestloop anti join来实现,而NOT EXISTS则可以通过hash anti join来实现。在join列不存在null值的情况下,not exists和not in等价。因此在确保没有null值时,可以通过将not
GaussDB(DWS)在CPU核数、内存相同的情况下,小规格多节点与大规格三节点集群如何选择? 小规格多节点: 如果数据量不大、集群节点数量需要伸缩,但不能忍受太高的成本,可以选择小规格多节点集权。 例如,规格为8核32G的小规格集群(dwsx2.h.2xlarge.4.c6)
Join方式的Hint 功能描述 指明Join使用的方法,可以为Nested Loop,Hash Join和Merge Join。 语法格式 1 [no] nestloop|hashjoin|mergejoin([@block_name] table_list) 参数说明 no表示hint的join方式不使用。
Stream方式的Hint 功能描述 指明stream使用的方法,可以为broadcast和redistribute以及指定AGG重分布的分布键。 指定Agg重分布列Hint,仅8.1.3.100及以上集群版本支持。 语法格式 1 [no] broadcast | redistribute([@block_name]
Plan Hint调优概述 Plan Hint为用户提供了直接影响执行计划生成的手段,用户可以通过指定join顺序,join、stream、scan方法,指定结果行数,指定重分布过程中的倾斜信息,指定配置参数的值等多个手段来进行执行计划的调优,以提升查询的性能。 功能描述 Plan
步骤5:测试新的表结构下的系统性能 重新创建了具有存储方式、压缩级别、分布方式和分布列的测试数据集后,重新测试系统性能。 记录各表的存储使用情况。 使用pg_size_pretty函数查询每张表使用的磁盘空间,并将结果记录到基准表中。 1 SELECT T_NAME, PG_SI
Hint的错误、冲突及告警 Plan Hint的结果会体现在计划的变化上,可以通过explain来查看变化。 Hint中的错误不会影响语句的执行,只是不能生效,该错误会根据语句类型以不同方式提示用户。对于explain语句,hint的错误会以warning形式显示在界面上,对于非
行数的Hint 功能描述 指明中间结果集的大小,支持绝对值和相对值的hint。 语法格式 1 rows(table_list #|+|-|* const) 参数说明 #,+,-,*,进行行数估算hint的四种操作符号。#表示直接使用后面的行数进行hint。+,-,*表示对原来估
运行倾斜的hint 功能描述 指明查询运行时重分布过程中存在倾斜的重分布键和倾斜值,针对Join和HashAgg运算中的重分布进行优化。 语法格式 指定单表倾斜: 1 skew(table (column) [(value)]) 指定中间结果倾斜: 1 skew((join_rel)
Hint的错误、冲突及告警 Plan Hint的结果会体现在计划的变化上,可以通过explain来查看变化。 Hint中的错误不会影响语句的执行,只是不能生效,该错误会根据语句类型以不同方式提示用户。对于explain语句,hint的错误会以warning形式显示在界面上,对于非
Roaring Bitmap操作符 GaussDB(DWS)自8.1.3集群版本开始,支持高效的位图处理操作符,可用于用户画像,精准营销等场景,极大的提高了查询性能。 = 描述:比较两个roaringbitmap是否相等。 返回值类型:bool 示例: 1 2 3 4 5
query_band负载识别 概述 GaussDB(DWS)实现基于query_band的负载识别和队列内优先级控制,一方面提供了更为灵活的负载识别手段,可根据作业类型、应用名称、脚本名称等识别负载队列,使用户根据业务场景可灵活配置query_band识别队列;另一方面实现了队列
返回语句 GaussDB(DWS)提供两种方式返回数据:RETURN(或RETURN NEXT)及RETURN QUERY。其中,RETURN NEXT和RETURN QUERY只适用于函数,不适用存储过程。 RETURN 语法 返回语句的语法请参见图1。 图1 return_clause::=
条件语句 条件语句的主要作用是判断参数或者语句是否满足已给定的条件,根据判定结果执行相应的操作。 GaussDB(DWS)有五种形式的IF: IF_THEN 图1 IF_THEN::= IF_THEN语句是IF的最简单形式。如果条件为真,statements将被执行。否则,将忽略
循环语句 简单LOOP语句 语法图 图1 loop::= 示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 CREATE OR REPLACE PROCEDURE proc_loop(i in integer, count out
分支语句 语法 分支语句的语法请参见图1。 图1 case_when::= when_clause子句的语法图参见图2。 图2 when_clause::= 参数说明: case_expression:变量或表达式。 when_expression:常量或者条件表达式。 statement:执行语句。