检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
SQLPrepare 功能描述 准备一个将要进行的SQL语句。 需要注意的是,ODBC发送准备好的语句不支持内核复用计划,会导致每次执行都需要重新生成计划,导致CPU占用率高。如果业务对计划复用有需求建议优先使用JDBC作为客户端。 原型 1 2 3 SQLRETURN SQLPrepare(SQLHSTMT
GS_SPM_SQL_EVOLUTION GS_SPM_SQL_EVOLUTION是SPM计划管理特性下的系统视图,当前该特性在分布式下不支持。该视图用于查看当前用户的计划演进结果信息,普通用户以上权限均可以访问该视图。 表1 GS_SPM_SQL_EVOLUTION字段 名称 类型
GS_SPM_EVOLUTION GS_SPM_EVOLUTION是SPM计划管理特性中的系统表,当前该特性在分布式中不支持。它用于存储计划演进结果的系统表,具备sysadmin权限的用户可以对该系统表进行读操作,但只有初始用户才可以对该系统表进行写的操作。 表1 GS_SPM_EVOLTOIN字段
案例:调整分布键 现象描述 某局点测试过程中EXPLAIN ANALYZE后有如下情况: 从执行信息上比较明确的可以看出HashJoin是整个计划的性能瓶颈点,并且从HashJoin的执行时间信息[2657.406,93339.924](数值的具体含义请参见SQL执行计划详解),上可以看出Ha
outline文本,可固定当前计划的一组Hint。 cost double precision 计划的总代价。 user oid 创建baseline的用户。 status integer baseline的状态,可选取值有: 0(UNACC):表示未接受的计划。 1(ACC):表示已经接受的计划。 2
关键字概述 执行计划中的主要关键字概述: 表访问方式 Seq Scan 全表顺序扫描。 Index Scan 优化器决定使用两步的规划:最底层的规划节点访问一个索引,找出匹配索引条件的行的位置,然后上层规划节点真实地从表中抓取出那些行。独立地抓取数据行比顺序地读取它们的开销高很多
性统计;在执行计划中体现是Aggregate关键字。 排序聚集:输入元组是已经排好序的,或分组键恰好是有序列,则可能会选择排序聚集;在执行计划中体现是GroupAggregate关键字。 哈希聚集:业务中目前涉及的大部分场景,以及数据无序情况下的聚集计算;在执行计划中体现是HashAggregate关键字。
SQLPrepare 功能描述 准备一个将要进行的SQL语句。 需要注意的是,ODBC发送准备好语句不支持内核复用计划,会导致每次执行都需要重新生成计划,导致CPU占用率高。如果业务对计划复用有需求,建议优先使用JDBC作为客户端。 原型 1 2 3 SQLRETURN SQLPrepare(SQLHSTMT
SQLPrepare 功能描述 准备一个将要进行的SQL语句。 需要注意的是,ODBC发送准备好的语句不支持内核复用计划,这会导致每次执行都需要重新生成计划,导致CPU占用率高。如果业务对计划复用有需求建议优先使用JDBC作为客户端。 原型 1 2 3 SQLRETURN SQLPrepare(SQLHSTMT
行策略时,有三种执行计划方式:生成下推语句计划、生成分布式执行计划、生成发送语句的分布式执行计划。 下推语句计划:指直接将完整的查询语句从CN发送到DN进行执行,然后将执行结果返回给CN。 分布式执行计划:指CN对查询语句进行编译和优化,生成计划树,再将计划树发送给DN进行执行,并在执行完毕后返回结果到CN。
案例:调整分布键 现象描述 某局点测试过程中EXPLAIN ANALYZE后有如下情况: 从执行信息上比较明确的可以看出HashJoin是整个计划的性能瓶颈点,并且从HashJoin的执行时间信息[2657.406,93339.924](数值的具体含义请参见SQL执行计划详解),上可以看出Ha
用是将查询结果按照指定的排序规则进行排序,然后返回有序的结果集。 典型场景 当查询语句中包含order by子句时,GaussDB会在执行计划中选择sort算子来进行排序操作。 采用MergeJoin来进行连接操作。 示例 示例:查询语句中包含ORDER BY子句。 -- 数据准备。
GS_SPM_EVOLUTION GS_SPM_EVOLUTION系统表是用于存储计划演进结果的系统表,具备sysadmin权限的用户可以对该系统表进行读操作,但只有初始用户才可以对该系统表进行写的操作。 表1 GS_SPM_EVOLTOIN字段 名称 类型 描述 sql_namespace
GS_SPM_SQL_PARAM GS_SPM_SQL_PARAM是SPM计划管理特性下的系统视图,当前该特性在分布式下不支持。该视图用于查看当前用户的SQL参数信息,普通用户以上权限均可以访问该视图。 表1 GS_SPM_SQL_PARAM字段 名称 类型 描述 sql_namespace
outline文本,可固定当前计划的一组Hint。 status integer 计划的状态。取值范围: 0(UNACC):表示未接受的计划。 1(ACC):表示已经接受的计划。 2(FIXED):一种特殊的ACC状态的计划,计划的匹配优先级高于ACC状态的计划。 gplan boolean
Append 算子说明 Append用于多个关系集合的追加,同时处理包含一个或多个子计划的链表。 典型场景 带UNION的SQL语句场景。 带UNION ALL的SQL语句场景。 示例 示例1:带UNION的SQL语句场景。 -- 数据准备。 gaussdb=# CREATE TABLE
案例:使用DN Gather减少计划中的Stream节点 DN Gather用来把分布式计划中的Stream节点去掉,把数据发送到一个节点进行计算,这样可以减少分布式计划执行时数据重分布的代价,从而提升单个查询效率以及系统整体的吞吐能力。不过DN Gather面向的是TP的小数据
行策略时,有三种执行计划方式:生成下推语句计划、生成分布式执行计划、生成发送语句的分布式执行计划。 下推语句计划:指直接将完整的查询语句从CN发送到DN进行执行,然后将执行结果返回给CN。 分布式执行计划:指CN对查询语句进行编译和优化,生成计划树,再将计划树发送给DN进行执行,并在执行完毕后返回结果到CN。
GS_SPM_SQL GS_SPM_SQL是SPM计划管理特性中的系统表,当前该特性在分布式中不支持。它用于存储SPM SQL相关信息的系统表,具备sysadmin权限的用户可以对该系统表进行读操作,但只有初始用户才可以对该系统表进行写操作。 表1 GS_SPM_SQL字段 名称
案例:调整分布键 现象描述 某局点测试过程中EXPLAIN ANALYZE后有如下情况: 从执行信息上比较明确的可以看出HashJoin是整个计划的性能瓶颈点,并且从HashJoin的执行时间信息[2657.406,93339.924](数值的具体含义请参见SQL执行计划详解),上可以看出Ha