oracle并行创建表,oracle并行度调整

news/2023/9/25 18:51:20

oracle并行度使用多个cpu与io来执行数据库操作,能够显著改善大型数据库操作性能,比如DSS或数据仓库 适用于 大表查询,join,分区索引的查询 创建大量的index 创建大量的表(包括固化视图) 批量的insert,update,delete 查行执行适合场景 对称多处理器,集群

oracle并行度使用多个cpu与io来执行数据库操作,能够显著改善大型数据库操作性能,比如DSS或数据仓库

适用于

大表查询,join,分区索引的查询

创建大量的index

创建大量的表(包括固化视图)

批量的insert,update,delete

查行执行适合场景

对称多处理器,集群,并行系统

足够的带宽

cpu利用不足

足够的内存用于其他操作,排序,hash,缓存

查行执行适合与dss与数据仓库,也适合于批量操作的OLTP系统,不适合OLTP简介的dml或select操作

并行执行不适合场景

非常短的查询或事务

这包括大多数的OLTP,因为并行协调的成本高于并行的好处

大量利用io,cpu,内存的操作

基本硬件要求

并行执行设计需要多个cpu与io来实现快速的查询,每个硬件都应该维持在同一个吞吐量

哪些操作可以用并行

全表查询,分区查询,索引快速查询

join操作

nested loop, sort merge, hash, and star transformation

DDL语句

CREATETABLEASSELECT,CREATEINDEX,REBUILDINDEX,REBUILDINDEXPARTITION,

andMOVE/SPLIT/COALESCEPARTITION

DML语句

INSERTASSELECT,UPDATE,DELETE,

andMERGEoperations

并行执行的执行计划

执行

EXPLAIN PLAN FOR

SELECT /*+ PARALLEL(4) */ customers.cust_first_name, customers.cust_last_name,

MAX(QUANTITY_SOLD), AVG(QUANTITY_SOLD)

FROM sales, customers

WHERE sales.cust_id=customers.cust_id

GROUP BY customers.cust_first_name, customers.cust_last_name;

查看执行计划

SELECT PLAN_TABLE_OUTPUT FROM TABLE(DBMS_XPLAN.DISPLAY());

执行并行程度

ALTER TABLES sales PARALLEL 8;

ALTER TABLE customers PARALLEL 4

默认并行度

单实例:PARALLEL_THREADS_PER_CPUx

CPU_COUNT

集群:PARALLEL_THREADS_PER_CPUx

CPU_COUNT x INSTANCE_COUNT

parallel_threads_per_cpu查询showparameter

parallel_threads_per_cpu

自动并行管理

PARALLEL_DEGREE_POLICY设置为auto说明由oracle决定并行执行

自动并行流程

sql发布

oracle优化解析并生成执行计划

查看PARALLEL_MIN_TIME_THRESHOLD参数值

如果执行时间小于该值就串行执行否则并行执行

设置自动并行度

方法1

altersession set parallel_degree_policy=limited;

altertable paralle(degree

default);

方法2

通过语句设置并行度

并行度10

SELECT /*+ parallel(10) */ ename, dname FROM emp e, dept d

WHERE e.deptno=d.deptno;

非并行度

SELECT /*+ no_parallel */ ename, dname FROM emp e, dept d

WHERE e.deptno=d.deptno;

自动并行度

SELECT /*+ parallel(auto) */ ename, dname FROM emp e, dept d

WHERE e.deptno=d.deptno;

In-memory并行

PARALLEL_DEGREE_POLICY设置为auto表示并行执行时利用buffer cache数据,

PARALLEL_ADAPTIVE_MULTI_USER默认为true保证自适应并行执行,oracle根据执行时间来决定是否来并行执,从而避免超载

PARALLEL_DEGREE_POLICY参数数决定是否自动DOP,并行语句队列,In-Meory并行执行

有以下几个值

MANUAL 关闭auto DOP,并行语句队列,In-Memory并行,在11.2为默认

