怎麼整理 SQL Server效能調整清單

iSQlServer發表於2009-11-04

  我需要做什麼?太多了,我從哪裡開始?我下一步該做什麼?哇,我的SQL Server起來了!如果你從一開始就不知道要到哪裡去,並且異常中斷了SQL Server的執行,那麼你做到了。看看這篇如何獲得高效能SQL Server的效能調整清單吧。

  SQL Server效能調整清單

  準備

  當你開始解決一個現有的效能調整問題或者從一個新的系統開始,非常期望得到高效能,那麼花些時間在計劃和分析如何達到專案目標吧。確保整個團隊都理解了SQL Server現在正在做什麼,它將會作什麼,以及它以後應該如何做。

  有關團隊

  •用正確的技術知識組建一個有才華的團隊。

  •確保技術團隊都理解每個人的職責對組織的影響。

  •為團隊培訓預備時間(會議、使用者群、非正式的、自我節奏調節、教室等)

  •籌備一個擁有技術書籍和電子資源的圖書館。

  •建立一個用於測試的沒有附加任何條件和強加的結果的沙盤

  •不要忘記當任務完成的時候對團隊進行獎勵

  實現

  •以Web、線上事務處理、線上分析處理、移動和批處理應用程式的方式為SQL Server建立一套實際業務和技術方面的需求。

  •按照可交付的和時間框架來為團隊安排現實的期望。

  •確保團隊對當前和未來的效能需求有個明確和準確的理解,避免任何嚴重影響未來的意外出現。

  •儘可能地做到細微的程度,努力避免存在沒有涉及的問題。不幸的是,俗話說:“the devil is in the details(魔鬼隱藏於細節中)”,這句話是相當準確的。

  •評估可用來解決高效能問題的時間,並把它與完成剩餘的日常任務所需的時間相比,不要害怕對實際的時間結構進行溝通。

  •討論花大量時間來充分開發一個合適的系統來達到高效能與衝刺開發然後將一個需要大量維護的系統推上去相比,哪一個更好。

  •定義SQL Server的正常執行時間,然後確定對達到這個正常執行時間所需的成本與效能需求的期望值。

  •從技術和業務兩個角度提出問題,理解系統期望的修改方式,以及在1年、3年、5年之後的增長。

  •在硬體平臺佈置好之前,列出容量需求計劃。

  •讓整個團隊對以下問題達成一致:每天、每週、每月或者每季度基礎上的SQL Servers維護。


  就位

  一旦你和你的團隊理解了需求,是時候展示你們的IT技能了。創造性地思考平衡SQL Server自帶功能、第三方產品,以及你們自己的開發之間的關係。

  停下來思考

  •分析需求,然後畫出應用程式中每個單獨元件的草圖。

  •在時間表上列出正式或者非正式的團隊成員會議,與他們探討有關功能性、靈活性和純粹速度方面的潛在的具有破壞性的想法。

  •想想這個環境中其他應用程式的經歷,或者是以前的經歷,做出計劃,不僅要避免這些問題,還要應用程式中那些地方是最強的。

  向成功進發

  •建立硬體平臺需要滿足各個不同資料庫元件有關靈活性的需求,用以滿足其他額外的需求。

  •建立硬體平臺來滿足不同的資料庫元件對靈活性的需求,以滿足額外的需求。

  •開發資料庫物件、中介軟體應用程式,以及眼睛可以看到的前臺來為並行的使用者提供高階別的高效能。

  •對應用程式中的每個元件都進行壓力測試,測試的時候與應用程式的其他部分隔離開,確保每個元件優化得都非常合適,然後再對整個應用程式進行壓力測試。

  •根據壓力測試結果,開始優化查詢以改善效能,然後重複進行壓力測試以確保效能的有效性。

  •為使用者構建一個培訓系統來教會他們如何按照設計的目標來使用這個系統,並對一部分系統使用者進行負載測試,獲得基線,在產品釋出之前。

  •最後在釋出應用軟體之前完成文件。讓IT業內人士——不是銷售冠軍——來簽收,並且提出有價值的參考意見,這些意見會在6個月之後,進行了另外的100個專案之後,需要新增新的功能的時候非常有用。

  前進!

  一旦設計和開發完成了,要確保應用程式不會迷失在混亂中。注意,它需要在很長的一段時間之內都會按照預想的情況執行下去。

  開啟閘門

  •讓小部分使用者在系統上執行這個應用程式來驗證效能。然後按照常規的進度表開始在系統上新增使用者。

  •開啟SQL Server安全保衛措施,防止意外的變化捲入平靜的環境,併產生負面的影響。

  •建立變化管理程式,對系統的變化進行合適的管理,確保它能夠回滾到原先的狀態。

  •檢查伺服器進度表,防止多個應用程式同時開啟導致伺服器停頓下來,以及在一個進城執行的時候,沒有其他的程式執行。


  注意

  •每天或者每星期分配一點時間使用自帶的工具(SQL Server Profiler, Performance Monitor, Index Tuning Wizard等)監控SQL Server。當SQL Server出現效能問題的時候,不應該將監控多次儲存。

  •構建內部可以輕鬆訪問的指令碼,當你遇到鎖定和阻塞的問題的時候,或者是需要監控業務相關程式,例如使用者表中的標記,或者在清單控制程式中的批處理的時候。具有這方面的系統知識會增強你的能力。

  •在一般的基礎上捕捉效能因素,理解並測量效能。

  開始散佈訊息

  •召開一個經驗交流會議來加強專案中積極的方面,判斷需要改進的領,並且建立起實現這些專案的計劃。

  •計劃出”午飯交流時間”以便團隊成員之間可以共享知識。

  《SQL Server清單》為你提供了一步一步的執行、調整和管理你的SQL Server 的建議。

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

相關文章