检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
算子级调优 算子级调优介绍 一个查询语句要经过多个算子步骤才会输出最终的结果。由于个别算子耗时过长导致整体查询性能下降的情况比较常见。这些算子是整个查询的瓶颈算子。通用的优化手段是EXPLAIN ANALYZE/PERFORMANCE命令查看执行过程的瓶颈算子,然后进行针对性优化。
案例:建立合适的索引 现象描述 查询与销售部所有员工的信息: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 --建表 CREATE TABLE staffs (staff_id NUMBER(6)
DATABASE LINK GS_DB_LINKS V$DBLINK 父主题: 系统视图
物化视图 GS_MATVIEWS 父主题: 系统视图
GLOBAL_STAT_ALL_TABLES 显示各节点中每个表(包括TOAST表)的状态信息(在CN节点使用,每个表在每个节点下的状态信息不汇总),如表1所示。 表1 GLOBAL_STAT_ALL_TABLES字段 名称 类型 描述 node_name name 节点名称。 relid
SUMMARY_STAT_ALL_INDEXES 显示集群内数据库各节点的每个索引的访问统计信息(在CN节点使用。对每个节点索引的访问统计信息汇总求和,其中timestamp类型字段不求和,仅取所有节点中该字段最新值),如表1所示。 表1 SUMMARY_STAT_ALL_INDEXES字段
STAT_DATABASE_CONFLICTS 显示数据库当前节点冲突状态的统计信息,如表1所示。 表1 STAT_DATABASE_CONFLICTS字段 名称 类型 描述 datid oid 数据库标识。 datname name 数据库名称。 confl_tablespace
STAT_XACT_ALL_TABLES 显示当前节点Schema中所有普通表和toast表的事务状态信息,如表1所示。 表1 STAT_XACT_ALL_TABLES字段 名称 类型 描述 relid oid 表的OID。 schemaname name 该表所在的Schema名。
STAT_XACT_SYS_TABLES 显示当前节点Schema中系统表的事务状态信息,如表1所示。 表1 STAT_XACT_SYS_TABLES字段 名称 类型 描述 relid oid 表的OID。 schemaname name 该表所在的Schema名。 relname
SUMMARY_STAT_BAD_BLOCK 获得集群内各节点的表、索引等文件的读取失败信息汇总求和结果(在CN节点使用。对不同DN的统计信息汇总求和,first_time取最早的时间,last_time取最新的时间),如表1所示。 表1 SUMMARY_STAT_BAD_BLOCK字段
STAT_USER_FUNCTIONS 显示当前节点的Schema中用户自定义函数(函数语言为非内部语言)的统计信息,如表1所示。 表1 STAT_USER_FUNCTIONS字段 名称 类型 描述 funcid oid 函数标识。 schemaname name Schema的名称。
GLOBAL_SESSION_STAT 各节点上以会话线程或AutoVacuum线程为单位,统计会话状态信息,如表1所示。 表1 GLOBAL_SESSION_STAT字段 名称 类型 描述 node_name name 节点名称。 sessid text 线程启动时间+线程标识。
OLTP表压缩 GS_ADM_ILMDATAMOVEMENTPOLICIES GS_ADM_ILMOBJECTS GS_ADM_ILMPOLICIES GS_ADM_ILMEVALUATIONDETAILS GS_ADM_ILMPARAMETERS GS_ADM_ILMRESULTS
virtualtransaction text 持有此锁或者在等待此锁的事务的虚拟ID。 pid bigint 持有或者等待这个锁的服务器线程的逻辑ID。如果锁是被一个预备事务持有的,则为NULL。 sessionid bigint 持有或者等待这个锁的会话ID。如果锁是被一个预备事务持有的,则为NULL。
virtualtransaction text 持有此锁或者在等待此锁的事务的虚拟ID。 pid bigint 持有或者等待这个锁的服务器线程的逻辑ID。如果锁是被一个预备事务持有的,则为NULL。 sessionid bigint 持有或者等待这个锁的会话ID。如果锁是被一个预备事务持有的,则为NULL。
paramTypes[]通过OID指定要分配给参数符号的数据类型。如果paramTypes为NULL ,或者数组中的任何特定元素为零,服务器将按照对非类型化字面字符串的相同方式为参数符号分配数据类型。另外,查询可以使用数字高于nParams的参数符号;还将推断这些符号的数据类型。
virtualtransaction text 持有此锁或者在等待此锁的事务的虚拟ID。 pid bigint 持有或者等待这个锁的服务器线程的逻辑ID。如果锁是被一个预备事务持有的,则为NULL。 sessionid bigint 持有或者等待这个锁的会话ID。如果锁是被一个预备事务持有的,则为NULL。
CREATE RULE 功能描述 定义一个新的重写规则。 注意事项 为了在表上定义或修改规则,你必须是该表的拥有者。 如果在同一个表定义了多个相同类型的规则,则按规则的名称字母顺序触发它们。 在视图上用于INSERT、UPDATE、DELETE的规则中可以添加RETURNING子
L)paramTypes[]通过OID指定要分配给参数符号的数据类型。如果paramTypes为NULL,或者数组中的任何特定元素为零,服务器将按照对非类型化字面字符串的相同方式为参数符号分配数据类型。另外,查询可以使用数字高于nParams的参数符号,还将推断这些符号的数据类型。
),paramTypes[]通过OID指定要分配给参数符号的数据类型。如果paramTypes为NULL,或者数组中的任何特定元素为零,服务器将按照对非类型化字面字符串的相同方式为参数符号分配数据类型。另外,查询可以使用数字高于nParams的参数符号,还将推断这些符号的数据类型。