Oracle學習筆記:parallel並行處理


  在使用oracel查詢時,可以通過並行提高查詢速度。例如:

select /*+parallel(a,6)*/ count(1) from table_name a;

  強行啟用並行度來執行當前SQL。加上這個說明之后,可以強行啟用Oracle的多線程處理功能,提高效率。但本身啟動這個功能,也是要消耗資源與性能的。所有,一般都會在返回記錄數大於100萬時使用,效果也會比較明顯。

  語法:

    /*+parallel(table_short_name, cash_number)*/

  可以加到insert、delete、update、select的后面來使用。

insert /*+ append parallel(a,6) */ into table_name a;

   開啟parallel功能(DML語句,用execute方式打開):

alter session enable parallel dml;

  parallel后面的數字越大,執行效率越高,與配置有關,增大到一定值,效果就不明顯了,通常使用8,10,12,16等。

  parallel用於多表:

    /*+parallel(a,10)(b,10)*/

  總結:

  雖然parallel並行處理能夠有效提高執行效率,但重點仍是要按照index的方法來提高效果,可以在執行之前,explain一下,查看SQL語句執行計划路線,實在沒辦法,再用parallel並行。

  特別在create table之后,考慮create index或primary key,不要過分依賴parallel並行。


 END 2018-08-15 09:16:09


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM