概述
--------HINT---------------------
1、给优化器多出一种选择 种类: 单表 多表 子查询 整个SQL语句
2、HINT 指定表名不能带上所在SCHEMA名 如果有别名应该使用别名
3、HINT生效的范围仅限于本身所在的查询块(QUERY BLOCK) 如在查询块外则失效 除非指定查询块名称 full(@sel$1 t1) 或 full(t1@sel$1)
4、多个HINT中间用空格隔开 逗号等关键字会导致后面的HINT失效
-------------并行--------------
1、MPP(SHARED NOTHING) SMP(SHARED EVERYTHING)
2、能够并行的操作
并行查询(全表扫描 快速索引全扫描 分区索引范围扫描 全表扫描的表连接)
并行DDL (CREATE TABLE AS SELECT |CREATE INDEX| REBUILD INDEX| REBUILD INDEX PARTITION|MOVE/SPLIT/COALESCE/PARTITION ) 需注意操作后会导致对象的默认并行度变化
并行DML ALTER SESSION FORCE PARALLEL DML|ALTER SESSION ENABLE PARALLEL DML+HINT
仅修改并行度和加并行HINT时 不能并行DML 只有其中的SELECT能并行 伪并行
并行数据加载 SQL*LOADER DIRECT方式
并行备份与恢复 RMAN多通道
并行收集统计信息
3、并行流程 用户进程发起SQL - 数据库后台进程(QC)协调启动子进程(QS)-(QS)会分组并通过TABLE QUEUES(TQ)传递-(QS)返回结果给(QC)-(QC)作相应处理返回给用户
QC - PX COORDINATOR
QUERY SLAVE SET 至少1组 至多2组,可能并行子进程数是并行度的2倍
TABLE QUEUE类型 PRODUCER CONSUMER RANGER
数据传递方法 HASH BROADCAST PARTITION ORDER QC(RANDOM)
4、是否启用并行 根据PARALLEL_MIN_TIME_THRESHOLD决定
5、RAC环境 并行可跨节点
6、ORACLE自身的并行可能存在各种未知bug 可通过前台应用手工分割(按地区 年度 。。) 并行执行
最后
以上就是超帅期待为你收集整理的oracle hint 和 并行的全部内容,希望文章能够帮你解决oracle hint 和 并行所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复