检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
Cte Scan 算子说明 CTE(Common Table Expression)是一种临时表达式,Cte Scan用于扫描CTE表达式生成的临时表。 在GaussDB中,可以通过使用with关键字来指定一个或多个CTE,然后在后续的查询中多次使用。 典型场景 当一个查询结果集
Foreign Scan 算子说明 在GaussDB中,Foreign Scan是一种用于访问外部数据源的扫描器。它可以将外部数据源中的数据作为关系型数据库中的表来处理,从而实现对外部数据源的查询和操作。在GaussDB中,Foreign Scan可以通过扩展API来实现。用户可
背景 为强化自研关系型数据库产品品牌,进一步提升品牌定位,华为云计划对数据库品牌GaussDB进行调整。 影响 原“GaussDB(for openGauss)”更名为GaussDB,相关URL变更请参考GaussDB华为云帮助中心地址切换。 由于更名涉及内容较多,时间较长,更名期间,原“GaussDB(for
GS_SPM_SQL GS_SPM_SQL系统表是用于存储SPM SQL相关信息的系统表,具备sysadmin权限的用户可以对该系统表进行读操作,但只有初始用户才可以对该系统表进行写操作。 表1 GS_SPM_SQL字段 名称 类型 描述 sql_namespace oid schema
GS_SPM_BASELINE GS_SPM_BASELINE是SPM计划管理特性中的系统表,当前该特性在分布式中不支持。它用于存储baseline相关信息的系统表,具备sysadmin权限的用户可以对该系统表进行读操作,但只有初始用户才可以对该系统表进行写操作。 表1 GS_SPM_BASELINE字段
Stream 算子说明 Stream是GaussDB的SMP(对称多处理)中使用的一种技术,SMP采用多线程并行算法,在算子内并行执行,充分利用现代服务器单机多核的特点,提高执行效率。SMP分为计划生成与执行两部分: SMP计划生成。一阶段计划生成:在路径生成阶段,加入并行路径,
GS_SPM_SQL GS_SPM_SQL是SPM计划管理特性中的系统表,当前该特性在分布式中不支持。它用于存储SPM SQL相关信息的系统表,具备sysadmin权限的用户可以对该系统表进行读操作,但只有初始用户才可以对该系统表进行写操作。 表1 GS_SPM_SQL字段 名称
GS_SPM_PARAM GS_SPM_PARAM是SPM计划管理特性中的系统表,当前该特性在分布式中不支持。它用于存储SQL参数相关信息的系统表,每个SQL只存储一组参数,具备sysadmin权限的用户可以对该系统表进行读操作,但只有初始用户才可以对该系统表进行写的操作。 表1
LockRows 算子说明 LockRows算子用于锁定查询结果集中的行,以防止其他事务对这些行进行修改或删除。 典型场景 事务中使用SELECT ... FOR SHARE/UPDATE锁定行,防止其他事务对这些行进行修改或删除。 使用FOR SHARE锁定行时,当前事务和其他事务都无法修改或删除锁定行。
Rownum 算子说明 Rownum算子会生成伪列,它返回一个数字,表示从查询中获取结果的行编号。第一行的Rownum为1。可以使用Rownum关键字对查询结果的行编号进行条件过滤。通常出现在Rownum子句里。 使用Rownum有一定的约束条件: Rownum不可作为别名,以免SQL语句出现歧义。
语句下推调优 语句下推介绍 目前,GaussDB优化器在分布式框架下制定语句的执行策略时,有三种执行计划方式:生成下推语句计划、生成分布式执行计划、生成发送语句的分布式执行计划。 下推语句计划:指直接将查询语句从CN发送到DN进行执行,然后将执行结果返回给CN。 分布式执行计划:
语句下推调优 语句下推介绍 目前,GaussDB优化器在分布式框架下制定语句的执行策略时,有三种执行计划方式:生成下推语句计划、生成分布式执行计划、生成发送语句的分布式执行计划。 下推语句计划:指直接将完整的查询语句从CN发送到DN进行执行,然后将执行结果返回给CN。 分布式执行
GS_SPM_SQL_EVOLUTION GS_SPM_SQL_EVOLUTION是SPM计划管理特性下的系统视图,当前该特性在分布式下不支持。该视图用于查看当前用户的计划演进结果信息,普通用户以上权限均可以访问该视图。 表1 GS_SPM_SQL_EVOLUTION字段 名称 类型
案例:使用DN Gather减少计划中的Stream节点 DN Gather用来把分布式计划中的Stream节点去掉,把数据发送到一个节点进行计算,这样可以减少分布式计划执行时数据重分布的代价,从而提升单个查询效率以及系统整体的吞吐能力。不过DN Gather面向的是TP的小数据
GS_SPM_ID_HASH_JOIN GS_SPM_ID_HASH_JOIN系统表是用于存储unique_sql_id和sql_hash关系的系统表,具备sysadmin权限的用户可以对该系统表进行读操作,但只有初始用户才可以对该系统表进行写的操作。 表1 GS_SPM_ID_HASH_JOIN字段
Values Scan 算子说明 读取 VALUES 子句中指定的值列表,并将其作为一组虚拟行返回给查询计划器。这些虚拟行可以被其他扫描器或操作符使用,例如 HashJoin 或 MergeJoin。 典型场景 该算子提供了一种快速且简便的方法来指定一组值,无需从表中读取数据。这
WorkTable Scan 算子说明 WorkTable Scan是一种基于内存的查询优化技术,它可以将查询结果缓存在内存中,以提高查询性能。当GaussDB执行一个查询语句时,它会将查询结果存储在一个临时表中,然后使用WorkTable Scan来扫描这个临时表,以获取查询结果。WorkTable
GS_SPM_SQL_BASELINE GS_SPM_SQL_BASELINE是用于查看当前用户baseline信息的视图,普通用户以上权限均可以访问该视图。 表1 GS_SPM_SQL_BASELINE字段 名称 类型 描述 sql_namespace oid Schema的oid。
Tid Scan 算子说明 行号扫描,该算子主要利用行号(ctid)过滤元组并返回。ASTORE场景下,数据按行存储在HEAP PAGE中,在B-tree 索引中除了存储字段的value,还会存储对应的行号,因此GaussDB中支持通过行号进行快速检索。 行号的写法为: (pag
Hash Join 算子说明 哈希连接(Hash Join)是一种高效的连接方法,它依赖于哈希技术。在进行哈希连接时,GaussDB会先选取两个表中的一个(通常是小表),接下来根据连接条件,建立一个哈希表。哈希表的键是小表的连接字段,值是小表的其他字段。然后,对于大表中的每一行,