本节介绍的并行执行功能可用于Oracle数据库企业版

本节介绍如何管理SQL语句的并行处理。在此配置中,Oracle数据库可以将处理SQL语句的工作分为多个并行进程。

许多SQL语句的执行可以并行化。并行度是可以与单个操作相关联的并行执行服务器的数量。并行度由以下任何因素决定:

  • 声明中的PARALLEL子句
  • 对于查询中引用的对象,创建或更改对象时使用的PARALLEL子句
  • 插入语句中的并行提示
  • 由数据库确定的默认值

并行化表创建”中包含使用并行SQL执行的示例。

本节包含以下主题:

  • 关于并行执行服务器
  • 更改会话的并行执行

有关使用并行提示的信息,请参阅“Oracle数据库性能调整指南

 关于并行执行服务器


实例启动时,Oracle数据库将创建一个并行执行服务器池,可用于任何并行操作。称为并行执行协调器的进程调度并行执行服务器池的执行,并协调从所有这些并行执行服务器向用户发回结果。

并行执行服务器默认启用,因为默认情况下,PARALLEL_MAX_SERVERS初始化参数的值设置为> 0。这些进程可供各种可利用并行性的Oracle数据库功能使用。相关的初始化参数由数据库为大多数用户调整,但您可以根据需要更改它们以适合您的环境。为了便于调整,一些参数可以动态改变。

并行性可用于多种功能,包括事务恢复,复制和SQL执行。在执行并行SQL的情况下,本书中讨论的主题并行服务器进程在整个执行阶段仍然与语句相关联。当完整处理语句时,这些进程可用于处理其他语句。

Oracle数据库VLDB和分区指南获取有关使用并行执行的更多信息

更改会话的并行执行


您可以使用ALTER SESSION语句控制会话的并行SQL执行。

禁用并行SQL执行

使用ALTER SESSION DISABLE PARALLEL DML | DDL | QUERY语句禁用并行SQL执行。在发布这样的语句后,所有后续的DML(INSERT,UPDATE,DELETE),DDL(CREATE,ALTER)或者查询(SELECT)操作都会连续执行。它们将被连续执行,而不管与所涉及的表或索引有关的任何并行属性。但是,带有PARALLEL提示的语句会覆盖会话设置

以下语句禁用并行DDL操作:

ALTER SESSION DISABLE PARALLEL DDL;

启用并行SQL执行

使用ALTER SESSION ENABLE PARALLEL DML | DDL | QUERY语句启用并行SQL执行。随后,当PARALLEL子句或并行提示与语句关联时,那些DML,DDL或查询语句将并行执行。默认情况下,为DDL和查询语句启用并行执行。

只有在您特别发出ALTER SESSION语句以启用并行DML时,才能对DML语句进行并行处理:

ALTER SESSION ENABLE PARALLEL DML;

强制并行SQL执行

您可以使用ALTER SESSION FORCE PARALLEL DML | DDL | QUERY语句强制执行并行执行的所有后续DML,DDL或查询语句。此外,您可以强制执行特定程度的并行性,从而覆盖与后续语句关联的任何PARALLEL子句。如果您在此声明中没有指定一定的并行度,则使用默认的并行度。强制并行执行将覆盖SQL语句中的任何并行提示。

以下语句强制后续语句的并行执行,并将最重要的并行度设置为5:

ALTER SESSION FORCE PARALLEL DDL PARALLEL 5;

参考资料


https://docs.oracle.com/cd/E11882_01/server.112/e25494/manproc.htm#ADMIN11186

