检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
案例:调整中间表存储方式 在GaussDB(DWS)中行存表使用行执行引擎,列存表使用列执行引擎。如果一个SQL语句涉及的表既有行存表又有列存表,系统会自动选择行执行引擎。由于列执行引擎的性能(除indexscan相关的算子)比行执行引擎性能要好很多,因此一般建议使用列存表。特别
若发生下盘,所有下盘DN的最小下盘数据量,默认为0。单位为MB。 max_spill_size integer 若发生下盘,所有下盘DN的最大下盘数据量,默认为0。单位为MB。 average_spill_size integer 若发生下盘,所有下盘DN的平均下盘数据量,默认为0。单位为MB。
bigint 单节点的脏页率(单CN或单DN)。 last_data_changed timestampwith time zone 记录表最后一次数据变化的时间。 使用建议 对于高脏页率的系统表,建议在确认当前没有用户操作该系统表时,再执行VACUUM FULL。 建议对脏页率超过80%的非系统表执行VACUUM
步骤2:测试初始表结构下的系统性能并建立基线 在优化表结构前后,请测试和记录以下详细信息以对比系统性能差异: 数据加载时间。 表占用的存储空间大小。 查询性能。 本次实践中的示例基于使用8节点的dws.d2.xlarge集群。因为系统性能受到许多因素的影响,即使您使用相同的集群配置,结果也会有所不同。
INSTR接口参数说明 参数 说明 lob_loc 要查找的LOB描述符。 pattern 要匹配的模式,对于BLOB是由一组RAW类型的数据组成,对于CLOB是由一组text类型的数据组成。 offset 对于BLOB是以字节为单位的绝对偏移量,对于CLOB是以字符为单位的偏移量,模式匹配的起始位置是1。
INSTR接口参数说明 参数 说明 lob_loc 要查找的LOB描述符。 pattern 要匹配的模式,对于BLOB是由一组RAW类型的数据组成,对于CLOB是由一组text类型的数据组成。 offset 对于BLOB是以字节为单位的绝对偏移量,对于CLOB是以字符为单位的偏移量,模式匹配的起始位置是1。
若发生下盘,所有下盘DN的最小逻辑下盘数据量(MB),默认为0。 max_spill_size integer 若发生下盘,所有下盘DN的最大逻辑下盘数据量(MB),默认为0。 average_spill_size integer 若发生下盘,所有下盘DN的平均逻辑下盘数据量(MB),默认为0。
以上查询为lineitem表自连接的Anti Join,当使用cost_param的bit0为0时,估算Anti Join的行数与实际行数相差很大,导致查询性能下降。可以通过设置cost_param的bit0为1时,使Anti Join的行数估算更准确,从而提高查询性能。优化后的执行计划如下: 场景二:优化前
PGXC_REDO_STAT 视图PGXC_REDO_STAT显示集群中各节点上XLOG重做过程中的统计信息,除新增node_name(节点名称)字段外,其余字段内容和PV_REDO_STAT视图相同。需要有系统管理员权限或预置角色gs_role_read_all_stats权限才可以访问此视图。
GLOBAL_REL_IOSTAT GLOBAL_REL_IOSTAT视图显示集群中所有节点上磁盘读写统计信息的总和。其各字段的名称与GS_REL_IOSTAT视图相同,但含义为各节点上GS_REL_IOSTAT视图同名字段的数值之和。 表1 GLOBAL_REL_IOSTAT字段
SCHEMA对象设计规范 建议2.7 不在其他USER的私有SCHEMA下创建对象 私有SCHEMA是指创建USER时自带的同名SCHEMA,该SCHEMA为该USER私有。 违反规则的影响: 在其他用户私有SCHEMA下创建对象,对象权限不受创建者控制,OWNER也非创建者。 方案建议:
VIEW对象设计规范 建议2.16 视图的嵌套需避免超过三层 违反规范的影响: 视图嵌套过深导致执行计划不稳定、耗时不稳定。 视图依赖的对象重建风险高,锁冲突发生概率增大。 方案建议: 创建视图直接基于物理表查询,不建议嵌套视图。 父主题: GaussDB(DWS)对象设计规范
使用Plan Hint进行调优 Plan Hint调优概述 Join顺序的Hint Join方式的Hint 行数的Hint Stream方式的Hint Scan方式的Hint 子链接块名的hint 运行倾斜的hint 指定子查询不提升的hint 字典编码的hint 配置参数的hint
PG_CONSTRAINT PG_CONSTRAINT系统表存储表上的检查约束、主键、唯一约束和外键约束。 表1 PG_CONSTRAINT字段 名称 类型 描述 conname name 约束名称(不一定是唯一的)。 connamespace oid 包含约束的命名空间的OID。
GLOBAL_REL_IOSTAT GLOBAL_REL_IOSTAT视图显示集群中所有节点上磁盘读写统计信息的总和。其各字段的名称与GS_REL_IOSTAT视图相同,但含义为各节点上GS_REL_IOSTAT视图同名字段的数值之和。 表1 GLOBAL_REL_IOSTAT字段
PG_COMM_CLIENT_INFO PG_COMM_CLIENT_INFO视图存储单个节点客户端连接信息(DN上查询该视图显示CN连接DN的信息)。 表1 PG_COMM_CLIENT_INFO字段 名称 类型 描述 node_name text 当前节点的名称。 app text
PG_STAT_XACT_SYS_TABLES PG_STAT_XACT_SYS_TABLES视图显示命名空间中系统表的事务状态信息。 表1 PG_STAT_XACT_SYS_TABLES字段 名称 类型 描述 relid oid 表的OID。 schemaname name 此表的模式名。
PG_STATIO_USER_INDEXES PG_STATIO_USER_INDEXES视图显示命名空间中所有用户关系表索引的IO状态信息。 表1 PG_STATIO_USER_INDEXES字段 名称 类型 描述 relid oid 索引的表的OID。 indexrelid oid
PGXC_COMM_CLIENT_INFO PGXC_COMM_CLIENT_INFO视图存储所有节点客户端连接信息(DN上查询该视图显示CN连接DN的信息)。 表1 PGXC_COMM_CLIENT_INFO字段 名称 类型 描述 node_name text 当前节点的名称。
PGXC_WORKLOAD_SQL_COUNT PGXC_WORKLOAD_SQL_COUNT视图显示集群中所有CN节点上的Workload控制组内的SQL语句执行次数的统计信息,包括SELECT、UPDATE、INSERT、DELETE语句的执行次数统计,以及DDL、DML、D