国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > Oracle > 正文

在oracle中如何有效應(yīng)用時間的有限和無限

2024-08-29 13:35:10
字體:
供稿:網(wǎng)友
  Oracle的性能分析在過去的20年里已經(jīng)走了很長的一段路。這里首先提出“僅僅添加更多的資源”的方式,然后涉及比率分析,最后是等待事件分析的出現(xiàn)。但是那些方式都不完整或者足夠廣泛,所以在2001年我發(fā)表了一篇名為《Oracle響應(yīng)時間分析(RTA)》的論文。 RTA的文章同時提出并且具體描述了響應(yīng)時間中的兩個元素:服務(wù)時間和排隊時間。有關(guān)RTA的一個更加微妙的方面就是理解服務(wù)時間和排隊時間之間的關(guān)系,以及它們與操作系統(tǒng)之間是如何聯(lián)系的。  用戶感覺到的響應(yīng)時間是許多個相關(guān)系統(tǒng)的結(jié)果。Oracle服務(wù)器只是這些系統(tǒng)中的一個。花費在每個系統(tǒng)上的時間都可以劃分為服務(wù)時間和排隊時間。我們只能把所有的服務(wù)時間和所有的排隊時間加起來,來判定最終用戶的響應(yīng)時間。但是在現(xiàn)實生活中,有時候這些努力相對于結(jié)果來說并不值得……不是說完成起來極端困難。但是肯定值得我們?nèi)プ龅淖钚〉呐褪菑腛racle的角度獲取服務(wù)時間和排隊時間。此外,我們還可以獲得有關(guān)它如何與數(shù)據(jù)庫服務(wù)器的CPU子系統(tǒng)相聯(lián)系的細(xì)節(jié)。  讓我們看看基本的基于Oracle的響應(yīng)時間公式:  Rt = 終端用戶響應(yīng)時間 = Ts + Tw  Ts = 服務(wù)時間 = CPU 時間= Oracle 內(nèi)核代碼執(zhí)行時間  Tw = 排隊時間 = ORAt + TIERt  ORAt = Oracle等待時間 (包括從服務(wù)器進(jìn)程到Oracle客戶端進(jìn)程的時間,以及Oracle客戶端進(jìn)程的時間)  TIERt = 從Oracle客戶端進(jìn)程到終端用戶的時間。其中包括網(wǎng)絡(luò)服務(wù)器、網(wǎng)絡(luò)時間、瀏覽器時間等。  從分析響應(yīng)時間中我們可以穴道很多東西,其中一件就是服務(wù)時間有限,但是等待時間卻無限。每個CPU子系統(tǒng)都有一個最大的固定的可以提供的CPU能力。假如你的機(jī)器是一個CPU的,這個機(jī)器就可以提供每分鐘60個CPU秒的最大量。假如你的機(jī)器中有10個CPU,它就可以提供每分鐘600個CPU秒。這個環(huán)境對排隊時間來說絕對是不同的。  排隊時間是不固定的,并且只被工作負(fù)載所限制。假如工作負(fù)荷相對比較小,排隊時間就可能接近于0.但是當(dāng)工作負(fù)載不斷增加,排隊時間就會達(dá)到無限——它沒有限制。  有關(guān)排隊時間無限的說法提出了兩個我們需要思考的概念。首先,假如Oracle消耗了所有可用的CPU,那么要求更多的CPU就需要增加服務(wù)時間,同時也有可能增加Oracle等待時間。結(jié)果就是響應(yīng)時間的增加。這是不好的,非常不好。這意味著我們的解決方案需要仔細(xì)權(quán)衡它們是如何影響CPU子系統(tǒng)的。(這個概念在我的新論文《Oracle等待接口詳解》中有具體的解釋。)第二個概念就是我們現(xiàn)在有另一種方式來查看一個非常動態(tài)的系統(tǒng)。這不僅可以幫助我們理解系統(tǒng),還可以讓我們幫助其他人來理解潛在的非常復(fù)雜的基于Oracle的系統(tǒng)。  例如,考慮下面的圖。數(shù)據(jù)是從實際生活中的Oracle系統(tǒng)上收集到的。每個小時、響應(yīng)時間組件都會被收集并且總結(jié)。排隊時間從v$system_event中收集,服務(wù)時間是從v$sysstat中收集。通過查看這幅圖,假如性能是糟糕的,所有的非Oracle服務(wù)器體系組件都表明不是瓶頸,瓶頸就應(yīng)該是在Oracle服務(wù)器中了。通過以下的圖,我們可以推斷,IO子系統(tǒng)有很嚴(yán)重的瓶頸,或者鎖定/阻塞問題。也許2200左右就是CPU的瓶頸,但是剩余的時間肯定是IO瓶頸或者鎖定/阻塞問題。在oracle中如何有效應(yīng)用時間的有限和無限