管理并行SQL执行的进程的更多相关文章

  1. OCM_第十五天课程:Section6 —》数据库性能调优 _SQL 访问建议 /SQL 性能分析器/配置基线模板/SQL 执行计划管理/实例限制

    注:本文为原著(其内容来自 腾科教育培训课堂).阅读本文注意事项如下: 1:所有文章的转载请标注本文出处. 2:本文非本人不得用于商业用途.违者将承当相应法律责任. 3:该系列文章目录列表: 一:&l ...

  2. SQL Server 在线进程分析处理

    SQL Server 在线进程分析处理 前言 数据库在线进程处理在很多时候需要人为干预已达到预期管理目标,下面整理一下常用的在线进程管理方法,便于后续工作使用. 一.查看目标数据库在线进程,并杀死指定 ...

  3. Oracle中SQL调优(SQL TUNING)之最权威获取SQL执行计划大全

    该文档为根据相关资料整理.总结而成,主要讲解Oracle数据库中,获取SQL语句执行计划的最权威.最正确的方法.步骤,此外,还详细说明了每种方法中可选项的意义及使用方法,以方便大家和自己日常工作中查阅 ...

  4. [转载]循规蹈矩:快速读懂SQL执行计划的套路与工具

    作者介绍 梁敬彬,福富研究院副理事长.公司唯一四星级内训师,国内一线知名数据库专家,在数据库优化和培训领域有着丰富的经验.多次应邀担任国内外数据库大会的演讲嘉宾,在业界有着广泛的影响力.著有多本畅销书 ...

  5. 进程(并发,并行) join start 进程池 (同步异步)

    一.背景知识 顾名思义,进程即正在执行的一个过程.进程是对正在运行程序的一个抽象.进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一.操作系统的其他所有 ...

  6. Oracle sql执行计划解析

    Oracle sql执行计划解析 https://blog.csdn.net/xybelieve1990/article/details/50562963 Oracle优化器 Oracle的优化器共有 ...

  7. 自适应查询执行:在运行时提升Spark SQL执行性能

    前言 Catalyst是Spark SQL核心优化器,早期主要基于规则的优化器RBO,后期又引入基于代价进行优化的CBO.但是在这些版本中,Spark SQL执行计划一旦确定就不会改变.由于缺乏或者不 ...

  8. SQL执行效率2-执行计划

    以下语句可以进行SQL 语句执行时间分析,两个Go之间就是SQL查询语句 use Work--数据库名 go set statistics profile on set statistics io o ...

  9. DB查询分析器7.01新增的周、月SQL执行计划功能

                DB查询分析器7.01新增的周.月SQL执行计划功能 马根峰              (广东联合电子服务股份有限公司, 广州 510300) 1      引言   中国本土 ...

随机推荐

  1. (字符串 枚举)The Hardest Problem Ever hdu1048

    The Hardest Problem Ever 链接:http://acm.hdu.edu.cn/showproblem.php?pid=1048 Time Limit: 2000/1000 MS ...

  2. jmeter每10个停一会实现方案

    foreach控制器中加个if控制器,if控制器条件${__groovy("${__counter(TRUE,)}".toInteger() % 10 == 0,)},再往if控制 ...

  3. Symbol特殊用途

    1. Symbol.iterator 定义对象的迭代器 一般我们遍历一个对象用for...in es6新增了一个for...of 但是对象却不能用 因为对象没有“迭代器”,那么我们给它定制一个 有了迭 ...

  4. printf不定参数

    title: printf不定参数 tags: C ARM date: 2018-10-21 12:14:58 --- 不定参数的传递 函数调用时参数传递是使用堆栈来实现的,参数入栈顺序是从右向左,在 ...

  5. Nginx自定义404页面并返回404状态码

    Nginx定义404页面并返回404状态码, WebServer是nginx,直接告诉我应该他们配置了nginx的404错误页面,虽然请求不存在的资源可以成功返回404页面,但返回状态码确是200. ...

  6. NSGA-II入门C1

    NSGA-II入门C1 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献1 参考文献2 白话多目标 多目标中的目标是个瓦特? 多目标即是优化问题中的优化目标在3个及以上,一般这些优化的 ...

  7. JAVA核心技术I---JAVA基础知识(数据结构基础)

    一:数组 (一)基本内容是与C一致的 (二)数组定义和初始化 (1)声明 int a[]; //a没有new操作,没有被分配内存,为null int[] b; //b没有new操作,没有被分配内存,为 ...

  8. 6.适配器模式(Adapter Pattern)

    适配(转换)的概念无处不在......适配,即在不改变原有实现的基础上,将原先不兼容的接口转换为兼容的接口.例如:二转换为三箱插头,将高电压转换为低电压等.    动机(Motivate):    在 ...

  9. JAVA-8大基本类型与包装类的例子(基础必备)

    package com.net.xinfang.reflect; /*** * 8种基本类型(byte,int,short,long,float,double,char,boolean) * 布尔型只 ...

  10. zepto.min.js

    /* Zepto v1.1.3 - zepto event ajax form ie - zeptojs.com/license */var Zepto=function(){function L(t ...