Oracle效能最佳化方法論的發展之二:基於OWI的效能最佳化方法論

531968912發表於2015-12-29
        OWI,Oracle Wait interface的簡稱。OWI的初始出現並不是作為效能最佳化的目的出現,而是出於除錯的目的,來明確當前正在發生什麼事情。當Oracle把OWI引入效能最佳化,資料庫效能最佳化方法論就出現了劃時代的飛躍,OWI之於Oracle效能最佳化的重要性再這麼強調都不過分。OWI方法論讓Oracle第一次跳出部件構成效能的視野,以一個旁觀者的角度或者業務流程的角度來考慮問題,使其和現實世界的基於流程協調的流程最佳化相符合。
        排隊和衝突是現實世界中時時刻刻普遍在發生的事件,我們吃飯要排隊,購物要排隊,上車要排隊,看病要排隊,甚至走路都要排隊。如果我們不想被擋在前面的人或者物堵牢,我們需要不斷的變換通道或者暴力進行拆除。我們的觀點不斷的發生衝突,我們的行為不斷髮生的發生衝突。Oracle OWI方法論充分的認識到了排隊和衝突是生活的主題,是資料庫流程的主題。特別典型的看醫生,每個人都會有切身體會,排隊掛號,排隊看醫生,排隊檢查,排隊拿藥,各種排隊合計3個小時,醫生看病處理不超過5分鐘。只要可以降低排隊時間,就可以提高效率,降低時間成本。OWI就是基於這個樸素的理念,只要使各種等待事件的消耗時間儘可能的低,就可以提高業務系統的效能。對於Oracle來說,OWI的發展就是儘可能的精細衡量等待事件,對於效能最佳化者而言,就是發現等待事件的原因並且儘可能降低或者消除它。
        OWI方法是快速解決Oracle效能的最有效方式,OWI的精準定位使效能最佳化不再需要到處進行衡量,某種程度上OWI方法論類似於故障處理的思路,處理焦點在區域性,使最佳化者不需要了解業務流程,不需要進行全域性流程的協調,降低了效能最佳化者的能力需求。
        至今為止,OWI方法依然是最為快速有效的效能最佳化方法。雖然如此,OWI由於其關注侷限性,具有以下缺陷,使其解決複雜的效能問題有些力不從心,更多的作用在突然變化的效能異變上。
        OWI事實上並不是從業務(流程)的角度看問題,而是從CPU的角度看問題,只要CPU一直處理忙碌之中,就假設效能是優異的。這個角度忽略在很多場合下CPU的處理效率才是效能問題的本源所在。OWI方法從本質上和命中率分析類似,都是眼睛向內看,一個是隻要我好,系統就好,一個只要我忙,系統就好,總體來說都缺乏流程的概念。OWI的使用如此之簡單,效果是如此之出色,使絕大部分效能最佳化者不再去關心流程,而僅僅關心發生效能問題的某一點,割裂業務流程之間的關係,使複雜的效能最佳化工作顧此失彼。
    
    

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

相關文章