本节介绍的并行执行功能可用于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. node.js小案例_留言板

    一.前言 通过这个案例复习: 1.node.js中模板引擎的使用 2.node.js中的页面跳转和重定向 二.主要内容 1.案列演示:  2.案列源码:https://github.com/45612 ...

  2. 构造方法关键字---this

    this 可以在构造方法之间进行调用 *this在构造方法之间调用 this() this 可以在构造方法之间进行调用 *this在构造方法之间调用 this() package cn.homewor ...

  3. Python中集合的操作

    Python集合的基本详情 集合是无序的 集合是可变数据类型 集合属于不可哈希范围 集合自动去重 集合的操作 set1 = {1, 2, 3, 4, 5} set2 = {4, 5, 6, 7, 8} ...

  4. JAVA核心技术I---JAVA基础知识(时间类)

    一:时间类库了解 java.util.Date(基本废弃,Deprecated) –getTime(),返回自1970..1以来的毫秒数 java.sql.Date(和数据库对应的时间类) //与数据 ...

  5. centos下问题:connect:network is unreachable

    问题描述 弄了三台机器准备搭建一个集群,按照centos7系统,一台主节点安装桌面环境,两台计算节点.配置计算节点的时候,发现ping不通,出现connect:network is unreachab ...

  6. 如何转换cdr文件

    You will need to copy the type library from corelDRAW: C:\Program Files (x86)\Corel\CorelDRAW Graphi ...

  7. ubuntu没有/usr/include/sys目录

    实际上不是没有sys目录,只是系统给换路径了 32位系统:/usr/incude/i386-linux-gnu/sys 64位系统:/usr/include/x86_64-linux-gnu/sys/ ...

  8. 第21月第6天 zhihu如何用3个月零基础入门机器学习

    1. 我们应该记住,既成的事实一定有它的道理,如果我们不能理解它,恐怕得从自身找原因.如果你交易股票,请记住,如果预测和市场不一致,错的是预测,而不是市场 https://www.cnblogs.co ...

  9. Embedded training,嵌入式训练

    一旦初始的模型集被创建后, HERest使用整个训练集来执行"嵌入式训练(embedded training)",HERest将对全部HMM音素集模型执行一次Baum-Welch, ...

  10. Linux和进程内存模型

    一.Linux和进程内存模型 jvm是一个进程的身份运行在linux系统上,了解linux和进程的内存关系,是理解jvm和Linux内存关系的基础. 硬件.系统.进程三个层面的内存之间的概要关系 1. ...