检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
案例:调整中间表存储方式 在GaussDB(DWS)中行存表使用行执行引擎,列存表使用列执行引擎。如果一个SQL语句涉及的表既有行存表又有列存表,系统会自动选择行执行引擎。由于列执行引擎的性能(除indexscan相关的算子)比行执行引擎性能要好很多,因此一般建议使用列存表。特别
错误捕获语句 缺省时,当PL/SQL函数执行过程中发生错误时退出函数执行,并且周围的事务也会回滚。可以用一个带有EXCEPTION子句的BEGIN块捕获错误并且从中恢复。其语法是正常的BEGIN块语法的一个扩展: 1 2 3 4 5 6 7 8 9 10 11 12
步骤6:调优表性能评估 经过测试,得到了优化表前后的加载时间、存储占用情况和查询执行时间,并记录了结果,针对结果进行对比分析。 下表显示了本次实践所用集群的示例结果。您的结果会有所不同,但应该显示出相似的性能提升。 基准 优化前 优化后 改变 百分比 加载时间(11张表) 341584ms
PV_MATVIEW_DETAIL PV_MATVIEW_DETAIL视图显示物化视图的具体信息。该视图仅9.1.0 200及以上集群版本支持。 表1 PV_MATVIEW_DETAIL字段 名称 类型 描述 matview text 物化视图名。 baserel text 基表名。
PGXC_DISK_CACHE_PATH_INFO PGXC_DISK_CACHE_PATH_INFO视图记录了文件缓存所在的硬盘的信息。该系统视图仅9.1.0及以上集群版本支持。 表1 PGXC_DISK_CACHE_PATH_INFO字段 名称 类型 描述 path_name
动态调用存储过程 动态调用存储过程必须使用匿名的语句块将存储过程或语句块包在里面,使用EXECUTE IMMEDIATE…USING语句后面带IN、OUT来输入、输出参数。 语法 语法请参见图1。 图1 call_procedure::= using_clause子句的语法参见图2。
文本检索操作符 @@ 描述:tsvector类型的词汇与tsquery类型的词汇是否匹配 示例: 1 2 3 4 5 SELECT to_tsvector('fat cats ate rats') @@ to_tsquery('cat & rat') AS RESULT; result
PGXC_GET_STAT_ALL_PARTITIONS PGXC_GET_STAT_ALL_PARTITIONS视图获取各分区表分区的插入、更新、删除以及脏页率信息。 该视图的统计信息依赖于ANALYZE,为获取最准确的信息请先对分区表进行ANALYZE。 8.2.0.100及
案例:改写SQL排除剪枝干扰 分区表查询中表达式一般不是单纯的分区键,而是包含分区键的表达式的Filter条件,这种类型的Filter条件是不能用来剪枝的。 优化前 t_ddw_f10_op_cust_asset_mon为分区表,分区键为year_mth,此字段是由年月两个值拼接而成的整数。
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。
PGXC_TABLE_CHANGE_STAT PGXC_TABLE_CHANGE_STAT视图提供集群所有CN节点上当前数据库所有表的变更情况。除在每一行前面增加name类型的nodename字段外,其余字段的名称、类型和顺序与GS_TABLE_CHANGE_STAT视图相同。 表1
TABLESPACE对象设计规范 规则2.8 禁止自定义TABLESPACE表空间 违反规则的影响: 分布式场景建表使用自定义表空间,导致表数据无法按照各DN分布式存储,出现存储倾斜。 方案建议: 创建表对象使用内置默认表空间。 父主题: GaussDB(DWS)对象设计规范
案例:增加JOIN列非空条件 若Join列上的NULL值较多,可以加上is not null过滤条件,以实现数据的提前过滤,提高Join效率。 优化前 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
GS_CLUSTER_RESOURCE_INFO GS_CLUSTER_RESOURCE_INFO视图显示的是所有DN资源的汇总信息。 表1 GS_CLUSTER_RESOURCE_INFO字段 名称 类型 描述 min_mem_util integer DN最小内存使用率。 max_mem_util
GaussDB(DWS) PL/pgSQL使用规则 总体开发原则 应完全按照设计文档进行开发。 程序模块应做到高内聚低耦合。 应有正确、全面的故障对策。 程序编写应做到结构合理,条理清晰。 程序名称命名应按照统一的命名规则进行命名。 应充分考虑程序的运行效率,包括程序的执行效率和
PGXC_GLOBAL_TEMP_ATTACHED_PIDS 查看全局临时表在CN上占有资源的会话信息。该视图仅8.2.1.220及以上集群版本支持。 表1 PG_GLOBAL_TEMP_ATTACHED_PIDS字段 名称 类型 描述 nodename name 节点名。 schemaname
PGXC_OBS_IO_SCHEDULER_STATS PGXC_OBS_IO_SCHEDULER_STATS视图显示OBS IO Scheduler读/写请求相关的近期实时统计信息。该系统视图仅9.1.0及以上版本支持。 表1 PGXC_OBS_IO_SCHEDULER_STATS字段
GLOBAL_COLUMN_TABLE_IO_STAT GLOBAL_COLUMN_TABLE_IO_STAT视图提供当前数据库所有列存表的IO统计数据。其字段的名称、类型和顺序与GS_COLUMN_TABLE_IO_STAT视图相同。各统计字段为所有节点对应字段之和。 表1 G
步骤4:创建新表并加载数据 为每张表选择了存储方式、压缩级别、分布方式和分布列后,使用这些属性创建表并重新加载数据。以便对比表设计前后的系统性能。 执行CREATE TABLE创建表前,删除前面创建的表。 1 2 3 4 5 6 7 8 9 10 11 12 13