[转帖]ORACLE 并行(PARALLEL)实现方式及优先级
http://blog.itpub.net/25542870/viewspace-2120924/
一、 Parallel query
默认情况下session 是ENABLE状态
1. 实现方式
1 Alter session force parallel query;
2 Alter table tab1 parallel n;
3 Hist方式
2. 并行度设置
Alter table tab1 parallel n;
Select /*+parallel(tab n)*/ from tab;
Alter session force parallel query parallel n;
如果没有设置将执行默认并行度
3. 默认并行度
单实例 = PARALLEL_THREADS_PER_CPU x CPU_COUNT
RAC = PARALLEL_THREADS_PER_CPU x CPU_COUNT x INSTANCE_COUNT
SQL> show parameter parallel
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
fast_start_parallel_rollback string LOW
parallel_adaptive_multi_user boolean TRUE
parallel_automatic_tuning boolean FALSE
parallel_degree_limit string CPU
parallel_degree_policy string MANUAL
parallel_execution_message_size integer 16384
parallel_force_local boolean FALSE
parallel_instance_group string
parallel_io_cap_enabled boolean FALSE
parallel_max_servers integer 970
parallel_min_percent integer 0
parallel_min_servers integer 0
parallel_min_time_threshold string AUTO
parallel_server boolean FALSE
parallel_server_instances integer 1
parallel_servers_target integer 768
parallel_threads_per_cpu integer 2
recovery_parallelism integer 0
SQL> show parameter cpu
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
cpu_count integer 48
parallel_threads_per_cpu integer 2
resource_manager_cpu_allocation integer 48
SQL> show parameter instance
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
active_instance_count integer
cluster_database_instances integer 1
instance_groups string
instance_name string cnups1u
instance_number integer 0
instance_type string RDBMS
open_links_per_instance integer 4
parallel_instance_group string
parallel_server_instances integer 1
新创建表默认并行度是1
SQL> create table tab_3 as select * from dba_objects;
Table created.
SQL> select table_name,degree from user_tables;
TABLE_NAME DEGREE
------------------------------ ----------
TAB_3 1
4. 优先级(并行度覆盖)
官方说明
If you are sure you want to execute in parallel and want to avoid setting the DOP for a table or modifying the queries involved, you can force parallelism with the following statement:
ALTER SESSION FORCE PARALLEL QUERY;
All subsequent queries are executed in parallel provided no restrictions are violated. You can also force DML and DDL statements. This clause overrides any parallel clause specified in subsequent statements in the session, but is overridden by a parallel hint.
In typical OLTP environments, for example, the tables are not set parallel, but nightly batch scripts may want to collect data from these tables in parallel. By setting the DOP in the session, the user avoids altering each table in parallel and then altering it back to serial when finished.
Hint > session > object
二、 Parallel DML (INSERT, UPDATE, DELETE, and MERGE)
默认情况下session 是DISBALE状态
只有再使用(Alter session force parallel DML;
或者Alter session enable parallel DML)才可以使用parallel并行
1. 实现方式
Alter session force parallel DML;
Alter table tab1 parallel n;
Hist 方式
2. 并行度设置
Alter table tab1 parallel n;
Alter session force parallel DML parallel n;
UPDATE /*+ PARALLEL(tab1,4) */ tbl_2 SET c1=c1+1;
INSERT /*+ PARALLEL(tbl_ins,2) */ INTO tbl_ins
SELECT /*+ PARALLEL(tbl_sel,4) */ * FROM tbl_sel;
DELETE /*+ PARALLEL (t1, 2) */ FROM t1
如果没有设置将执行默认并行度
3. 优先级(并行度覆盖)
Hint > session > object
三、 Parallel DDL
支持的操作
非分区表
CREATE INDEX
CREATE TABLE ... AS SELECT
ALTER INDEX ... REBUILD
分区表
CREATE INDEX
CREATE TABLE ... AS SELECT
ALTER TABLE ... [MOVE|SPLIT|COALESCE] PARTITION
ALTER INDEX ... [REBUILD|SPLIT] PARTITION
默认情况下session 是ENABLE状态
1. 实现方式
ALTER SESSION FORCE PARALLEL DDL
PARALLEL clause
2. 优先级(并行度覆盖)
Hint > session
3. 并行度设置
ALTER SESSION FORCE PARALLEL DDL parallel 10;<span "="">
CREATE INDEX ….parallel 10;
ALTER INDEX ... REBUILD parallel 10;
ALTER INDEX ... MOVE PARTITION parallel 10;
ALTER INDEX ...SPLIT PARTITION parallel 10;
[转帖]ORACLE 并行(PARALLEL)实现方式及优先级的更多相关文章
- oracle并行模式
		