點擊查看大圖
  讓我們更仔細(xì)地看一下。問題都集中在可用的Oracle消耗的操作系統(tǒng)的CPU能力百分比。仔細(xì)查看上述的圖形。我們從CPU子系統(tǒng)開始。因為在一個小時里面大概消耗了大約1000分鐘的最大CPU時間,我們知道那肯定至少有17個CPU.最糟糕的情況就是使用的CPU資源相當(dāng)于可用的CPU資源。這一點可以結(jié)合從上述圖形中的數(shù)字得到:  可用的CPU = 使用的CPU  X CPUs * 60 分鐘/小時 = 1000分鐘/小時  X CPUs = 1000分鐘/小時 / 60分鐘/小時  X CPUs = 16.67  所以,數(shù)據(jù)庫服務(wù)器上至少有17個CPU.假如我們從對操作系統(tǒng)的監(jiān)控中發(fā)現(xiàn),CPU的利用率在50%左右,大概是2200,我們還可以推斷出大概有34個CPU(16.67 X 2)。  現(xiàn)在讓我們把信息放在一起,這樣它們就有用了。請注重在午餐時間四周,Oracle每小時消耗的CPU時間達(dá)到1000分鐘。我們知道服務(wù)器可以每小時提供1000個CPU分鐘,在午餐時間,它提供的時間少于每小時500個CPU分鐘,用戶并不滿足這樣的性能。因此,我們可以推斷出排隊時間(例如,Oracle等待事件)并不是CPU相關(guān)的, 而是與I/O有關(guān)的,或者是相關(guān)鎖定/阻塞(例如排隊等待)。有力的信息!  我們知道理解和應(yīng)用Oracle響應(yīng)時間組件可以增加我們的性能威力。但是理解了Oracle服務(wù)時間是如何與CPU的操作系統(tǒng)相關(guān)聯(lián)的,就是另一個級別的了。在沒有理解Oracle從操作系統(tǒng)中消耗的可用的CPU的百分比的時候,我們就無法了解是否有足夠的CPU可用。對CPU百分比的了解可以讓我們的性能診斷更加準(zhǔn)確,可以得出更加有力的解決方案。理解了時間的有限和無限,不僅僅可以幫助你,還有你的同事,以及你需要影響的人們。
他們越好的理解這個情況,他們就越同意你的行動建議。換句話說,它使得你的性能分析更加有力,構(gòu)建了信任。這也是所有的數(shù)據(jù)庫治理員們都用得最多的。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 西藏| 灵宝市| 襄城县| 九龙城区| 鄂托克旗| 郸城县| 乳源| 曲沃县| 于田县| 房山区| 图木舒克市| 莫力| 易门县| 武邑县| 沂水县| 和静县| 肥西县| 凤凰县| 噶尔县| 郑州市| 台南县| 万年县| 武山县| 皮山县| 双鸭山市| 赤壁市| 翁牛特旗| 罗山县| 湘阴县| 钦州市| 临武县| 朝阳县| 门源| 藁城市| 嘉鱼县| 衡水市| 绥德县| 双桥区| 民乐县| 舞钢市| 疏附县|