精华内容
下载资源
问答
  • Oracle表并行

    千次阅读 2016-03-28 15:58:16
    查看dba_tables数据字典时,可以发现有“DEGREE”字段,这个字段表示的就是数据并行度。这个参数的设置,关系着数据库的I/O,以及sql的执行效率。   并行度的优点就是能够最大限度的利用机器的个cpu...
    查看dba_tables数据字典时, 可以发现有“DEGREE”字段,这个字段表示的就是数据表的并行度。这个参数的设置,关系着数据库的I/O,以及sql的执行效率。
     
    并行度的优点就是能够最大限度的利用机器的多个cpu资源,是多个cpu同时工作,从而达到提高数据库工作效率的目的。在系统空闲时间,使用并行是个不错的选择,但是好东西总是相对而言,没有绝对的好坏,不当的使用,同样会引起数据库的新的问题产生。
    1、  此参数的大小设置
    orcl@ SCOTT> select table_name,degree from user_tables;
     
    TABLE_NAME                     DEGREE
    ------------------------------         --------------------
    T1                                      1
    TAB_REGISTER                            1
    EMP                                     1
    EMP_BAK                                 1
    SALGRADE                                1
    BONUS                                   1
    DEPT                                    1
    LETTER_USER                             1
    T2                                      1
    BASE_LOG                                1
    T                                       1
    通过上例的例子大家可以观察,此参数的默认值为1,这个数值,我们认为的增加,当设置表的并行度非常高的时候,sql优化器将可能对表进行全表扫描,引起 Direct Path Read 等待 。
    在使用并行查询前需要慎重考虑, 因为并行查询尽管能提高程序的响应时间, 但是会
    消耗比较多的资源。 对于低配置的数据库服务器需要慎重。 此外, 需要确认并行度的设置要与 IO 系统的配置相符 (建议并行度为 2~4 * CPU 数) 。 
    2、  并行度的修改
    alter table t parallel(degree 1);------直接指定表的并行度
    alter table t parallel;    ----------设置表的并行度为default
    3、  如何在sql语句中使用表的并行度,并选择合适的并行等级
    示例:使用并行查询的执行计划
    并行度为4
    orcl@ SCOTT> SELECT /*+ PARALLEL(4) */
      2   MAX(sal),
      3   AVG(comm)
      4    FROM emp,dept
      5   WHERE emp.deptno=dept.deptno
      6   GROUP BY 1
      7  ;
     
    已用时间:  00: 00: 00.09
     
    执行计划
    ----------------------------------------------------------
    Plan hash value: 1358624651
     
    ---------------------------------------------------------------------------------------------------------------
    | Id  | Operation             | Name     | Rows  | Bytes | Cost (%CPU)| Time     |    TQ  |IN-OUT| PQ Distrib |
    ---------------------------------------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT      |          |    14 |   126 |     2   (0)| 00:00:01 |        |      |         |
    |   1 |  HASH GROUP BY        |          |    14 |   126 |     2   (0)| 00:00:01 |        |      |         |
    |   2 |   PX COORDINATOR      |          |       |       |            |          |        |      |         |
    |   3 |    PX SEND QC (RANDOM)| :TQ10000 |    14 |   126 |     2   (0)| 00:00:01 |  Q1,00 | P->S | QC (RAND)  |
    |   4 |     PX BLOCK ITERATOR |          |    14 |   126 |     2   (0)| 00:00:01 |  Q1,00 | PCWC |         |
    |*  5 |      TABLE ACCESS FULL| EMP      |    14 |   126 |     2   (0)| 00:00:01 |  Q1,00 | PCWP |         |
    ---------------------------------------------------------------------------------------------------------------
     
    Predicate Information (identified by operation id):
    ---------------------------------------------------
     
       5 - filter("EMP"."DEPTNO" IS NOT NULL)
     
    Note
    -----
       - automatic DOP: computed degree of parallelism is 4
     
     
    统计信息
    ----------------------------------------------------------
             20  recursive calls
              0  db block gets
              5  consistent gets
              0  physical reads
              0  redo size
            482  bytes sent via SQL*Net to client
            416  bytes received via SQL*Net from client
              2  SQL*Net roundtrips to/from client
              1  sorts (memory)
              0  sorts (disk)
    1  rows processed
     
    非并行度
    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;
    4、  并行查询的使用范围
    适用于:
    大表查询,join,分区索引的查询,
    创建大量的index,
    创建大量的表(包括固化视图),
    批量的insert,update,delete;
    查行执行适合场景:
    对称多处理器,集群,并行系统,
    cpu利用不足,
    足够的内存用于其他操作,排序,hash,缓存,
    查行执行适合与dss与数据仓库,也适合于批量操作的OLTP系统,不适合OLTP简介的dml或select操作;
    并行执行不适合场景:
    非常短的查询或事务
    基本硬件要求:
    并行执行设计需要多个cpu与io来实现快速的查询,每个硬件都应该维持在同一个吞吐量
    哪些操作可以用并行
    全表查询,分区查询,索引快速查询
    join操作
    nested loop, sort merge, hash, and star transformation
    DDL语句
    CREATE TABLE AS SELECT,  CREATEINDEX, REBUILDINDEX,
    REBUILD INDEX PARTITION, 
    And MOVE/SPLIT/COALESCEPARTITION
    DML语句
    INSERT AS SELECT,UPDATE,DELETE,
     And MERGE operations
    5、  在并行操作中默认情况并行查询和并行DDL操作可以无障碍使用并行,但是如果想使用并行DML,需要先修改dml并行配置
    alter session enable parallel dml;

    11g new feature:
    For a statement-level PARALLEL hint:
    ■ PARALLEL: The statement always is run parallel, and the database computes the 
    degree of parallelism, which can be 2 or greater.
    ■ PARALLEL (DEFAULT): The same as PARALLEL. The DEFAULT keyword is 
    included for completeness.
    ■ PARALLEL (AUTO): The database computes the degree of parallelism, which can be 
    1 or greater. If the computed degree of parallelism is 1, then the statement runs 
    serially.
    ■ PARALLEL (MANUAL): The optimizer is forced to use the parallel settings of the 
    objects in the statement.
    ■ PARALLEL (integer): The optimizer uses the degree of parallelism specified by 
    integer.


    In the following example, the optimizer calculates the degree of parallelism. The 
    statement always runs in parallel.
    SELECT /*+ PARALLEL */ last_name
      FROM employees;
    In the following example, the optimizer calculates the degree of parallelism, but that 
    degree may be 1, in which case the statement will run serially.
    SELECT /*+ PARALLEL (AUTO) */ last_name
      FROM employees;

    展开全文
  • oracle多cpu并行查询

    千次阅读 2011-12-20 11:03:44
    t_medflow 拥有1千万数据 FlowId是主键 拥有主键索引 统计总数量 select count(FLOWID) from t_medflow t 用时:1.5秒 select count(*) from t_medflow t 用时:1.46秒 次测试效率差不多   添加...

    t_medflow  表拥有1千万数据 FlowId是主键 拥有主键索引

    统计总数量

    select count(FLOWID) from t_medflow t

    用时:1.5秒

    select count(*) from t_medflow t

    用时:1.46秒

    多次测试效率差不多

     

    添加条件查询

    select count(FLOWID) from t_medflow t where pname like '%中%'

    用时:25S   [对与一个查询来说统计总数量就用了25秒,基本用户体验极差]

     

    分析统计下表 防止走错的执行计划

    ANALYZE TABLE t_medflow COMPUTE STATISTICS;

    在查

    select count(FLOWID) from t_medflow t where pname like '%中%'

    用时:22秒

     

    使用多cpu并行处理

    select /*+ PARALLEL(t_medflow,14)  */ count(*) from t_medflow
    where pname like '%中%'

    用时 :1.7秒 [我的数据库环境是4CPU]

    解决count(*)慢的问题了

    cpu设置的数量根据实际cpu的数量定  不要超过4倍cpu 反而效率低

     

    使用索引 并行效率很低 不知道什么问题

    select /*+ PARALLEL_INDEX(t_medflow, PK_FLOWID, 10)   */ count(*) from t_medflow
    where pname like '%中%'

     


     

     

     

    展开全文
  • oracle 并行并行度篇

    千次阅读 2013-12-24 11:27:26
    oracle 并行(并行度) 操作内并行使用的slave process数量就是并行度dop,index&table都有dop 作为默认操作并行度default 1表示不使用并行处理 SQL> create table t1 (a int) parallel 6; Table created. ...

    oracle 并行(并行度)


    操作内并行使用的slave process数量就是并行度dop,index&table都有dop 作为默认操作并行度default 1表示不使用并行处理

    SQL> create table t1 (a int) parallel 6;

    Table created.

    SQL> select degree from user_tables where table_name=’T1′;

    DEGREE
    ———-
    6

    SQL> alter table t1 parallel 3;

    Table altered.

    SQL> select degree from user_tables where table_name=’T1′;

    DEGREE
    ———-
    3
    *禁用alter table(index) parallel 1 (noprallel)
    #create 时候使用parallel不仅会在创建table&index时使,后续的操作ddl,dml也会使用(如果只想建表时使用,建好后修改)

    SQL> create table t2 (a int) parallel;(未指定并行度)

    Table created.

    SQL> select degree from user_tables where table_name=’T2′;

    DEGREE
    ———-
    DEFAULT ~~~这样使用default并行度=(cpu_count*parallel_threads_per_cpu)

    SQL> show parameter cpu_count

    NAME TYPE VALUE
    ———————————— ———– ——————————
    cpu_count integer 2
    SQL> show parameter parallel_thread

    NAME TYPE VALUE
    ———————————— ———– ——————————
    parallel_threads_per_cpu integer 2
    SQL>

    SQL> insert into t2 values (1);

    1 row created.

    SQL> commit;

    Commit complete.

    SQL> set autotrace trace exp
    SQL> select * from t2;

    Execution Plan
    ———————————————————-
    Plan hash value: 1216610266

    ——————————————————————————–
    ——————————

    | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time
    | TQ |IN-OUT| PQ Distrib |

    ——————————————————————————–
    ——————————

    | 0 | SELECT STATEMENT | | 1 | 13 | 2 (0)| 00:00:01
    | | | |

    | 1 | PX COORDINATOR | | | | |
    | | | |

    | 2 | PX SEND QC (RANDOM)| :TQ10000 | 1 | 13 | 2 (0)| 00:00:01
    | Q1,00 | P->S | QC (RAND) |

    | 3 | PX BLOCK ITERATOR | | 1 | 13 | 2 (0)| 00:00:01
    | Q1,00 | PCWC | |

    | 4 | TABLE ACCESS FULL| T2 | 1 | 13 | 2 (0)| 00:00:01
    | Q1,00 | PCWP | |

    ——————————————————————————–
    ——————————

    Note
    —–
    – dynamic sampling used for this statement

    SQL>
    SQL> set autotrace off
    SQL> select process from v$pq_tqstat;

    no rows selected

    可以看到 用set autotrace 后 查v$pq_tqstat norows ,这是2个原因造成的
    1.set autotrace的原理
    开启autotrace时候 一个process对应 2个 session
    通常情况下是一个 session对应一个 server processs,但SErVER PORCESSS 可以对应多个session

    SQL> conn xh/a831115
    已连接。
    SQL> select distinct sid from v$mystat;

    SID
    ———-
    144

    SQL> select username, sid, serial#, server, paddr, status from v$session where s
    id=144;

    USERNAME SID SERIAL# SERVER PADDR STATUS
    —————————— ———- ———- ——— ——– ——–

    XH 144 27 DEDICATED 20E4CC3C INACTIVE

    SQL> select program ,addr from v$process where addr=(select paddr from v$session
    where sid=144);

    PROGRAM ADDR
    —————————————————————- ——–
    ORACLE.EXE (SHAD) 20E4CC3C

    SQL> select sid from v$session where paddr=’20E4CC3C’;

    SID
    ———-
    144

    SQL> set autotrace on
    SQL> select sid from v$session where paddr=’20E4CC3C’;

    SID
    ———-
    144
    154

    2.v$pq_tqstat只提供当前session最后一次并行执行sql语句的信息
    综合2点可以看出set autotrace 最后一个session 是 执行计划的,所以v$pq_tqstat为no rows

    所以 直接执行
    SQL> select * from t2;

    A
    ———-
    1

    SQL> SELECT dfo_number, tq_id, server_type, process, num_rows, bytes
    2 FROM v$pq_tqstat
    3 ORDER BY dfo_number, tq_id, server_type DESC, process;

    DFO_NUMBER TQ_ID SERVER_TYP PROCESS NUM_ROWS BYTES
    ———- ———- ———- ———- ———- ———-
    1 0 Producer P000 1 24
    1 0 Producer P001 0 20
    1 0 Producer P002 0 20
    1 0 Producer P003 0 20
    1 0 Consumer QC 1 84

    可以看到启动了4个slave process,这4个process=cpu_count*parallel_threads_per_cpu(2*2)

    相关的hint:
    parallel(10g,11g),no_parallel(10g,11g),parallel_index(10g,11g,9i),no_parallel_index(10g,11g)
    noparallel(9i),noparallel_index(9i)
    ##需要知道并行hint只是告诉优化器可以使用并行,但不是强制使用并行一切还是从cost出发(重点)
    declare
    begin
    for i in 1..1000 loop
    insert into t2 values(i);
    end loop;
    commit;
    end;

    SQL> explain plan set statement_id=’t2_pp’ for select /*+parallel(t2 2)*/* from t2 where a>900;

    Explained.

    SQL> create index t2_id on t2 (a);

    Index created.

    SQL> explain plan set statement_id=’t2_id’ for select /*+parallel(t2 2)*/* from t2 where a>900;

    Explained.

    SQL> set linesize 1000
    SQL> select * from table (dbms_xplan.display(null,’t2_pp’));

    PLAN_TABLE_OUTPUT
    ————————————————————————————————————————————————————————————————————————————————————————————————————
    Plan hash value: 1216610266

    ————————————————————————————————————–
    | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | TQ |IN-OUT| PQ Distrib |
    ————————————————————————————————————–
    | 0 | SELECT STATEMENT | | 100 | 1300 | 2 (0)| 00:00:01 | | | |
    | 1 | PX COORDINATOR | | | | | | | | |
    | 2 | PX SEND QC (RANDOM)| :TQ10000 | 100 | 1300 | 2 (0)| 00:00:01 | Q1,00 | P->S | QC (RAND) |
    | 3 | PX BLOCK ITERATOR | | 100 | 1300 | 2 (0)| 00:00:01 | Q1,00 | PCWC | |
    |* 4 | TABLE ACCESS FULL| T2 | 100 | 1300 | 2 (0)| 00:00:01 | Q1,00 | PCWP | |
    ————————————————————————————————————–

    PLAN_TABLE_OUTPUT
    ————————————————————————————————————————————————————————————————————————————————————————————————————

    Predicate Information (identified by operation id):
    —————————————————

    4 – filter(“A”>900)

    Note
    —–
    – dynamic sampling used for this statement

    20 rows selected.

    SQL> select * from table (dbms_xplan.display(null,’t2_id’));

    PLAN_TABLE_OUTPUT
    ————————————————————————————————————————————————————————————————————————————————————————————————————
    Plan hash value: 523330294

    ————————————————————————–
    | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
    ————————————————————————–
    | 0 | SELECT STATEMENT | | 100 | 1300 | 2 (0)| 00:00:01 |
    |* 1 | INDEX RANGE SCAN| T2_ID | 100 | 1300 | 2 (0)| 00:00:01 |
    ————————————————————————–

    Predicate Information (identified by operation id):
    —————————————————

    PLAN_TABLE_OUTPUT
    ————————————————————————————————————————————————————————————————————————————————————————————————————

    1 – access(“A”>900)

    Note
    —–
    – dynamic sampling used for this statement

    17 rows selected.

    可以看到 即使在使用并行与走index时cost一样时候还是选择了走index(cost表面一样,若使用trace alter session set events ’10053 trace name context forever’;看的更详细,并行cpu cost要高些,所以选择了走index,所以hint parallel,parallel_index只是告诉query optimizer
    可以考虑并行 不是强制使用)

    文章作者:xuhui
    本文地址:http://xuguohao.gotoip55.com/?p=182
    版权所有 © 转载时必须以链接形式注明作者和原始出处!


    展开全文
  • oracle数据泵并行导入导出脚本
  • oracle并行

    2012-08-14 18:05:55
    oracle并行,具体描述的是ORACL并行的原理,以及应用,英文文献
  • Oracle数据库版本11.2.0.4,最近发现有一条SQL很慢,执行一次要20s,GG_FUNCTION_LOCATION这张表很大,发现这张表有并行度,修改并行度之后,执行计划变了走索引了,执行时间为2s。说明一个问题,当并行度的...

        Oracle数据库版本11.2.0.4,最近发现有一条SQL很慢,执行一次要20多s,GG_FUNCTION_LOCATION这张表很大,发现这张表有并行度,修改并行度之后,执行计划变了走索引了,执行时间为2s。说明一个问题,当表有并行度的时候,SQL倾向于走索引。

    有并行度的执行计划:

    ---------------------------------------------------------------------------------------------------------------------------------------------------------

    | Id  | Operation                      | Name                      | Rows  | Bytes | Cost (%CPU)| Time     | Pstart| Pstop |    TQ  |IN-OUT| PQ Distrib |
    ---------------------------------------------------------------------------------------------------------------------------------------------------------
    |   0 | MERGE STATEMENT                |                           |       |       |   608 (100)|          |       |       |        |      |            |
    |   1 |  MERGE                         | GG_FUNCTION_LOCATION      |       |       |            |          |       |       |        |      |            |
    |   2 |   PX COORDINATOR               |                           |       |       |            |          |       |       |        |      |            |
    |   3 |    PX SEND QC (RANDOM)         | :TQ10002                  |   704 |   492K|   608   (1)| 00:00:08 |       |       |  Q1,02 | P->S | QC (RAND)  |
    |   4 |     VIEW                       |                           |       |       |            |          |       |       |  Q1,02 | PCWP |            |
    |*  5 |      HASH JOIN RIGHT OUTER     |                           |   704 |   492K|   608   (1)| 00:00:08 |       |       |  Q1,02 | PCWP |            |
    |   6 |       PX RECEIVE               |                           |     1 |   308 |   555   (1)| 00:00:07 |       |       |  Q1,02 | PCWP |            |
    |   7 |        PX SEND HASH            | :TQ10001                  |     1 |   308 |   555   (1)| 00:00:07 |       |       |  Q1,01 | P->P | HASH       |
    |   8 |         PX BLOCK ITERATOR      |                           |     1 |   308 |   555   (1)| 00:00:07 |   KEY |   KEY |  Q1,01 | PCWC |            |
    |*  9 |          TABLE ACCESS FULL     | GG_FUNCTION_LOCATION      |     1 |   308 |   555   (1)| 00:00:07 |   KEY |   KEY |  Q1,01 | PCWP |            |
    |  10 |       BUFFER SORT              |                           |       |       |            |          |       |       |  Q1,02 | PCWC |            |
    |  11 |        PX RECEIVE              |                           |   704 |   280K|    53   (0)| 00:00:01 |       |       |  Q1,02 | PCWP |            |
    |  12 |         PX SEND HASH           | :TQ10000                  |   704 |   280K|    53   (0)| 00:00:01 |       |       |        | S->P | HASH       |
    |  13 |          PARTITION LIST SINGLE |                           |   704 |   280K|    53   (0)| 00:00:01 |   KEY |   KEY |        |      |            |
    |  14 |           PARTITION LIST SINGLE|                           |   704 |   280K|    53   (0)| 00:00:01 |   KEY |   KEY |        |      |            |
    |* 15 |            TABLE ACCESS FULL   | GG_FUNCTION_LOCATION_TEMP |   704 |   280K|    53   (0)| 00:00:01 |   KEY |   KEY |        |      |            |
    ---------------------------------------------------------------------------------------------------------------------------------------------------------

    去掉表并行度之后的执行计划:
    --------------------------------------------------------------------------------------------------------------------------------------
    | Id  | Operation                             | Name                         | Rows  | Bytes | Cost (%CPU)| Time     | Pstart| Pstop |
    --------------------------------------------------------------------------------------------------------------------------------------
    |   0 | MERGE STATEMENT                       |                              |       |       |     7 (100)|          |       |       |
    |   1 |  MERGE                                | GG_FUNCTION_LOCATION         |       |       |            |          |       |       |
    |   2 |   VIEW                                |                              |       |       |            |          |       |       |
    |   3 |    NESTED LOOPS OUTER                 |                              |     1 |   625 |     7   (0)| 00:00:01 |       |       |
    |*  4 |     TABLE ACCESS BY GLOBAL INDEX ROWID| GG_FUNCTION_LOCATION_TEMP    |     1 |   297 |     4   (0)| 00:00:01 | ROWID | ROWID |
    |*  5 |      INDEX RANGE SCAN                 | IDX_GG_FL_TEMP_PART_ORDER_ID |     3 |       |     3   (0)| 00:00:01 |       |       |
    |*  6 |     TABLE ACCESS BY GLOBAL INDEX ROWID| GG_FUNCTION_LOCATION         |     1 |   328 |     3   (0)| 00:00:01 | ROWID | ROWID |
    |*  7 |      INDEX UNIQUE SCAN                | PK_GG_FUNCTION_LOCATION      |     1 |       |     2   (0)| 00:00:01 |       |       |
    --------------------------------------------------------------------------------------------------------------------------------------

    展开全文
  • Oracle高可靠并行集群安装排错.pdf
  • 主要介绍了Oracle并行操作的并行查询技术,需要的朋友可以参考下
  • Oracle9i的并行处理机制,oracle官方资料。
  • Oracle并行执行

    2012-02-09 23:55:05
    Oracle并行执行
  • oracle 11g 并行DML

    千次阅读 2013-08-11 16:20:15
    oracle11g 并行DML(PDML) 并行DML应用在决策支撑系统(decision support system DSS)环境时,对于访问大对象时,可扩展性和性能有灰常显著的效果。 不能把PDML当成提高OLTP应用速度的一个特性。PDML在大型数据...
  • Oracle开启并行

    2019-08-08 15:26:52
    并行Oracle为了提高大数据量的运算效率而提供进程协作技术,它可以让个CPU同时处理一个计算任务,充分使用系统资源,提高计算效率。 什么操作支持并行 大部分的DML(insert/update/delete/merge)、DDL、Query都...
  • 正在看的ORACLE教程是:用Oracle并行查询发挥CPU的威力。参数 让我们进一步看看CPU的数量是如何影响这些参数的。 参数fast_start_parallel_rollback Oracle并行机制中一个令人兴奋之处是在系统崩溃时调用并行回滚...
  • 客户这边的ExaData服务器,对运单(5000万记录,90个字段,60G数据)创建索引,索引字段包含6列,并行度开到64,创建索引耗时竟然只消耗13秒多点,把俺惊讶的……  资源来源:...
  • oracle的Parallel 并行技术  对于一个大的任务,一般的做法是利用一个进程,串行的执行,如果系统资源足够,可以采用parallel技术,把一个大的任务分成若干个小的任务,同时启用n个进程/线程,并行的处理这些小的...
  • 经过第一篇文章《Oracle 中的并行系列(一)》的介绍,我们对Oracle中的并行有了大致的了解。但是实际使用并行的过程中我们可能会遇到很问题,比如可能还会遇到数据倾斜 、并行降级、并行失效、分发方式不合理、...
  • 并行处理的思想就是将单个任务分解为个更小的单元。不是通过一个进程完成所有工作,而是将任务并行化而使个进程同时在更小的单元上运行。这可以极大地提高性能和最佳地利用系统。然而,并行处理的最关键部分是...
  • Oracle如何禁止并行

    2019-07-06 23:35:50
    PURPOSE ------- To explain how to disable Parallel Execution on Session/System level SCOPE & APPLICATION ------------------- DBA's and Support Analysts ...Disable Parallel Exe...
  • Oracle DBA在某些场景下进行SQL优化,会选择使用并行以消耗更系统资源为代价,来提升SQL语句的响应时间。这些场景大部分时候是数据仓库或者DSS(决策支持系统)类似的数据密集行操作,当然部分在线事务处理系统...
  • Oracle 数据库的并行操作特性 其本质上就是强行榨取除数据库服务器空闲资源 主要 是 CPU 资源对一些高负荷大数据量数据进行分治处理 并行操作是一种非确定性的优化 策略在选择的时候需要小心对待目前使用并行操作...
  • 这篇文章主要介绍了 oracle 并行操作的并行查询技术 ,需要的朋友可以参考下 oracle 数据库的并行操作特性其本质上就是强行榨取除数据库服务器空闲资源主要 是 cpu 资源对一些高负荷大数据量数据进行分治处理并行操作...
  • Oracle Parallel 并行处理

    2011-07-07 17:21:41
    oracle中的并行处理,还是值得一看的!
  • oracle hint 和 并行

    千次阅读 2016-08-18 10:49:14
    1、给优化器多出一种选择 种类: 单表 多表 子查询 整个SQL语句 2、HINT 指定表名不能带上所在SCHEMA名 如果有别名应该使用别名 3、HINT生效的范围仅限于本身所在的查询块(QUERY BLOCK) 如在查询块外则...
  • oracle使用parallel并行线程查询

    千次阅读 2017-05-11 13:39:00
    insert into tmp (select /*parallel (a, 4)*/ * from plsuer.as_cdrindex_info_h partition(P_20170430) where temp = 10143); 这条语句是使用4个线程执行当前sql
  • Oracle 并行操作

    万次阅读 2016-04-22 12:22:53
    这 时提升性能的另一种方法就应运而生,也就是并行处理——同时利用个 CPU进行工作。正统的理论界认为,企业的数据库有两种类型,OLTP 和 OLAP,前者用于业务处理,其 特点是大量的运行时间很短的事务型
  • Oracle 并行处理

    千次阅读 2013-08-03 17:48:56
    Oracle 连接 Oracle 锁与锁争用(一) Oracle 并行处理  2013-03-30 12:25:25| 分类: Oracle | 标签:并行  |字号大中小 订阅 在一个串行的执行环境中,由单个进行程或...
  • oracle 并行原理

    千次阅读 2013-09-17 16:26:19
    oracle并行是一个很好的机制,但是他是不是一直是有效的了,那么我们需要了解它的一些细节,本篇结合官方文档,简单的描述了oracle的并行原理,希望对大家有帮助

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 71,949
精华内容 28,779
关键字:

oracle多表并行