真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Oracle中如何以NoLoggingAppend方式減少批量insert的redo_size

這篇文章將為大家詳細(xì)講解有關(guān)Oracle中如何以NoLogging Append方式減少批量insert的redo_size,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

為輝縣等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及輝縣網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、輝縣網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!

業(yè)務(wù)處理中,很多時(shí)候使用實(shí)表臨時(shí)表處理中間結(jié)果,而實(shí)表的Insert操作缺省會(huì)記錄redo log,針對(duì)此問題收集相關(guān)測(cè)試總結(jié)信息如下:

常見dml、ddl語句使用nologging選項(xiàng)所生成的redo和undo大小比較 

DDL/DML Operations

Direct-path

nologging

parallel

Noarchivelog Redo

Noarchivelog Undo

Archivelog Redo

Archivelog Undo


Insert into XXX select * from YYY

N

N

N

19076324

627240

18938620

612980


Alter table XXX nologging;

Insert into XXX select * from YYY;

N

Y

N

19085860

631584

18935548

612912


Insert /*+ append */ into XXX select * from YYY

Y

N

N

26628

4048(only metadata)

19145656

4048


Alter table XXX nologging;

Insert /*+ append */ into XXX select * from YYY

Y

Y

N

26868

4048(only metadata)

26836

4048


Create table XXX as select * from YYY

Y

N

N

77624

18500

19162220

15468


Create table XXX nologging as select * from YYY

Y

Y

N

52160

11176

52408

11248


Alter table XXX move nologging;

N

Y

N

36288

6208

36576

6208


Alter table XXX move;

N

N

N

39788

7288

19154024

5972


Create index XXX

N

N

N

21280

1864

3093616

1888


Create index XXX nologging

N

Y

N

22264

2208

22620

2232


update XXX set

N

N

N

122903212

47987880

122403692

47786680


Update /*+ parallel(5) */ XXX set

N

N

Y(Queries)

121629928

46706296

120818336

46466056


Alter table XXX nologging;

update XXX set

N

Y

N

123155288

48006404

110396512

41617700


Alter table XXX nologging;

update /*+ parallel(5) */ XXX set

N

Y

Y(Queries)

119748064

46152324

120205036

46261536


Alter session enable parallel dml

Update /*+ parallel(5) */ XXX set

N

N

Y(DML)

59846488

24680220

59740516

24611672


Alter table XXX nologging;

Alter session enable parallel dml

Update /*+ parallel(5) */ XXX set

N

Y

Y(DML)

59831756

24673396

59717116

24602628


delete XXX;

N

N

N

60684720

37650208

61770472

38254648


delete /*+parallel(5) */ XXX;

N

N

Y(Queries)

60685416

37650436

61988568

38461832


Alter table XXX nologging;

delete XXX;

N

Y

N

60684956

37650216

61989984

38460424


Alter table XXX nologging;

delete /*+parallel(5) */ XXX;

N

Y

Y(Queries)

60685092

37650224

61986156

38459172


Alter session enable parallel dml

delete /*+parallel(5) */ aabbn;

N

N

Y(DML)

65072896

40990412

61979216

38457372


Alter table XXX nologging;

Alter session enable parallel dml

delete /*+parallel(5) */ aabbn;

N

Y

Y(DML)

65073828

40998048

62022668

38500548


                 

結(jié)論:

1、insert into:非direct方式下noarchivelog和archivelog兩種模式均產(chǎn)生大量undo、redo;direct方式下noarchivelog模式均產(chǎn)生少量undo、redo;direct+logging方式下archivelog模式產(chǎn)生少量undo、大量redo;direct+nologging方式下archivelog模式產(chǎn)生少量undo、少量redo

2、create table as:CTAS本身就是一種direct的操作,CTAS+logging方式下noarchivelog模式產(chǎn)生少量redo、少量undo;CTAS+nologging方式下noarchivelog模式產(chǎn)生更少量redo、更少量undo;CTAS+logging方式下archivelog模式產(chǎn)生少量undo、大量redo;CTAS+nologging方式下archivelog模式產(chǎn)生少量undo、少量redo;

3、alter table ... move:nologging方式下noarchivelog模式產(chǎn)生少量undo、少量redo;nologging方式下archivelog模式產(chǎn)生少量undo、少量redo;logging方式下archivelog模式產(chǎn)生少量undo、大量redo

4、create index:logging+nologging方式下noarchivelog模式產(chǎn)生少量undo、少量redo;logging方式下archivelog模式產(chǎn)生少量undo、大量redo;nologging方式下archivelog模式產(chǎn)生少量undo、少量redo

5、update:enable parallel方式下,noarchivelog+ archivelog模式生成少量undo、少量redo;非enable parallel方式下,noarchivelog+ archivelog模式生成大量undo、大量redo

6、delete:任何組合都會(huì)生成大量undo、大量redo

其他參考列表:

1) Nologging到底何時(shí)才能生效? http://www.eygle.com/faq/Nologging&append.htm

2) Oracle 減少redo size的方法

非歸檔模式下:append能大量減少redo量。

   歸檔模式下:在表空間和數(shù)據(jù)庫級(jí)非force logging模式下,表如果是nologging,則append能大量減少redo量。

關(guān)于“Oracle中如何以NoLogging Append方式減少批量insert的redo_size”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。


名稱欄目:Oracle中如何以NoLoggingAppend方式減少批量insert的redo_size
URL標(biāo)題:http://weahome.cn/article/jhhcoh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部