Sql-Server

同一 SAN 磁碟上的多個 SQL Server 數據文件

  • July 10, 2013

我目前正在創建一個新數據庫,並且以前只使用過一個數據文件和一個日誌文件。我在網上做了一些關於多個數據文件的好處的研究,但我發現關於單個磁碟上的多個數據文件的好處的意見不一。所以我的問題是:如果我唯一可用的磁碟是 SAN 磁碟,我會從將數據拆分為 4 個單獨的文件中看到任何性能優勢(例如多執行緒/並行處理)嗎?使用單個文件會更好嗎?

將索引(可能還有存檔表)分離到它們自己的文件組中,在同一個磁碟上的不同文件中是否有任何性能優勢?這只會提供行政利益嗎?

謝謝!

與每個 LUN 一個 tempdb 相比,即使是單個 LUN 上的多個 tempdb 文件也應該是最後的手段。如果一個 LUN 上有多個數據庫文件,並且允許它們自動增長,則它們的內容將在文件系統和儲存中交錯。讀取或寫入請求對它們造成嚴重影響,將導致稱為 IO weaving 或磁碟磁頭抖動的情況。即使寫入通常被記憶體,寫入也不能免受 io weaving 的影響,因為最終寫入需要從記憶體中轉移。如果查詢溢出大量使用 tempdb,則會有大量的順序寫入活動。將多個 tempdb 放在同一個 LUN 上,可以在儲存的不同位置有多個順序寫入活動流,全部通過同一個 LUN 隊列訪問。

您可能不會看到在單個 LUN 上為使用者數據庫提供多個數據文件的任何好處。

TempDB 是一種特殊情況,因為在正常操作期間在 tempdb 數據庫中創建了大量對象。

引用自:https://dba.stackexchange.com/questions/39694