参考链接:oracle并行模式(Parallel),深入理解Oracle的并行操作(原创),oracle使用并行踩过的坑 1. 语法(这个可以加到insert.delete.update.select ...
 - oracle学习undo之事务槽和oracle的多种提交方式
		
1.事务槽数量参数 每一个oracle数据块里面在数据块头部都有事务槽,事务槽的数量可以去查一下,如果数据库中的表T2: select INI_TRANS,MAX_TRANS from dba_tab ...
 - jdbc/ojdbc连oracle的三种方式(转)
		
文章转自:http://blog.itpub.net/22664653/viewspace-1383092/ 前言 本文是一篇学习笔记,学习如何通过java jdbc /ojdbc 连接oracle ...
 - Oracle EBS在编码方式为AL32UTF8时的注意事项
		
现如今的EBS系统中,为了推进国际化的进程,以及系统向全球化的扩展,在Oracle数据库的编码方式上渐渐从支持中国本土简体中文的ZHS16GBK转向了更趋于国际化的AL32UTF8编码方式.但随之而来 ...
 - 转:ORACLE的JDBC连接方式:OCI和THIN
		
oracle的jdbc连接方式:oci和thin oci和thin是Oracle提供的两套Java访问Oracle数据库方式. thin是一种瘦客户端的连接方式,即采用这种连接方式不需要安装oracl ...
 - Oracle的表连接方式
		
Oracle的表连接方式: 1.Nl Join连接(嵌套连接) 2.Hash Join(哈希连接) 3.Merge Sort Join(排序合并连接) 各种连接的使用场景: 1. 排序合并连接是偏向于 ...
 - ORACLE的SQL JOIN方式大全
		
ORACLE的SQL JOIN方式大全 在ORACLE数据库中,表与表之间的SQL JOIN方式有多种(不仅表与表,还可以表与视图.物化视图等联结),官方的解释如下所示 A join is a que ...
 - CSS的4种引入方式及优先级
		
第一:css的四种引入方式 1.行内样式 最直接最简单的一种,直接对HTML标签使用style="",例如: <p style="color:#F00; " ...
 - IOS 控制器View的创建方式(方式的优先级 、view的延迟加载)
		
MJViewController的view的创建 的方式的优先级 控制器view的延迟加载 ● 控制器的view是延迟加载的:用到时再加载 ● 可以用isViewLoaded方法判断一个UIViewC ...
 - Oracle并行更新的两种方式(merge/update内联视图)
		
对于Oracle的两表联合更新的场景(有A.B两表,以A.id=B.id关联,根据B表中的记录更新A表中的相应字段),一般有update内联视图和merge两种方式,下面举例介绍: 创建用例表: ...
 
随机推荐
- 善用 vscode 的批量和模板技巧来提效
			
vs code 其实有很多实用的技巧可以在日常工作中带来很大的提效,但可能是开发中没有相应的痛点场景,因此有些技巧接触的人不多 本篇就来介绍下多光标的批量操作和模板代码两种技巧在日常工作中的提效 涉及 ...
 - HDU 4705 立方和拆解
			
HDU 4705 立方和拆解 题意 给一棵树,找出所有的(A,B,C)三元组的数量,满足ABC不能同时被一条路径覆盖 思路 首先可以明确的是,对于每个入度大于等于3的点(也就是有两个或以上儿子的节点) ...
 - 记一次uboot编译/经验/教训
			
记一次uboot编译/经验/教训 - 最近学习uboot移植有关的知识,在了解原理后自己编译uboot,但是出现了好多各式各样的错误,最后换了几次系统环境之后才找到错误来源 1.准备源码与交叉编译工具 ...
 - Prometheus 快速入门
			
Prometheus&Grafana快速入门 一.prometheus简介 prometheus是监控多个大数据组件的监控系统.Prometheus是由SoundCloud开发的开源监控报警系 ...
 - 经验说丨华为云视频Cloud Native架构下实践
			
摘要:来自华为云直播的段亮详细介绍华为云视频在Cloud Native的转型实践中遇到的问题.挑战以及解决之道. 随着云基础设施服务以及边缘计算技术的发展,Cloud Native,即云原生,架构理念 ...
 - 加快云原生技术转型, 智能调度登陆华为云DevOps: 增速,节源
			
摘要:本文将探讨智能资源调度在华为云DevOps上的应用与实践. 本文分享自华为云社区<加快云原生技术转型, 智能调度登陆华为云DevOps: 增速,节源>,作者: DevAI. 1. 背 ...
 - Chrome浏览器导出HTTPS证书
			
点证书小锁 进入证书界面 到详情中,导出证书
 - SpringBoot 接口并发限制(Semaphore)
			
可以使用 JMeter 辅助测试 https://blog.csdn.net/weixin_45014379/article/details/124190381 @RestController @Re ...
 - 收到邮件了,微软新必应(New Bing)可以用了,只隔了一天
			
收到邮件了,微软新必应(New Bing)可以用了,只隔了一天 国内申请微软新必应(New Bing) 1号我写了一篇文章,介绍内置ChatGPT的微软新必应(New Bing)申请方法,没想到昨天就 ...
 - k8s-修改线程数
			
1.背景: (1)胖容器ssh登录报错:handshake error (2)登录宿主机后,观察pod状态为running,但是kubectl exec 和docker exec 均无法进入该容器,报 ...