熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

從調優強迫症中恢復過來

2013-11-13 22:18:14  來源: Oracle 
從調優強迫症中恢復過來

  性能調優專家Gaja Krishna Vaidyanatha想要幫助那些受到他們稱之為調優強迫症(CTD)困擾的數據庫管理員們擺脫痛苦Vaidyanatha是咨詢公司的所有人他還是幾本Oracle書籍的作者其中有《Oracle性能調優》創造了許多術語來描述那些數據庫管理員們都在使用的一些偶然發現的技術在下個月奧蘭朵召開的IOUG Live! 會議演講中Vaidyanatha會談論一些他用來探明性能問題的特殊方法與Vaidyanatha進行了討論並且提前對他的陳述作個介紹

  調優強迫症是否意味著數據庫管理員可以有效地工作呢?還是不能呢?

  GKV:數據庫管理員如果得了調優強迫症的話就不能有效地工作了我在年裡推薦過的一些方法中我發明了調優強迫症這個詞我正在編寫我的第一本書在十一月的一個漆黑的夜晚我問我自己該如何輕松地表達這個問題——數據庫管理員們對性能調整調整調整卻看著不想關的事情現在很多人都使用了這個詞語但是這個意思卻實際上發生了變化我聽見人們使用它來表達沒有做某些事情的意思這個表述的全部想法就是幫助人們去戰勝它——不僅僅是對Oracle g而且包括所有的Oracle版本

  有沒有一些數據庫管理員應該遵循的標准?數據庫管理員如何才能知道什麼時候性能已經是足夠好了?

  GKV:你得定義響應時間目標一旦響應時間目標達到了性能就足夠好了這就是問題的症結所在——人們沒有定義目標他們認為性能調優具有只有調優的魔法才具有的一種令人深陷其中的魔力我對於性能管理的推理就是你已經得到了有關這個問題的精確的證據這也是驅使你去解決問題的關鍵——並不緊緊是遵循一大堆的最好的實踐方案你不能物品的干洗名單進行調整我的底線是:讓我們找出問題所在讓我們用數學來驅動我們的所作所為而不是某些觀點或者專家的令人迷惑的技術

  什麼是最常見的性能問題?

  GKV:一個查詢運行得太慢或者一個任務運行得太慢問題是什麼導致了這麼慢很多人都沒有花時間去找出原因他們把時間花費在改變事情你可以更改八件事情然後問題就消失了你是解決了它還是把它偽裝過去了?問題還會回來的如果你沒有使用數學解決方案就是不可重復的你也不能使用一個一致的方法來解決性能問題它總是或者成功或者失敗測試糾正錯誤

  什麼是數學的方法?

  GKV:使用底層的追蹤方法去找出應用程序將時間花在了哪裡寫一個追蹤語句並對其進行分析之後事情就很簡單了你可以發現你花了%的時間在I/O上那麼你就會問自己為什麼花了那麼長時間在這上面

  你在不同的Oracle版本中看到了不同的問題出現嗎?

  GKV:是的你一定會遇到某些事情在一個版本中運行良好但是同樣的應用程序在升級之後就不工作了就是因為數據庫管理系統發生了變化優化器計劃也改變了有時候引入一些新的參數有上百個參數擺弄這一點通常是好事但是一旦人們開始管理上百個數據庫人們就不會有時間去擺弄上百個東西了優化器正在逐漸成熟取代了調整這些參數的一部分工作大多數的時間裡在不同的版本之間問題的存在是因為bug或者缺乏某項應用程序需要的功能

  g中有哪些用來解決特定的性能問題的以前版本中沒有的特性?

  GKV:很多個特性一些處理數據收集例如g中的歷史收集——自動負載倉庫作為數據收集的一部分還有另外一個特性活動會話歷史它是流入AWR的一個輸入流一旦你開始收集數據你需要某些種類的分析引擎現在這就是可用的了——它叫做自動數據庫診斷監控器那些都是Oracle的一些新東西可以幫助你來了解是什麼花費了時間而不是僅僅看著比率人們總是希望能夠找到尚方寶劍並且改變它但是尚方寶劍實際上是不存在的都是邏輯的可重復的精確的方法——由響應時間驅動g為數據庫管理員提供了收集和分析的功能用這些功能數據庫管理員可以走上了解核心問題的正確道路

  什麼是最常見的調優誤區或者錯誤的概念?

  GKV:很多人都試圖調整數據庫環境自身而不是首先看看應用程序這就是尚方寶劍中的一部分數據庫是簡單的——改變參數並重新啟動你就完成了一次修改應用程序的調整會花費更多的力氣——找出應用程序的組件就是造成問題阻塞的開端然後是找出問題所在的實際工作然後是分析它最後再解決它整個過程要遵守規則並且耗費體力但是不是一個長期的拉鋸戰如果你夢想揮舞著魔法棒你就不會贊成這種方法你之前曾試過並且也期望現在能夠發生同樣的事情但是參數不一樣了或者它們因為不再有關系而產生作用查看響應時間的努力背後的基本目標就是讓人們看看正確的數據讓人們摒棄查看洗衣單的老方法用人力去每天看個數據庫是不可能的即使是你說所以我們使用監控軟件啊那麼如果它拋出個警告哪一個才是最重要的?問問自己有沒有遇到性能問題也就是有沒有遇到響應時間問題從這個角度出發再來看看

  最好的分析就像你去看醫生你說你的右腳疼如果醫生說他需要對你做一個徹底的掃描並且化驗血液你就會想為什麼我們不先看看我的右腳呢?你也許會置疑醫生的人品這就是古老的方法我會在每次出現問題的時候都做血液測試CT掃描還有MRI我們不需要只是因為腳疼就做徹底的血液化驗這就是我們想要說的


From:http://tw.wingwit.com/Article/program/Oracle/201311/18726.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.