Parallel SQL Execution并行SQL执行

Parallel SQL Execution并行SQL执行:

执行多个SQL语句时可以通过配置并行执行来提高执行效率.

几个基本概念:

1). 并行度(Degree of parallelism):
单个操作所关联的并行执行服务器个数. 它有以下条件决定:
1. 在执行语句中的PARALLEL子句
2. 对于一个查询的对象,在创建或更改该对象时使用了PARALLEL关键字
3. PARALLEL hint
4. 有数据库决定的默认值

2). 并行执行服务器(Parallel Execution Servers)
当数据库实例启动后,数据库创建一个并行执行服务器池以供并行操作. 一个叫 parallel execution coordinator的进程负责分配Parallel Execution Servers并协调把并行执行的结果返回给用户.

默认情况下Parallel Execution Servers处于开启状态,因为参数parallel_max_servers默认的大于0.

SQL> show parameter parallel_max_servers

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
parallel_max_servers                 integer     10


配置并行执行:
可以通过ALTER SESSION子句来控制并行执行.

1). 关闭并行执行特性
ALTER SESSION DISABLE PARALLEL DML|DDL|QUERY
执行该语句后,所有随后的DML, DDL 和查询操作都将是序列化,而不管该对象在创建时是否有指定了PARALLEL关键字, 也忽略执行语句中指定的PARALLEL关键字.

SQL> alter session disable parallel ddl;

Session altered.

2). 开启并行执行特性
ALTER SESSION ENABLE PARALLEL DML|DDL|QUERY
执行该语句后,随后的包含PARALLEL关键字或hint的执行语句都将并行执行.
默认情况下,并行执行特性对DDL和查询语句是开启.
SQL> alter session enable parallel dml;

Session altered.

3). 强制并行执行SQL语句
ALTER SESSION FORCE PARALLEL DML|DDL|QUERY
执行该语句可以强制执行并行操作.
SQL> ALTER SESSION FORCE PARALLEL DDL PARALLEL 5;
在建表时指定PARALLEL执行
SQL> CREATE TABLE hr.admin_emp_dept
PARALLEL COMPRESS
AS SELECT * FROM hr.employees
WHERE department_id = 10;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9466564/viewspace-614023/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/9466564/viewspace-614023/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值