append+parallel,并行度
1.append和并行同时使用时注意:
alter session enable parallel DML;
ALTER SESSION SET db_file_multiblock_read_count=128;
INSERT /+append parallel(b 2)/
并行:两个并行包括三个进程,有一个进程是负责调度的。
2.并行度
并行度与CPU和当前的负载有关
—cmd下执行
SQL> set autot trace
—-开并行的时候,Oracle会分配一组或两组Slave Set
–并行度4指的是Slave Set中的从属进程的数量。
SQL> select /+ parallel(t1,4) / * from t1 order by 1;
并行度是4,很有可能开八个进程。一组用来生产数据(select),一组用来消费数据(order by)
测试结果:
SQL> select * from v$pq_slave;
SLAVE_NAME STATUS SESSIONS IDLE_TIME_CUR BUSY_TIME_CUR CPU_SECS_CUR MSGS_SENT_CUR MSGS_RCVD_CUR IDLE_TIME_TOTAL BUSY_TIME_TOTAL CPU_SECS_TOTAL MSGS_SENT_TOTAL MSGS_RCVD_TOTAL
P000 IDLE 3 2 0 0 0 0 3 0 0 46 64
P001 IDLE 3 2 0 0 0 0 3 0 0 128 168
P002 IDLE 3 2 0 0 0 0 3 0 0 44 63
P003 IDLE 2 2 0 0 0 0 3 0 0 1242 1241
P004 IDLE 2 2 0 0 0 0 3 0 0 364 32
P005 IDLE 2 2 0 0 0 0 3 0 0 322 29
P006 IDLE 2 2 0 0 0 0 3 0 0 434 37
P007 IDLE 2 2 0 0 0 0 3 0 0 419 36
8 rows selected
—–IDLE是空闲状态,BUSY是忙碌状态,PMON进程会每隔一个时间去检查,如果发现是IDLE状态,就将进程关闭
SQL> select * from v$pq_slave;
SLAVE_NAME STATUS SESSIONS IDLE_TIME_CUR BUSY_TIME_CUR CPU_SECS_CUR MSGS_SENT_CUR MSGS_RCVD_CUR IDLE_TIME_TOTAL BUSY_TIME_TOTAL CPU_SECS_TOTAL MSGS_SENT_TOTAL MSGS_RCVD_TOTAL
开4个进程的测试结果:
—-cmd下执行
SQL> set autot trace
SQL> select /+ parallel(t1,4) / * from t1;
—-PLSQL DEV
SQL> select * from v$pq_slave;
SLAVE_NAME STATUS SESSIONS IDLE_TIME_CUR BUSY_TIME_CUR CPU_SECS_CUR MSGS_SENT_CUR MSGS_RCVD_CUR IDLE_TIME_TOTAL BUSY_TIME_TOTAL CPU_SECS_TOTAL MSGS_SENT_TOTAL MSGS_RCVD_TOTAL
P000 BUSY 4 0 0 0 173 13 0 0 0 219 77
P001 BUSY 4 0 0 0 187 14 0 0 0 315 182
P002 BUSY 4 0 0 0 176 13 0 0 0 220 76
P003 BUSY 3 0 0 0 174 13 0 0 0 1416 1254
SQL> select * from v$pq_slave;
SLAVE_NAME STATUS SESSIONS IDLE_TIME_CUR BUSY_TIME_CUR CPU_SECS_CUR MSGS_SENT_CUR MSGS_RCVD_CUR IDLE_TIME_TOTAL BUSY_TIME_TOTAL CPU_SECS_TOTAL MSGS_SENT_TOTAL MSGS_RCVD_TOTAL
P000 IDLE 4 0 0 0 0 0 0 0 0 226 78
P001 IDLE 4 0 0 0 0 0 0 0 0 322 183
P002 IDLE 4 0 0 0 0 0 0 0 0 238 78
P003 IDLE 3 0 0 0 0 0 0 0 0 1430 1256
select /+ parallel(t1,4) / object_id,count(*) from t1 group by object_id;
append+parallel,并行度相关推荐
- oracle 优化之parallel和append
并发parallel和append /+append/ 注意事项 1.在非归档模式中 nologing和 logging 都不会产生大量的redo日志,但是在归档模式中如果是logging 表会产生大 ...
- Oracle Parallel Execution(并行执行) .
关于Oracle 的并行执行,Oracle 官方文档有详细的说明: Using Parallel Execution http://download.oracle.com/docs/cd/E11882 ...
- PARALLEL(并行)
在Oracle中,PARALLEL(并行)方式最大化调用计算机资源来成倍提高数据分析效率. 1. 用途 强行启用并行度来执行当前SQL.这个在Oracle 9i之后的版本可以使用,之前的版本现在没有环 ...
- 运用PARALLEL方式成倍提升Oracle数据分析效率
运用PARALLEL方式成倍提升Oracle数据分析效率 Oracle作为一种大型数据库,在我国已成为大型企事业单位(如公立医院)的主流数据库并占有了绝对的市场份额.这就意味着审计工作同Oracle的 ...
- Oracle Parallel Execution(并行执行)
关于Oracle 的并行执行,Oracle 官方文档有详细的说明: Using Parallel Execution http://download.oracle.com/docs/cd/E11882 ...
- Oracle Parallel使用
Oracle Parallel使用 oracle 并行(Parallel)使用 1.查询 Sql代码 SELECT /*+ Parallel(t,8) */ * FROM emp t; SEL ...
- Oracle Hints,Oracle并行模式(Parallel) /*+parallel(t,4)*/ 在SQL调优中的重要作用
/*+parallel(t,4)*/在SQL调优中的重要作用! 2013年11月17日 12:59:24 雾里看花5566 阅读数:5422更多 个人分类: 数据库-oracle 谈谈HINT /*+ ...
- oracle中并行与append,如何让insert /*+ append */ 采用并行。
SQL> explain plan for insert /*+ append parallel(my 2) */ into my select * from ac01; 已解释. 已用时间: ...
- insert oracle速度,[Oracle] Insert into速度测试nologging+parallel
C:\Users\Admin>sqlplus / as sysdba SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 10月 4 13:24:0 ...
最新文章
- 3.2.2 快速搭建你的第一个系统所,并进行迭代
- 架构设计之「服务限流」
- HttpClient-01基本概念
- python 列联表自动拆分_python自动化办公:实现按照一列内容拆分excel
- 【UIKit】UITableView.02
- 案例逐步演示python利用正则表达式提取指定内容并输出到csv
- 虚拟地球原理与实现(转载)
- SQL报错信息(3001-6999)
- ASP 读取Word文档内容简单示例
- 【JavaScript】javaScript基础知识回顾
- 19.mysql 字符集和校对规则
- android 线程使用监控思路分享
- ps磨皮插件:DR5白金版(支持ps 2021)中文版
- PRi——自行车码表
- Tacotron2 NVIDIA版本使用Biao-Bei数据集
- 2011高教社杯全国大学生数学建模竞赛题目(MATLAB)
- feign调用不经过网关
- 『ANDROID』android animator 动画
- 强化学习实践七:给Agent添加记忆功能
- P4408 [NOI2003] 逃学的小孩(树的直径)