FETCH 功能描述 FETCH通过已创建的游标来检索数据。 每个游标都有一个供FETCH使用的关联位置。游标的关联位置可以在查询结果的第一行之前,或者在结果中的任意行,或者在结果的最后一行之后: 游标刚创建完之后,关联位置在第一行之前。 在抓取了一些移动行之后,关联位置在检索到的最后一行上
FETCH 功能描述 FETCH通过已创建的游标来检索数据。 每个游标都有一个供FETCH使用的关联位置。游标的关联位置可以在查询结果的第一行之前,或者在结果中的任意行,或者在结果的最后一行之后: 游标刚创建完之后,关联位置在第一行之前。 在抓取了一些移动行之后,关联位置在检索到的最后一行上
表设计规范 【规则】视图不建议嵌套。 如果视图编写时使用了通配符,当被调用的视图新增或删除列时,视图将发生错误;同时,视图嵌套可能因无法使用索引而导致执行效率低下,尽量使用带有索引的基表而不是视图上做关联操作。 【说明】将表的扫描压力均匀分散在各个DN上。避免扫描压力集中在部分DN
优化器方法配置 这些配置参数提供了影响查询优化器选择查询规划的原始方法。如果优化器为特定的查询选择的缺省规划并不是最优的,可以通过使用这些配置参数强制优化器选择一个不同的规划来临时解决这个问题。更好的方法包括调节优化器开销常量、手动运行ANALYZE、增加配置参数default_statistics_target
Limit 算子说明 Limit算子限定了执行结果的输出记录数。如果增加了Limit算子,那么不是所有的行都会被检索到。 典型场景 使用带有Limit关键字的查询语句。 示例 示例:使用带有limit关键字的查询语句。 --数据准备。 gaussdb=# DROP TABLE IF
使用Plan Hint进行调优 Plan Hint调优概述 指定Hint所处于的查询块Queryblock Hint可以指定表的查询块名和schema名 Join顺序的Hint Join方式的Hint 行数的Hint Stream方式的Hint Scan方式的Hint 子链接块名的
函数/存储过程设计规范 【规则】禁止使用存储过程、触发器等实现业务逻辑,应该将这些逻辑都放到业务服务器上处理,避免对数据库产生逻辑依赖。 【规则】业务的数据库升级脚本中,禁止使用存储过程实现升级逻辑。 【规则】仅创建对固定入参有固定返回值的函数,函数必须设为IMMUTABLE和SHIPPABLE
函数/存储过程设计规范 【规则】禁止使用存储过程、触发器等实现业务逻辑,应该将这些逻辑都放到业务服务器上处理,避免对数据库产生逻辑依赖。 【规则】业务的数据库升级脚本中,禁止使用存储过程实现升级逻辑。 【规则】仅创建对固定入参有固定返回值的函数,函数必须设为IMMUTABLE和SHIPPABLE
优化器方法配置 这些配置参数提供了影响查询优化器选择查询规划的原始方法。如果优化器为特定的查询选择的缺省规划并不是最优的,可以通过使用这些配置参数强制优化器选择一个不同的规划来临时解决这个问题。更好的方法包括调节优化器开销常量、手动运行ANALYZE、增加配置参数default_statistics_target
VACUUM系统函数 GS_STAT_PROGRESS_VACUUM(pid integer) 描述:根据vacuum线程pid查看vacuum的执行进度,支持autovacuum和手动vacuum。 参数:如GS_STAT_PROGRESS_VACUUM入参和返回值列表所示。 表
VACUUM系统函数 GS_STAT_PROGRESS_VACUUM(pid integer) 描述:根据vacuum线程pid查看vacuum的执行进度,支持autovacuum和手动vacuum。 参数:如表1所示。 表1 GS_STAT_PROGRESS_VACUUM入参和返回值列表
非SMP场景下的Partition-wise Join 在非SMP场景下,Partition-wise Join的路径是基于规则生成的,即只要符合条件,即可生成Partition-wise Join路径,而无需对比路径代价。其开关为GUC参数enable_partitionwise
基于开销的清理延迟 这个特性的目的是允许管理员减少VACUUM和ANALYZE语句在并发活动的数据库上的I/O影响。比如,像VACUUM和ANALYZE这样的维护语句并不需要迅速完成,并且不希望它们严重干扰系统执行其他的数据库操作。基于开销的清理延迟为管理员提供了一个实现这个目的手段
基于开销的清理延迟 这个特性的目的是允许管理员减少VACUUM和ANALYZE语句在并发活动的数据库上的I/O影响。比如,像VACUUM和ANALYZE这样的维护语句并不需要迅速完成,并且不希望他们严重干扰系统执行其他的数据库操作。基于开销的清理延迟为管理员提供了一个实现这个目的手段
MergeAppend 算子说明 MergeAppend用于多个有序关系集合的追加,操作类似于Append,只是通过归并的方式对有序关系的集合进行加速运算。MergeAppend以保留排序顺序的方式对子查询结果进行组合,可用于组合表分区中已排序的行。因此,与普通Append不同,MergeAppend
ALTER TABLESPACE 功能描述 修改表空间的属性。 注意事项 当前版本禁止使用ALTER TABLESPACE语法。 只有表空间的所有者或者被授予了表空间ALTER权限的用户有权限执行ALTER TABLESPACE命令,系统管理员默认拥有此权限。但要修改表空间的所有者
SUMMARY_STATEMENT 获得数据库主节点的执行语句(归一化SQL)的全量信息。 表1 SUMMARY_STATEMENT字段 名称 类型 描述 node_name name 节点名称。 node_id integer 节点的ID。 user_name name 用户名称
ALTER TABLESPACE 功能描述 修改表空间的属性。 注意事项 当前版本禁止使用ALTER TABLESPACE语法。 只有表空间的所有者或者被授予了表空间ALTER权限的用户有权限执行ALTER TABLESPACE命令,系统管理员默认拥有此权限。但要修改表空间的所有者
基于开销的清理延迟 这个特性的目的是允许管理员减少VACUUM和ANALYZE语句在并发活动的数据库上的I/O影响。比如,像VACUUM和ANALYZE这样并不需要迅速完成的维护语句,减少其对系统执行其它数据库操作的干扰。基于开销的清理延迟为管理员提供了一个实现这个目的手段。 有些清理操作会持有关键的锁
基于开销的清理延迟 这个特性的目的是允许管理员减少VACUUM和ANALYZE语句在并发活动的数据库上的I/O影响。比如,像VACUUM和ANALYZE这样并不需要迅速完成的维护语句,减少其对系统执行其它数据库操作的干扰。基于开销的清理延迟为管理员提供了一个实现这个目的手段。 有些清理操作会持有关键的锁