检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
条件 本章节描述常见的条件兼容项,包含比较条件、浮点条件、逻辑条件、模型条件、多集合条件、模式匹配条件、NULL值条件、XML条件、SQL/JSON条件、复合条件、BETWEEN条件、EXISTS条件、IN条件、IS OF TYPE条件,如表1所示。 表1 条件 序号 Oracle
SQL调优指南 SQL调优的唯一目的是“资源利用最大化”,即CPU、内存、磁盘IO、网络IO四种资源利用最大化。所有调优手段都是围绕资源使用开展的。所谓资源利用最大化是指SQL语句尽量高效,节省资源开销,以最小的代价实现最大的效益。比如做典型点查询的时候,可以用seqscan+filter
检查隐式转换的性能问题 在某些场景下,数据类型的隐式转换可能会导致潜在的性能问题。请看如下的场景: SET enable_fast_query_shipping = off; CREATE TABLE t1(c1 VARCHAR, c2 VARCHAR); CREATE INDEX
案例:调整分布键 现象描述 某局点测试过程中EXPLAIN ANALYZE后有如下情况: 从执行信息上比较明确的可以看出HashJoin是整个计划的性能瓶颈点,并且从HashJoin的执行时间信息[2657.406,93339.924](数值的具体含义请参见SQL执行计划详解),上可以看出
分布式场景下不支持plan trace特性,所以在分布式下该视图中无数据。 表1 GS_MY_PLAN_TRACE字段 名称 类型 描述 query_id text 当前请求的唯一id。
GS_SQL_PATCH GS_SQL_PATCH系统表存储所有SQL_PATCH的状态信息,当前分布式下暂不支持该功能。 表1 GS_SQL_PATCH字段 名称 类型 描述 patch_name name PATCH名称。
分布式暂不支持全密态内存解密逃生通道。 M-Compatibility暂不支持全密态数据库。 PATTERN 很多\d命令都可以用一个PATTERN参数来指定要被显示的对象名称。在最简单的情况下,PATTERN正好就是该对象的准确名称。
从上面描述可以看出统计信息是查询优化的核心输入,准确的统计信息将帮助优化器选择最合适的查询规划,一般来说通过ANALYZE语法收集整个表或者表的若干个字段的统计信息,周期性地运行ANALYZE,或者在对表的大部分内容做了更改之后马上运行它是个好习惯。
因此,对分布式系统而言,这种标识符比序列能更好的保证唯一性,因为序列只能在单一数据库中保证是唯一。
从上面描述可以看出统计信息是查询优化的核心输入,准确的统计信息将帮助优化器选择最合适的查询规划,一般来说我们通过analyze语法收集整个表或者表的若干个字段的统计信息,周期性地运行ANALYZE,或者在对表的大部分内容做了更改之后马上运行它是个好习惯。
分布式场景下不支持plan trace特性,所以在分布式下该视图中无数据。 表1 GS_PLAN_TRACE字段 名称 类型 描述 query_id text 当前请求的唯一id。
事务提交 隐式事务。单条DML/DDL语句自动触发隐式事务,这种事务没有显式的事务块控制语句(START TRANSACTION/BEGIN/COMMIT/END),DML语句结束后自动提交。 显式事务。显式事务由显式的START TRANSACTION/BEGIN语句控制事务的开始
注释 表1 comment 序号 Oracle数据库 GaussDB数据库 差异 1 斜杠和星号(/*) 支持 - 2 两个连字符(--) 支持 - 3 COMMENT命令 支持 - 4 HINT 支持,有差异 GaussDB不支持'--+'hint形式。 具体信息请参见《开发指南
动态SQL 表1 动态SQL语句执行方式 序号 Oracle数据库 GaussDB数据库 差异 1 EXECUTE IMMEDIATE 支持,有差异 GaussDB通过dynamic_sql_compat参数控制同名变量是否读取同一参数,并且检查调用存储过程时绑定参数出入参类型是否与语句参数类型一致
Trigger 表1 trigger类型 序号 Oracle数据库 GaussDB数据库 差异 1 DML TRIGGER 支持,有差异 GaussDB不支持Compound DML Triggers。 2 SYSTEM TRIGGER 不支持 - 表2 create trigger
开发设计建议 开发设计建议概述 数据库对象命名 数据库对象设计 工具对接 SQL编写
最佳实践 SQL查询最佳实践 权限配置最佳实践 数据倾斜查询最佳实践
存储过程 存储过程 数据类型 数据类型转换 数组、集合和record 声明语法 基本语句 动态语句 控制语句 事务语句 其他语句 游标 高级包 Retry管理 PACKAGE 调试
自治事务 自治事务(Autonomous Transaction),在主事务执行过程中新启的独立的事务。自治事务的提交和回滚不会影响主事务已提交的数据,同时自治事务也不受主事务影响。 自治事务在存储过程、函数和匿名块中定义,用PRAGMA AUTONOMOUS_TRANSACTION
什么是OID? 答:对象标识符(OID,Object identifiers),是数据库对象的唯一标识,这个对象可以是数据库、表、索引、视图等等。 父主题: FAQ