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

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

oracle怎么開并行 oracle的sql加并行

如何配置Oracle并行處理

Oracle試圖自動化系統(tǒng)配置來使并行操作的性能最大化。然而,仍然有許多手工調(diào)整的空間,我們可以調(diào)整數(shù)據(jù)庫,優(yōu)化SQL并行性能。

創(chuàng)新互聯(lián)成立與2013年,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都做網(wǎng)站、成都網(wǎng)站設(shè)計、成都外貿(mào)網(wǎng)站建設(shè)網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元上黨做網(wǎng)站,已為上家服務(wù),為上黨各地企業(yè)和個人服務(wù),聯(lián)系電話:18980820575

判斷并行度

合適的并行度DOP對于良好的并行性能很關(guān)鍵。Oracle會按如下方式設(shè)定DOP:

1、如果指定或請求了并行執(zhí)行,但是沒有指定DOP,默認DOP會設(shè)置為該系統(tǒng)上CPU內(nèi)核數(shù)量的兩倍。對于RAC系統(tǒng),DOP值會是整個集群內(nèi)核數(shù)量的兩倍。默認值是由配置參數(shù)“PARALLEL_ THREADS_PER_CPU”控制的。

2、對于Oracle 11g R2之后的版本,如果“ PARALLEL_DEGREE_POLICY”被設(shè)置為“AUTO”,Oracle將根據(jù)被執(zhí)行的運行性質(zhì)和涉及對象的大小自動調(diào)整DOP值。

3、如果“PARALLEL_ADAPTIVE_MULTI_USER”被設(shè)置為“TRUE”,Oracle將基于該系統(tǒng)的整個負載調(diào)整DOP。當系統(tǒng)承受更重的負載時,DOP值將會減少。

4、在Oracle 11g或者更高版本中,如果“PARALLEL_IO_CAP ”被設(shè)置為TRUE,Oracle將把DOP限制為IO子系統(tǒng)可以支持的值。這些IO子系統(tǒng)限制可以通過“DBMS_RESOURCE_ MANAGER.CALIBRATE_IO”存儲過程計算。

5、DOP可以被指定到表或者索引一級,可以通過在“CREATE TABLE”,“CREATE INDEX”,“ALTER TABLE”或者“ALTER INDEX”中使用“PARALLEL ”從句來實現(xiàn)。

6、“PARALLEL ”關(guān)鍵字可以被用來指定某個查詢中指定表的DOP。

7、不管任何其它設(shè)置,DOP不能超過“PARALLEL_MAX_SERVERS”可以支持的數(shù)量。對于大部分SQL語句,服務(wù)器數(shù)量需要是請求DOP的兩倍。

正如我們可以在圖13-4中看到的,超過優(yōu)化點增減DOP會導(dǎo)致進一步性能提升的失敗。然而,超過最佳優(yōu)化限制強行增加DOP值會對整個系統(tǒng)性能帶來重大的負面影響。盡管被并行化的SQL可能不會隨著DOP的增加而降低,但是該系統(tǒng)的負載會持續(xù)增加,而且會引起其它并發(fā)運行的SQL要遭受響應(yīng)時間降低的影響。

圖13-5展示了增加DOP會如何影響CPU利用率。當我們達到最優(yōu)DOP點時(該系統(tǒng)中的值大約是8),查詢時間的減少變的平緩了。然而,其它會話在等待CPU可用上花費的時間會持續(xù)增長。其它等待訪問CPU的會話將需要繼續(xù)等待,這會導(dǎo)致響應(yīng)時間變慢。

oracle 建索引怎么開啟并行?

建索引時,我們?yōu)榱私ㄋ饕欤瑫由喜⑿?,加上并行之后,此列索引就會是并行了。訪問有并行度的索引時,CBO可能可能會考慮并行執(zhí)行,這可能會引發(fā)一些問題,如在服務(wù)器資源緊張的時候用并行會引起更加嚴重的爭用。當使用并行后,需要把并行度改回來。\x0d\x0aSQL drop table test purge;\x0d\x0aSQL create table test as select * from dba_objects;\x0d\x0aSQL create index ind_t_object_id on test(object_id) parallel 4 ;\x0d\x0aSQL select s.degree\x0d\x0afrom dba_indexes s\x0d\x0awhere s.index_name = upper('ind_t_object_id');\x0d\x0aDEGREE\x0d\x0a----------------------------------------\x0d\x0a4\x0d\x0a\x0d\x0aSQL alter index ind_t_object_id noparallel;\x0d\x0a\x0d\x0aSQL select s.degree\x0d\x0afrom dba_indexes s\x0d\x0awhere s.index_name = upper('ind_t_object_id');\x0d\x0aDEGREE\x0d\x0a----------------------------------------\x0d\x0a1

oracle 并行模式(parallel)

一般表數(shù)據(jù)量比較大(超過100萬)時,可以使用parallel強制啟動并行度來提升查詢速度

用法:/*+parallel(table_short_name,cash_number)*/

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

比如:select /*+paralle(t,32)*/ from table t;?table_short_name使用別名,Parallel后面的數(shù)字,越大,執(zhí)行效率越高,一般用8,10,12,16,32。不過,數(shù)值越大,占用的資源也會相對增大。如果在查詢where后的條件有加索引查詢效率會大大提高。


網(wǎng)頁名稱:oracle怎么開并行 oracle的sql加并行
文章位置:http://weahome.cn/article/hjsddh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部