本文說明在 Windows Server 2008 和 Windows Server 2008 R2 中執行 Hyper-V 相關的問題和指引。
適用於: Windows Server 2008 R2 Service Pack 1
原始 KB 編號: 2515143
總結
在接下來的幾年裡,數據儲存產業將從512位元組的硬碟實體格式轉換為4,096個字節的扇區(也稱為4K扇區)。 此轉換是由數個因素所驅動。 其中包括記憶體密度和可靠性的增加。
不過,大部分的軟體產業都相依於長度為512位元組的磁碟扇區。 因此。 此扇區大小的變更會導致許多應用程式中發生重大相容性問題。 為了將生態系統的影響降到最低,硬碟廠商引進了過渡式 512 位元組模擬硬碟驅動器(也稱為 512e 硬碟)。 這些磁碟驅動器具有 4 千位元組 (KB) 原生磁碟驅動器的一些優點,例如改善的格式效率和改善的 ECC 配置。 而且,如果它們在磁碟介面上公開 4 KB 扇區大小,則相容性問題會比公開的相容性問題少。
本檔中使用的一些基本磁碟術語如下所示:
實體磁碟。 實體硬體顯示的磁碟。
虛擬磁碟。 由軟體 (VHD) 架構建立的磁碟。
邏輯扇區大小。 磁碟所公開之 IO 的最小必要對齊方式。 未確認此規則的任何 IO 都會失敗。
實體扇區大小。 磁碟上記憶體數據的實際實體扇區大小。 這是從磁碟的資料存取量。
512e 磁碟。 直接報告 512 位元組邏輯扇區大小的磁碟,而其實體扇區大小為 4KB — 韌體將 512 位元組的寫入轉換為 4KB 的讀取修改寫入(RMW)。 在現今的硬碟中,此轉換引入了效能損耗。
原生 4K 磁碟。 直接報告 4 KB 邏輯扇區大小並且實體扇區大小為 4 KB 的磁碟,只能接受 4 KB 的 I/O 操作。 不過,軟體堆疊可以透過 RMW 支援提供 512 位元組的邏輯扇區大小支援。
在 512e 磁碟上裝載 VHD 時的效果
512e 磁碟只能在實體扇區上執行寫入。 也就是說,512e 磁碟無法直接寫入接收到的512位元組的扇區。 磁碟的內部程式可讓此寫入成為可能,包括下列三個步驟:
- 磁碟必須將 4 KB 實體扇區讀取到其內部快取中。 快取包含寫入操作所涉及的512位元組邏輯扇區。
- 4-K 緩衝區中的數據被更新為包含更新的 512 位元組邏輯扇區。
- 磁碟必須將已更新的 4 KB 緩衝區,寫回到磁碟上的實體扇區。
此程式稱為「讀取-修改-寫入」或 RMW。 在現今的磁碟驅動器中,此 RMW 程式會導致 VHD 的效能降低。 發生的原因有下列一或多個原因:
動態和差異 VHD 在其數據承載前面具有 512 位元組的扇區位圖。 此外,頁尾、頁首和父定位器全部對齊至 512 位元組的扇區。 因此,VHD 驅動程式通常會發出 512 個字節的寫入來更新這些結構。 這會導致 RMW 行為如同這裡所描述的。
應用程式通常會發出以 4 KB 的倍數為大小的讀取和寫入(NTFS 的預設叢集大小)。 由於動態和差異 VHD 的資料載荷區塊前面有 512 位元組的扇區位圖,因此這些 4 KB 區塊無法對齊在實體的 4 KB 邊界上。 目前的剖析器發出每個 4K 寫入以更新負載資料後,會轉化為在磁碟上兩個區塊的兩次讀取。 這些資料會先更新,然後再寫回到兩個磁碟區塊。
由於 VHD 只能公開邏輯扇區大小為 512 位元組的虛擬磁碟,因此即使應用程式可以發出 4K 對齊的 IO,仍會繼續發出 512 位元組對齊的 IO,以優化這些磁碟上的效能。
在原生 4K 磁碟上裝載 VHD 時的效果
VHD 驅動程式目前假設磁碟的實體扇區大小為 512 位元組,併發出 512 位元組 IO。 這會使 VHD 驅動程式與這些磁碟不相容。 因此,VHD 堆疊不會在實體 4 KB 扇區磁碟上開啟 VHD 檔案。
當您使用大型扇區磁碟時的建議動作
內部測試顯示,當 VHD 裝載於特定 512e 磁碟驅動器時,虛擬化工作負載的效能會降低一些。 效能降低的程度取決於各種因素。 其中包括工作負載IO特性和特定的512e磁碟驅動器。 效能降低也可能受到下列因素的影響:
- 硬體細節,例如磁碟韌體中實作了多少快取以及哪些優化。
- 工作負載是否觸發大量未對齊的 IO,因此會產生 RMW 處罰。
如果工作負載是效能關鍵,請採取下列其中一個動作:
- 使用固定的 VHD。 已修正 VHD 不會遇到與動態和差異磁碟相關聯的效能問題。 (如需詳細資訊,請參閱「在 512e 磁碟上裝載 VHD 時的效果」一節。
- 如果需要動態或差異磁碟,請使用一般 512 字節的硬碟來儲存與工作負載相關的 VHD。
請與您的儲存設備硬體和 RAID 廠商合作,以驗證對記憶體設定的影響。
Windows 2008 和 Windows 2008 R2 支援 4K 磁碟驅動器。 不過,您無法在 Windows Server 2008 和 Windows Server 2008 R2 中使用原生 4 KB 磁碟與 Hyper-V。
如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2510009 Microsoft 在 Windows 中對 4K 扇區硬碟的支持政策