我是一個新手,在這裏堆棧溢出以及在sql服務器,所以請讓我知道如果這個問題是不適當的任何方式:)實現Sql Server讀寫性能的策略是什麼?
那麼,我正在開發一個Web應用程序,將用於分析存儲在SQL Server 2008數據庫中的大量數據。該接口不允許用戶更新或插入任何數據,所以除了用戶數據的一些更新之外,主要是SELECT命令將被髮送到數據庫。
每天晚上,系統都會關閉並刷新其他來源的信息。此刷新還將涉及大量數據,因此數據庫在此階段將主要執行INSERT和UPDATE命令。
我已經創建了適當的索引以在SELECTS上實現良好的性能,但是這些索引導致夜間刷新變慢。我想要「兩全其美」,所以我搜索了一下,發現一個常見的策略是在寫入數據之前刪除/禁用所有索引,並在之後重新創建它們。我也聽說,更好的方法是限制索引的填充因子,這將使我無法編寫用於刪除和重新創建索引的腳本。
您認爲在這裏使用的最佳方法是什麼?我的主要目標是良好的性能?我應該使用「fillfactor」-approach,還是應該弄髒並編寫腳本來刪除/重新創建索引?歡迎任何建議!
避免太多索引 - 只是明確地索引每一列,只是因爲你可以,肯定會殺死你的perf! ;-) – 2010-01-21 11:36:06