实例演示使用并行和非并行选项的性能差异(一)

2014-11-24 16:59:41 · 作者: · 浏览: 0

比较direct方式使用并行和非并行选项的性能差异。

并行测试

创建测试表

create table sqlldr_paral

nologging

PARTITION BY HASH (sfzh)

(partition p1 tablespace users , partition p2tablespace zdry_tbs2 )

AS SELECT *FROM sfxx2 where 1=2 ;

sqlldr_paral.ctl

LOAD DATA

INFILE 'd:\flatfile\flatfile.dat'

APPEND

INTO TABLE sqlldr_paral

fields terminated by X'23'

TRAILING NULLCOLS

(zj,

…字段太多省略

cjdwdm)

sqlldr_paral.par

USERID=zdrygk/zdrygk

CONTROL='d:\flatfile\sqlldr_paral.ctl'

DATA='d:\flatfile\flatfile.dat'

LOG='d:\flatfile\sqlldr_paral.log'

DIRECT=true

parallel=true

ERRORS=10000

执行

D:\flatfile>sqlldrparfile=d:\flatfile\sqlldr_paral.par

SQL*Loader: Release 11.2.0.1.0 - Production onMon Jan 7 23:21:42 2013

Copyright (c) 1982, 2009, Oracle and/or itsaffiliates. All rights reserved.

Load completed - logical record count 3022375.

sqlldr_paral.log

Control File: d:\flatfile\sqlldr_paral.ctl

Data File: d:\flatfile\flatfile.dat

BadFile: d:\flatfile\flatfile.bad

DiscardFile: none specified

(Allowall discards)

Number to load: ALL

Number to skip: 0

Errors allowed: 10000

Continuation: none specified

Path used: Direct- with parallel option. -----这里指定了并行选项

Table SQLLDR_PARAL, loaded from every logicalrecord.

Insert option in effect for this table: APPEND

TRAILING NULLCOLS option in effect

Table SQLLDR_PARAL:

3017264Rows successfully loaded.

5111Rows not loaded due to data errors.

0 Rows not loaded because all WHEN clauseswere failed.

0 Rowsnot loaded because all fields were null.

Dateconversion cache disabled due to overflow (default size: 1000)

Partition P1: 1509091 Rows loaded.

Partition P2: 1508173 Rows loaded.

Bind array size not used in direct path.

Column array rows : 5000

Stream buffer bytes: 256000

Read buffer bytes: 1048576

Total logical records skipped: 0

Total logical records read: 3022375

Total logical records rejected: 5111

Total logical records discarded: 0

Total stream buffers loaded by SQL*Loader mainthread: 1301

Total stream buffers loaded by SQL*Loader loadthread: 3901

Run began on Mon Jan 07 23:21:42 2013

Run ended on Mon Jan 07 23:22:18 2013

Elapsed time was: 00:00:35.91

CPU time was: 00:00:25.79

非并行测试

创建测试表

create table sqlldr_nopal

nologging

PARTITION BY HASH (sfzh)

(partition p1 tablespace users , partition p2tablespace zdry_tbs2 )

AS SELECT *FROM sfxx2 where 1=2 ;

sqlldr_nopar.ctl

LOAD DATA

INFILE 'd:\flatfile\flatfile.dat'

APPEND

INTO TABLEsqlldr_nopar

fields terminated by X'23'

TRAILING NULLCOLS

(zj,

…字段太多省略

cjdwdm)

sqlldr_nopar.par

这里删除了并行选项

USERID=zdrygk/zdrygk

CONTROL='d:\flatfile\sqlldr_nopar.ctl'

DATA='d:\flatfile\flatfile.dat'

LOG='d:\flatfile\sqlldr_nopar.log'

DIRECT=true

ERRORS=10000

执行

D:\flatfile>sqlldrparfile=d:\flatfile\sqlldr_nopar.par

SQL*Loader: Release 11.2.0.1.0 - Production onMon Jan 7 23:20:54 2013

Copyright (c) 1982, 2009, Oracle and/or itsaffiliates. All rights reserved.

Load completed - logical record count 3022375.

sqlldr_nopar.log

Control File: d:\flatfile\sqlldr_nopar.ctl

Data File: d:\flatfile\flatfile.dat

BadFile: d:\flatfile\flatfile.bad

DiscardFile: none specified

(Allowall discards)

Number to load: ALL

Number to skip: 0

Errors allowed: 10000

Continuation: none specified

Path used: Direct ----这里只是指定了直接路径加载

Table SQLLDR_NOPAR, loaded from every logicalrecord.

Insert option in effect for this table: APPEND

TRAILING NULLCOLS opti