介紹
這篇文章討論了一些優化商業套裝軟件的機會。負責可接受應用性能的應用管理團隊成員可能是這篇文章討論受益最多的。這篇文章中主要集中在數據庫調優,所以數據庫管理員(DBA)和開發者可能發現這篇文章很有價值。我們將討論與這些產品和所考慮策略相關的基本調優問題,還有可能幫助你進行成功調優的技術建議。
通常在數據庫環境中發生變化的種類
這些變化是如何跟應用性能相關的
在數據庫環境中跟蹤變化的重要性
如何應用變化跟蹤的信息改善整個數據庫系統性能,可用性和穩定性
在今天競爭激烈的市場中,IT管理變化的能力是成功的關鍵。公司希望IT部門提供功能強大的,具有高可用性的和性能已優化的應用系統。當IT部門忽略主動地監測,分析和經常地報告系統性能時,系統性能將開始下降,并且最終用戶將開始遭受長的應用響應時間。因此IT的使用效率將大打折扣。這篇文章也將提供改善IT效率的具體方法。
變化是不可避免的
變化是復雜的企業數據庫和應用環境中唯一不變的特征。理解變化的結果和如何正確地管理它們,能夠幫助數據庫管理員,準備變化實施和測量這些變化給系統帶來的正面(或者是反面)影響。通常,有計劃地變化,管理員可以期望得到正面的結果,而沒有計劃地變化能夠對整個系統健康,引起意想不到的或負面的影響。舉一個有計劃地變化帶來性能改善的的例子,根據Oracle 10g PL/SQL的文檔,從Oracle 9iR2升級到Oracle 10g能夠產生2.5倍的中等程度的性能改善。然而,存在異常,大部分經驗豐富的DBA能夠記得OS或數據庫升級會引起主要的性能問題或故障。一般來說,有計劃地變化應該能夠改善系統,盡管偶爾對系統健康會發生非常大的負作用。IT部門快速發現并解決問題的能力,對于維護好的系統健康是至關重要的。在這篇文章中,衡量系統的健康狀況在如下幾個方面:功能性,可用性,擴展性,穩定性,管理性,安全性和性能。
變化是成功的關鍵
結當業務系統變得反應緩慢,沒有效率,過時,或者不可用時,這將減少有效操作業務的能力,對于公司產生的是消極影響。IT部門正在尋找一種方法,通過實施積極有計劃地變化的有效方式,改善整個系統健康,減少沒有計劃地變化所帶來的消極影響。一句話,業務必須不斷適應有效的操作,并且在市場中具有競爭力。
通常改善系統健康,可以有計劃地變化比如:OS升級,安全補丁,內存或者CPU升級和數據庫升級。實現這些變化是重要的,并且公司通常通過投資金錢和寶貴的人力資源研究和部署這些變化來估算風險,創建性能良好的系統環境,給最終用戶提供有效服務。正確地實施這種變化經常被看作一項投資,并帶來收益。最終用戶系統操作效率越高,用戶對業務的需求越滿足且生產力也越高,這就提高了公司產品和服務的質量,最終公司的股票值也就升上去了。
沒有計劃地變化會對系統健康產生不利的影響,例如一定字段的意外刪除或覆蓋,數據庫索引的刪除,啟動錯誤配置文件和人為錯誤的數據庫或監聽過程,包括程序bug和數據入口錯誤。
不管是有計劃地變化還是無計劃地變化,測量變化對于系統的影響很重要的。例如,當計劃硬件升級,負責該任務的IT部門將告訴管理部門升級能帶來哪些改善。管理部門將衡量這些改善和實施變化所需的投資成本,確定變化是否有好處,或者以后應該避免什么。
同樣地,無計劃地變化也能提高IT 部門的能力,這種能力可以快速地發現這些變化;能夠顯著地改善IT部門迅速解決問題的能力,以便能在變化對系統性能和最終用戶生產力產生負面影響之前解決它。
現在IT部門是如何從有計劃地變化中測量和報告有益的結果呢?
對有計劃的變化進行測量的好處
在現在的環境中測量有計劃地變化所帶來的好處是一件令人畏縮的工作。很多IT公司只能大約估計實施這些變化帶來的好處,即使對于最重要和成本最高的項目也是如此,在這些項目中測量變化帶來好處的信息是最有價值的。沒有合適的數據收集和歷史報告產物用于測量與變化相關的有利與不利影響,要收集有用的分析指標用于保證結果對系統影響比較小是幾乎不可能。
當IT部門增加CPU和內存容量時,他們能夠通過使用工具或OS命令行,在一定的時間周期中估計變化所帶來的好處,比較容易地監測空閑可用資源的總量。但CPU或內存升級是如何影響最終用戶性能的?這個問題比較難回答,除非實施不間斷地監測解決方案,用于確立過去使用情況模型,比如數據活動等級和應用性能走勢。只有這樣,IT部門才能主動地比較結果,準確地確定變化所帶來的好處,這些好處是與增加CPU或內存資源相關的。
與數據庫相關的變化種類
當仔細地監測時,我們發現以下變化的類型對IT交付更健康系統的能力有一定的影響:系統配置,數據庫配置,數據庫對象結構,數據庫查詢優化和用戶定義的變化(由DBA或公司發起的有計劃地變化)。下面將討論這些類型的變化。
系統配置
這種類型的變化是實施良好監測最明顯和最有價值的地方。測量和定量系統配置變化帶來的好處仍然是個難點。這些變化表現為硬件和操作系統配置的變化,比如:OS參數,CPU,內存,磁盤,網絡接口(NIC)和交換文件空間分配的變化。
數據庫配置
這種類型的變化是最復雜的變化類型,因此也是最難于正確跟蹤的。數據庫配置中的變化引起的影響范圍很廣,這種變化能夠廣泛地影響整個數據庫性能和所有用戶應用。例如,在Oracle中,變化init.ora參數,很可能影響到數據庫文件(數據,日志和控制)的位置,大小,狀態,回滾片斷和臨時表空間。在Microsoft SQL Server中,跟蹤master數據庫配置如文件組,文件,實例配置和數據庫定義的變化很重要。master數據庫提供了關鍵的信息如服務器特定的配置,用戶登錄帳號,運行著的進程數據,系統錯誤日志,含有初始化用戶數據庫的信息。另外,Microsoft SQL Server實例中每個數據庫所具有的文件組參數,數據庫文件(數據,日志和控制)位置,大小和狀態信息都跟Oracle有點類似。
文章來源于領測軟件測試網 http://www.kjueaiud.com/