本节介绍的并行执行功能可用于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. C# 实现身份验证之WCF篇(1)

    WCF身份验证一般常见的方式有:自定义用户名及密码验证.X509证书验证.ASP.NET成员资格(membership)验证.SOAP Header验证.Windows集成验证.WCF身份验证服务(A ...

  2. 剑指Offer_编程题_11

    题目描述 输入一个整数,输出该数二进制表示中1的个数.其中负数用补码表示.   class Solution { public: int NumberOf1(int n) { int size = 3 ...

  3. Burrow 服务的安装部署

    Burrow 服务的安装部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 最近协助开发的同时帮忙把10个topic的数据使用5个topic的来工作.结果发现数据flume在手机数 ...

  4. java io系列19之 CharArrayWriter(字符数组输出流)

    本章,我们学习CharArrayWriter.学习时,我们先对CharArrayWriter有个大致了解,然后深入了解一下它的源码,最后通过示例来掌握它的用法. 转载请注明出处:http://www. ...

  5. Cannot make a static reference to the non-static

    public class SeckillServiceImpl implements SeckillService{ private SeckillDao seckillDao; private Su ...

  6. 031、none和host网络的适用场景(2019-02-18 周一)

    参考https://www.cnblogs.com/CloudMan6/p/7053617.html   本节开始,会学习docker的几种原生网络,以及如何创建自定义网络.然后探究容器之间如何通信, ...

  7. PHP 图片验证码验证

    *.html <input type="> <img src="> api.php <?php session_start(); $dataObj = ...

  8. 【十四】jvm 性能调优实例

    实例1: POI Excel 导出 Excel对象很大,多人同时登录系统导出Excel的话,就会有多个大Excel对象到老年代,这是老年代需要回收,系统可能会卡顿. jvm堆内存设置的越大,Full ...

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

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

  10. 对xml进行数据查询时发生NoClassDefFoundError,dom4j和jaxen

    xml可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言. 在web中,今天我本想测试一下用xml做为数据库存储用户信息,但是在查询用户信息的时候一直发生: jav ...