通過圖表分析oracle的parallel效能

dawn009發表於2014-07-21
並行特性在資料庫裡對於效能的提升很有幫助,尤其是大批量的資料處理。今天對於並行的效能情況進行了簡單的圖表分析。

為了能夠比較合理的比較資料,對資料庫裡的2張大表進行了比對分析。
測試的場景有以下兩個。
1.並行生成dump檔案,比如一個大表有100G,使用並行,並行度為50 ,那麼很可能會生成50個dump檔案,每個dump檔案基本控制在2G左右。
2.使用並行做資料的append insert. 比如已經生成了50個dump檔案,每個dump檔案2G,那麼做並行插入的時候(dump資料還是一個一個插入,但是每次插入資料啟用並行度為 8)

--》並行生成dump檔案。
首先來看看總體的速度,採用並行後速度還是很可觀的。生成12G左右的dump檔案,花費的時間在14秒~21秒
按照這個速度,每秒的速度在571M~857M的範圍內,是相當快的。

使用兩個表MEMO和CHARGE,
CHARGE...                                     Elapsed: 00:00:14.37 
MO1_MEMO...                                   Elapsed: 00:00:21.88

表memo 
採用並行,並行度最高64,生成了64個dump檔案。Y座標是dump檔案的位元組數。可以看到表memo dump檔案基本都在200M~250M左右。啟用並行生成的資料也是比較平均的。



--表charge
在來看charge表。資料也是比較平均的。都在150M左右




--資料量並行分析
對於生成的dump檔案,大小基本是平均的,但是對於裡面包含的資料量情況還是有一些變化的,通過這個分析可以基本得到表裡的資料情況,發現潛在的碎片等問題
表MEMO 
對於memo,可以發現會有幾個dump檔案的資料量有明顯的降低,資料量大多保持在80-90玩左右。有幾個dump檔案只包含10萬條資料左右,但是dump檔案還是在200M左右。可能含有碎片等,需要做進一步的排查。


對於CHARGE表。資料分佈基本在30萬到60萬左右擺動。資料的分佈有一定的浮動。


--》資料的的append Insert
做資料的插入時,可以看到memo表的大體的趨勢是時間會有一定的延長。個別dump因為資料量減少,時間可能會短一些,但是趨勢還是隨著dump的資料逐漸並行插入,時間會有一定的提升。可能會有1.5-2倍的時間差。


為了驗證這一點,來看看charge表的情況,起初速度還保持在30秒,但是稍候會有主鍵的提升。基本到了60-70秒的樣子,


所以綜上所述,並行在日常工作中還是有很大的優勢的,可以極大的縮短一些工作時間,在資料的抽取中使用parallel,速度是很客觀的。
在資料的插入過程中,可能隨著dump檔案的個數增長,資料的插入效能會有一定的降低,但是都在可控範圍內。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29119536/viewspace-1223326/,如需轉載,請註明出處,否則將追究法律責任。

相關文章