HASH JOIN 散列连接 hash join是CBO 做大数据集连接时的常用方式。优化器扫描小表(或数据源),利用连接键(也就是根据连接字段计算hash 值)在内存中建立hash表,然后扫描大表,每读到一条记录就来探测hash表一次,找出与hash表匹配的行。当小表可以全部放入内存中,其成本接近 ...
分类:
数据库 时间:
2016-07-21 12:28:48
阅读次数:
201
1.关于关键字volatile 一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。就像大家更熟悉的const一样,volatile是一个类 ...
分类:
移动开发 时间:
2016-07-20 11:45:38
阅读次数:
261
版权声明:本文为博主原创文章,未经博主允许不得转载。 版权声明:本文为博主原创文章,未经博主允许不得转载。 目录(?)[+] 目录(?)[+] 操作环境:AIX +11g+PLSQL 包含以下内容: 1. SQL语句执行过程 2. 优化器及执行计划 3. 合理应用Hints 4. 索引及应用实例 5 ...
分类:
数据库 时间:
2016-07-20 01:15:25
阅读次数:
344
本文介绍Oracle 12c 推出的自适应连接方法(Adaptive Join Methods)和自适应并行分布方法(Adaptive Parallel Distribution Methods APDM)...
分类:
数据库 时间:
2016-07-10 18:41:27
阅读次数:
329
SQL优化技巧 1.选择最有效率的表名顺序(只在基于规则的优化器中有效): oracle的解析器按照从右到左的顺序处理 from 子句中的表名,from子句中写在最后的表(基础表 driving table)将被最先处理,在 from 子句中包含多个表的情况下, 你必须选择记录条数最少的表作为基础表 ...
分类:
数据库 时间:
2016-07-04 18:41:35
阅读次数:
247
最近看到有人私信我问了一些oracle sql的优化问题,分享一篇关于sql优化的文章,后面会多分享一些关于sql优化的文章
(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):
ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的...
分类:
数据库 时间:
2016-07-04 11:57:32
阅读次数:
209
本文主要介绍Oracle优化器的自适应游标共享(Adaptive Cursor Sharing)功能和处理流程。...
分类:
数据库 时间:
2016-07-03 19:50:21
阅读次数:
242
介绍 数据库维护统计信息的目的主要是为了优化器进行更好的执行优化,首先统计信息是建立在索引的基础上,如果表没有索引那么该表也就无统计信息。 系统如何收集统计信息 一、手动 1.执行Analyze table innodb和mysiam存储引擎都可以通过执行“Analyze table tablena ...
分类:
数据库 时间:
2016-07-01 11:34:53
阅读次数:
228
本文将介绍在11gR2的版本上推出的基数反馈(Cardinality Feedback 以后简称CFB)功能。...
分类:
数据库 时间:
2016-06-30 12:56:07
阅读次数:
466
1. IS NULL 与 IS NOT NULL
不能用null作索引,任何包含null值的列都将不会被包含在索引中。即使索引有多列这样的情况下,只要这些列中有一列含有null,该列就会从索引中排除。也就是说如果某列存在空值,即使对该列建索引也不会提高性能。
任何在where子句中使用is null或is not null的语句优化器是不允许使用索引的。
2. 联...
分类:
数据库 时间:
2016-06-28 12:59:40
阅读次数:
241