在开启并行创建索引时,实际消耗的数据库并行线程是双倍。
create index ind_qid on crm_detail(queue_id,gmt_create) parallel 6 tablespace tbs_ind ONLINE;
上面的sql以并行6来创建索引,6个并行用于获取数据,6个并行用于索引。从下面的视图中也可以获取相关信息。对应的qcsid为603
SID    SERIAL#      QCSID  QCSERIAL#  QCINST_ID SERVER_GROUP SERVER_SET    SERVER#     DEGREE REQ_DEGREE
----- ---------- ---------- ---------- ---------- ------------ ---------- ---------- ---------- ----------
1360      34534       1360
537      17838       1360      34534          1            1          1          1          4          8
583       6982       1360      34534          1            1          1          2          4          8
747      10018       1360      34534          1            1          1          3          4          8
532      28145       1360      34534          1            1          1          4          4          8
603      58749        603
780      32071        603      58749          1            1          1          1          6          6
754      14332        603      58749          1            1          1          2          6          6
502      63681        603      58749          1            1          1          3          6          6
590      46158        603      58749          1            1          1          4          6          6
653      26832        603      58749          1            1          1          5          6          6
783      25546        603      58749          1            1          1          6          6          6
584      27449        603      58749          1            1          2          1          6          6
749       3704        603      58749          1            1          2          2          6          6
762       8393        603      58749          1            1          2          3          6          6
596      13055        603      58749          1            1          2          4          6          6
740      25279        603      58749          1            1          2          5          6          6
640       3699        603      58749          1            1          2          6          6          6
---
查询当前系统开启的最大并行数
>show parameter paral
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
parallel_max_servers                 integer     16
当sql请求的最大并行度超过系统可用的并行数时,系统自动将剩余的并行数给该请求
在上面的视图中可以看到QCSID为1360的进程请求的平行度为8,但是系统只剩下4个并行数可以分配,以此degree为4
QCSID:13360  SQL: create table tmp_table as select /*+ parallel(t,8) */ * from  crm_users t;
This work is licensed under a CC A-S 4.0 International License.