`
tooby
  • 浏览: 117341 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

ORACLE 并行(PARALLEL)实现方式及优先级

 
阅读更多

一、      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

新创建表默认并行度是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 "="" style="word-wrap: break-word;">

CREATE INDEX ….parallel 10;

ALTER INDEX ... REBUILD parallel 10;

ALTER INDEX ... MOVE PARTITION parallel 10;

ALTER INDEX ...SPLIT PARTITION parallel 10;

 

 

分享到:
评论

相关推荐

    Oracle性能优化技术内幕part_3

    通过并行查询(Parallel Query)和并行DML(Data Manipulation Language),我们可以将大任务分解为多个子任务,利用多核处理器的优势提高性能。不过,需要注意的是,过度的并行可能导致资源竞争,反而降低效率。 ...

    Oracle实用大全

    - **多线程架构**:Oracle数据库采用多线程并行执行(Parallel Query)机制,将大型查询分解为多个任务并行处理,显著提高查询速度。 - **锁定机制**:Oracle使用行级锁定,减少并发操作中的冲突,提高系统吞吐量...

    ORACLESQL性能优化全PPT教案.pptx

    通过PARALLEL关键字或设置并行度,可以启用并行执行。 10. **SQL调优顾问**:Oracle提供SQL Tuning Advisor,它自动分析慢查询并提出改进建议,包括创建索引、修改查询结构等。 11. **资源管理**:通过...

    云计算环境下的ORACLE数据库管理.pdf

    在云计算环境中,...总的来说,ORACLE数据库在云计算环境中的管理策略需要充分利用Resource Manager、Service和Parallel等特性,以应对混合负载的挑战,实现资源的优化分配,保证服务质量,并提升系统的整体性能。

    Oracle Resource manager

    - **目的**:为了避免高优先级并行语句没有足够资源执行的问题,可以限制特定 consumer group 的并行度。 - **示例**:如果数据库总共有 32 个并行服务器,MY_GROUP 的 PARALLEL_SERVERS_TARGET 设置为 50%,则 MY_...

    性能优化篇之Oracle10g_性能分析及优化思路

    2. **Parallel Execution**:并行执行可以将大任务分解为多个子任务,利用多核CPU提升处理速度。 五、性能调优步骤 1. **问题识别**:通过AWR报告或其他监控工具发现性能问题。 2. **问题诊断**:分析Trace文件、...

    ORACLE9i_优化设计与系统调整(doc)

    1. PARALLEL执行:利用并行查询提高大数据量操作的速度,合理设置并行度,平衡资源消耗和性能提升。 五、性能监控与诊断 1. V$视图:通过查询V$视图,获取系统状态和性能指标,如V$SESSION、V$SQL、V$BUFFER_CACHE...

    Oracle 9i数据库的性能调整和优化.pdf

    利用多CPU处理器执行事务处理和查询,通过Parallel Query Option(并行查询选项)提高处理效率。使用SQL Loader的Direct Path选项进行大量数据装载,能减少数据库内核的负载。 磁盘I/O的优化涉及到磁盘阵列的选择...

    oracle DBRM

    - 并行度限制(Parallel_degree_limit):控制并行处理的最大度数。 - CPU时间(CPUTime):限制会话可以消耗的CPU时间。 - 活跃会话池(ActiveSessionPool):控制资源使用组内最大活动会话数。 - 最大预估执行时间...

    oracle 11g 性能调优 官方PPT

    1. PARALLEL执行:通过并行执行计划提高大数据量操作的速度,但需考虑并行度对系统资源的影响。 2. Resource Manager:分配数据库资源,避免资源争抢,确保关键业务的优先级。 六、其他优化技术 1. 分区技术:使用...

    OracleDatabase11g完全参考手册02

    6. **并行执行**:Oracle的并行执行机制(Parallel Query and Parallel DML)允许大规模数据处理任务在多个处理器上同时进行,显著提高处理速度。 7. **数据仓库与OLAP**:Oracle Data Warehouse Builder和OLAP选项...

    ORACLE9i_优化设计与系统调整

    Oracle 9i是一款由甲骨文公司开发的关系型数据库管理系统,其优化设计和系统调整是数据库管理员(DBA)及IT专业人员确保高效数据库性能的关键环节。以下将详细阐述Oracle 9i在优化设计和系统调整方面的核心概念、...

    Oracle数据库操作大全

    - `parallel_max_servers`: 并行服务器的最大数量。 - `log_buffer`: 重做日志缓冲区的大小。 - `max_dump_file_size`: 最大的转储文件大小。 - `global_names`: 是否启用全局名称解析。 - `db_block_size`: ...

    oracle操作手册

    - `parallel_max_servers`: 并行服务器的最大数量,设置为5。 - `log_buffer`: 日志缓冲区大小,设置为32768字节。 - `max_dump_file_size`: 最大转储文件大小,设置为10240字节。 - `global_names`: 是否开启全局...

    JDK8中文API

    8. **并行和并发改进**:JDK8改进了`Fork/Join`框架和`Parallel Streams`,使得多核处理器环境下并行处理性能显著提升。`ConcurrentHashMap`的性能也得到了优化,提供了更好的并发性能。 9. **方法引用和构造器引用...

    144+种工作流自动化系统功能

    - **实现方法**:兼容 Oracle、SQL Server、MySQL 等主流数据库系统。 #### 8. 动态用户授权 (Active User Licensing) - **重要性**:灵活的授权机制可以根据实际需求调整用户权限,便于管理。 - **实现方法**:...

    数据库设计说明书模板

    - **SPP**:精简并行过程,Simplified Parallel Process - **SD**:系统设计,System Design #### 三、数据库环境说明 - **说明**:应详细说明所采用的数据库系统(如Oracle、MySQL等)、设计工具(如ERWin、MySQL...

    (重要)AIX command 使用总结.txt

    # lscfg -vl ssa0 //ssa0是此SSA卡的设备名,输出结果中的ROS level及ID即是微码级别(microcode level) //用下面命令可以得到一个硬盘的微码级别: # lscfg -vl pdisk* //IBM小型机AIX5.1操作系统密码文件丢失或者...

Global site tag (gtag.js) - Google Analytics