DML並行度限制

來源:互聯網
上載者:User

DML語句限制:


1.如果DML語句用到並行度,那無論是HINT還是直接在表上設定並行度,都必須要設定alter session enable parallel dml;的這步操作是必不可少的!


2.如果並行的表更新未提交,在此基礎上做任何操作無論更新還是查詢都會失敗,因此並行度的表其實還是有危險性的。從這裡至少得出一個結論,如果應用是多表分別插入帶並行度的表,並且是有事務性,需要最後一起提交的,這個應用一定會失敗!所以盡量避免把表本身的屬性設定為並行,這樣的話會留下隱患,還是建議應用如果一定要用並行度,用HINT做設定就好了,因此最好最後要做如下操作


SQL> alter table ljb_parallel noparallel;

Table altered


3.另外如果表中只是索引有並行度,並不存在錶帶並行度的問題,不提交繼續操作是不會報錯的。

SQL> insert into ljb_test select /*+parallel(a,4)*/ * from ljb_test a;


3.並行語句無論是DDL還是DML還是查詢並行,三個方式都會用到排序,如果使用者PGA設定不夠大,sort_area_size區不足,或者是使用者資料量過於龐大,或者說執行並行操作的次數過多,完全可能會導致大的排序動作,有可能出現大量排序在暫存資料表空間中進行,速度越來越慢,甚至出現暫存資料表空間不夠的錯誤!最後還發現,如果並行插入的時候,需要維護索引,那排序數量又會比無索引的情況大大增加許多!

1、需要進行排序的操作:

A、建立索引及重建索引;

B、涉及到索引維護的並行插入

C、order by或者group by儘可能對索引欄位排序)

D、Distinct

E、union all/intersect/minus

F、sort-merge join

G、analyze命令僅可能使用estamate而不是compute)

2、診斷及措施

Select * from v$sysstat where name like ‘%sort%’;

Sort(disk):要求Io去暫存資料表空間的排序數目

Sort(memory):完全在memory中完成的排序數目

Sort(rows):被排序的行數合計

Sortdisk)/ Sortmemory)<5%,如果超過5%,增加sort_area_size的值。

SELECT disk.Value disk,mem.Value mem,(disk.Value/mem.Value)*100 ratio FROM v$sysstat disk,v$sysstat mem WHERE mem.NAME=’sorts (memory)’ AND disk.NAME=’sorts (disk)’;



--查詢索引的並行度

SQL> select table_name,index_name,degree from user_indexes where table_name='LJB_PARALLEL';

TABLE_NAME INDEX_NAME DEGREE

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

LJB_PARALLEL IDX_LJB_PARALLEL 1


--查詢表的並行度設定

SQL> alter index IDX_LJB_PARALLEL parallel 4;

Index altered

SQL> select table_name,index_name,degree from user_indexes where table_name='LJB_PARALLEL';

TABLE_NAME INDEX_NAME DEGREE

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




本文出自 “無雙城” 部落格,謝絕轉載!

相關關鍵詞:
相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.