LIMITED关闭auto DOP,但开启并行语句队列,In-Memory并行,可以在语句中加入DOP设置来并行执

AUTO开启所有三项

并行DML

alter session enable parallel dml;

只有设置了DML并行才会在适合的语句调用并行

在insert 的SQL中使用APPEND,如:

Insert /*+append */ into t select * from t1;

Oracle执行直接加载时,数据直接追加到数据段的最后,不需要花费时间在段中需找空间,数据不经过data

buffer直接写到数据文件中,效率要比传统的加载方式高。

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:php中文网


https://dhexx.cn/news/show-16802.html

相关文章

科大奥瑞物理实验——法拉第效应

实验名称:法拉第效应 1. 实验目的: 了解磁光效应显现和法拉第效应的原理;测量磁至旋光角,了解费尔德定律,并利用费尔德定律θVBL,计算重火石玻璃的维尔德常数;熟悉磁光调制的原理,…

python2.7除法_Python2.7安装sympy模块

SymPy是Python版的开源计算机代数系统实现,是使用纯Python代码,没有第三方库。SymPy开发是Ondrej Certik从2006年8月开始的,此后不断有开发者加入项目,规模达到几百人。现在这个程序库包括26个模块,可以满足常用的计算…

python try用法_try,raise等的python的使用方法介绍

正常写代码时会遇到错误,导致错误之后代码无法继续(错了为啥还要继续……界面友好呗,别让别人用着用着崩溃了……)。所以提出了try...except(这个java的tyy...catch很像)。一个try至少带一个except&#xf…

linux命令监控dubbo请求,linux dubbo monitor监控中心安装

1.环境配置2.下载dubbo监控中心代码dubbo monitor监控中心代码下载地址:https://github.com/apache/incubator-dubbo/releases,找到dubbo-2.6.0并下载(可能并不是按版本号顺序所以要在下面找一找)3.编译打包dubbo monitor解压下载的dubbo-2.6.0.tar.gz&a…

summernote 字体名字不显示_王者荣耀怎么在游戏中输入空白名字 王者荣耀空白代码一览...

王者荣耀空白代码是什么?在王者荣耀中很多玩家都想使用空白的游戏名字却不知道该如何输入,下面就是小编为大家带来的空白代码了,不知道如何在游戏中输入空白名字的小伙伴们一起来看看吧!王者荣耀空白代码是什么方法一:…

linux补全文件名的快捷键,linux :补全,快捷键,history,alias,变量,管道,命令通配符等...

linux bash基础特性linux基础特性1 补全系统支持的shell:#cat/etc/shells当前系统默认shell:#echo $SHELL命令补全:若给定的字符能够在系统中唯一的标识某个命令程序文件,按tab键,则能直接补全命令;如果不能…

LeetCode Median of Two Sorted Arrays

原题链接在这里:https://leetcode.com/problems/median-of-two-sorted-arrays/ 题目: There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the two sorted arrays. The overall run time complexity should…

无法打开元数据文件_数据文件安全的重要性。在M国搭建的网络上,安全吗?...

文档数据安全一直是电子办公中比较重视的一个环节,而不同的企业采取了很多不一样的措施来保护电子文档,比如传统说的物理隔绝方式,或者内网模式,都是想从根源上杜绝数据泄密,但是随着网络变相攻击和内部人员因素&#…

linux上传文件命令是什么,linux上传文件命令_linux上传下载文件命令

最近在服务器上面上传下载文件,为了方便安装了一个小工具lrzsz,这个工具的使用是有一定的限制的,只能在xshell中使用,接下来吾爱编程就为大家介绍一下linux上面使用lrzsz上传下载文件,有需要的小伙伴可以参考一下&…

Android 自绘TextView解决提前换行问题,支持图文混排

先看下效果图: 上面是MTextView,下面是默认的TextView。 一、原因 用最简单的全英文句子为例,如果有一个很长的单词,这一行剩余的空间显示不下了,那么规则就是不打断单词,而是把整个单词丢到下一行开始显示…