2011年7月26日 星期二

強化SQL Server效能的好方法

當資料量大了之後,或許「效能」就是一個馬上會面臨到的問題

和程式設計面或許有關,
資料量大也有可能,
很多人是設了索引但是又不去維護。

資料庫規劃面來說,或許可以參考以下的想法。
在網路上找了一些資料,與大家一同分享…

一、如果要達到快速交易時盡量少用Cursor(特殊需求才用)及透過索引可以強化資料存取與強化鎖定效能。
二、儘量降低重複編譯re-compilation(讓CPU最佳化)->多用stored procedure應該會有幫助!!
三、儘量避免joins(最佳化IO使用)
四、NOLOCK HINT(只能用於SELECT陳述式,可避免造成鎖定,聽說加速3倍查詢速度。但容易造成Dirty Read!)
五、LOCK_TIMEOUT (避免程式無反應)
六、SET QUERY_GOVERNOR_COST_LIMIT(避免長時間查詢的程式執行)
七、索引的設計與規畫(這是一門學問...)。
八、在stored procedure 加 set nocount off [官網說明]

沒有留言:

張貼留言