Sql-Server

不同的磁碟驅動器相同的後端儲存

  • March 11, 2022

我有一個在 VM 上執行的數據庫,該數據庫在大負載期間受到重創,特別是我可以看到發生 WRITELOG 的等待。我最初的想法是將文件拆分到自己的驅動器上,但後端儲存與其他數據庫文件所在的位置相同。

基本上,它是作為集群共享卷呈現給整個虛擬機主機的 SAN。

這樣做會有性能優勢嗎?我大腦深處的一些記憶告訴我,IO 流的數量可能會更好?


為了更新這一點,我現在已經分離出文件並正確調整了事務日誌的大小。我一直在收集資訊sys.dm_io_virtual_file_stats,可以看到我現在的 readIOstalls 非常高,但延遲時間很短,只有 13 毫秒。我還收集了一些記憶體資訊,PLE 平均為數千,這是一個 32GB 的系統,我預計除了在 30 分鐘內它會下降到 30,然後再次急劇上升,此時惰性寫入/秒會增加在減少到 0 之前也到 50。這段時間可能是我看到的大量讀取停頓的原因嗎?我本來希望看到如此高的 Read Stalls 也有高延遲?

這將取決於您的確切 SAN。但在以前的工作中,我們有一個具有自動分層功能的 SAN。在這種情況下,理論上您可以將數據庫劃分為文件,最活躍的文件會自動被 SAN 移動到快閃記憶體

Writelog 等待統計資訊表示與日誌文件相關的問題,或者存在將數據寫入日誌文件/日誌文件訪問緩慢的某種問題。

檢查日誌文件。如果它在同一個驅動器上,請嘗試將其移動到不同的驅動器。還將自動增長量設置為遠高於目前參數。

根據以上提供的詳細資訊,這是我可以理解的。

如果這不是您所期望的,請告訴我們。

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