共用方式為


教學課程:使用獨立伺服器上的儲存空間啟用儲存體匯流排快取

獨立伺服器的儲存體匯流排快取可大幅改善讀取和寫入效能,同時維持儲存體效率,並降低營運成本。 這項功能會將較快的媒體 (例如 SSD) 與較慢的媒體 (例如 HDD) 繫結在一起,以建立階層。 如需詳細資訊,請參閱了解儲存集區快取。 根據預設,只有部分較快的媒體層會保留給快取。

災害復原 快取類型
無 (簡單空間) 讀取和寫入
鏡像加速的同位 讀取

如果您的系統不需要災害復原或具有外部備份,則儲存體匯流排快取同時支援讀取和寫入快取。 對於復原系統,儲存體匯流排快取僅用於讀取快取,而您應該選擇彈性檔案系統 (ReFS) 鏡像加速同位作為磁碟區復原。 此組合可改善隨機讀取效能,因為資料會從同位層讀取並在較快的鏡像層上快取。 如果 [佈建模式] 設定為 [共用](預設),則鏡像層也會提供寫入快取功能。

記憶體總線快取讀取和寫入路徑的圖表。

在本教學課程中,您將了解:

  • 儲存體匯流排快取是什麼
  • 如何啟用儲存體匯流排快取
  • 在部署後管理快取

必要條件

如果您的環境符合下列所有特性,您應該考慮儲存體匯流排快取

  • 您的伺服器會執行 Windows Server 2022;和
  • 您的伺服器有 2 種媒體/磁碟機類型,其中一種必須是 HDD (例如:SSD+HDD 或 NVMe+HDD);和
  • 您的伺服器已安裝容錯移轉叢集功能

如果您的環境符合下列任何特性,則無法使用儲存體匯流排快取

  • 您的伺服器執行 Windows Server 2016 或 2019;或
  • 您的伺服器具有所有快閃設定;或
  • 您的伺服器是容錯移轉叢集的成員

注意

此功能需要您的伺服器安裝容錯移轉叢集功能,但您的伺服器不能是容錯移轉叢集的一部分。

功能概觀

本節說明儲存體匯流排快取的每個可設定欄位和適用的值。

Get-StorageBusCache

未啟用時,輸出應類似下列範例:

ProvisionMode                  : Shared
SharedCachePercent             : 15
CacheMetadataReserveBytes      : 34359738368
CacheModeHDD                   : ReadWrite
CacheModeSSD                   : WriteOnly
CachePageSizeKBytes            : 16
Enabled                        : False

注意

針對一般用途,您應該使用預設設定。 啟用儲存體匯流排快取之前,必須先進行任何變更。

佈建模式

此欄位決定是否使用較快的媒體層,或僅使用部分媒體層進行快取。 啟用儲存體匯流排快取之後,就無法修改此欄位。 佈建模式有兩個選項:

  • 共用(預設值):快取只會佔用較快媒體層的一部分。 可透過 [共用快取百分比] 欄位設定確切的百分比。
  • 快取:將大部分較快的媒體層用於快取,而不僅僅是一部分。 如需詳細資訊,請參閱了解儲存集區快取

共用快取百分比

只有當 [佈建模式] 設定為 [共用] 時,才適用此欄位。 預設值為 15%,且欄位可以設定為從 5% 到 90%。 當您使用鏡像加速同位磁碟區時不應使用超過 50% 的值,因為快取與鏡像層之間必須保持平衡。

已啟用

此欄位是指儲存體匯流排快取的狀態,可以是 true 或 false。

進階欄位

重要

不建議變更這些欄位。 啟用儲存體匯流排快取之後無法進行調整。

  • 快取中繼資料保留位元組:為儲存空間保留的磁碟空間量 (以位元組為單位)。 只有在 [佈建模式] 為 [快取] 時,才會套用此欄位。

  • 快取模式 HDD:預設是允許 HDD 容量裝置快取讀取和寫入。 對於 [簡單空間],此設定可設為 ReadWrite 或 WriteOnly。

  • 快取模式 SSD:當支援所有快閃系統時,該模式可於日後使用。 預設值是允許 SSD 容量裝置僅快取寫入。

  • 快取頁面大小 (KB):此欄位可設定為 8、16 (預設值)、32 和 64。

在 PowerShell 中啟用儲存體匯流排快取

本節是逐步指南,說明如何在 PowerShell 中為獨立伺服器啟用儲存體匯流排快取。

  1. 匯入模組。

    Import-Module StorageBusCache 
    
  2. 設定儲存體匯流排快取設定。

    您應該使用預設設定。 如果這樣做,請跳過此步驟以繼續使用預設值。

    重要

    如果需要設定,請在啟用儲存體匯流排快取之前執行此動作。 如需欄位的詳細資料,請參閱功能概觀一節。

  3. 檢查磁碟機狀態。

    Get-PhysicalDisk
    

    輸出應類似下圖,其中 [數字] 資料行會顯示低於 500 的值,而 CanPool 資料行對所有未開機磁碟機顯示 true。

    此螢幕快照顯示 Get-PhysicalDisk 在啟用記憶體總線快取之前的結果。

  4. 啟用儲存體匯流排快取。

    Enable-StorageBusCache
    

    此步驟會:

    • 建立包含所有可用磁碟機的儲存集區。
    • 繫結快速且緩慢的媒體,並形成快取。
    • 使用預設或自訂設定新增儲存體匯流排快取。

    您可以執行 Get-StoragePool 以查看儲存集區的名稱,並 Get-PhysicalDisk 再次查看啟用儲存體匯流排快取的效果。 輸出應類似下圖。 [數字] 資料行會顯示超過 500 的值,表示儲存體匯流排宣告磁碟機。 [CanPool] 資料行現在對所有未開機磁碟機顯示 False。 如果在啟用之前將 ProvisionMode 設定為 [快取],則 [使用量] 資料行會顯示為較快磁碟機的 [日誌]。

    顯示啟用記憶體總線快取之後 Get-StoragePool 和 Get-PhysicalDisk 結果的螢幕快照。

  5. 檢查儲存體匯流排快取狀態。

    檢查欄位是否正確,且 [已啟用] 欄位現在設定為 true。

    Get-StorageBusCache 
    

    輸出應類似下列範例:

    ProvisionMode                  : Shared
    SharedCachePercent             : 15
    CacheMetadataReserveBytes      : 34359738368
    CacheModeHDD                   : ReadWrite
    CacheModeSSD                   : WriteOnly
    CachePageSizeKBytes            : 16
    Enabled                        : True
    

由於儲存體匯流排快取已成功啟用,下一個步驟就是建立磁碟區。

建立磁碟區

您應該建立的磁碟區取決於要建立的磁碟區是否具有復原能力。

具有復原功能的磁碟區

下列 PowerShell Cmdlet 會建立 1-TiB 鏡像加速同位磁碟區,而 [鏡像:同位] 的比率為 20:80,這是大部分工作負載應使用的設定。 如需詳細資訊,請參閱鏡像加速同位

New-Volume –FriendlyName "TestVolume" -FileSystem ReFS -StoragePoolFriendlyName Storage* -StorageTierFriendlyNames MirrorOnSSD, ParityOnHDD -StorageTierSizes 200GB, 800GB

沒有復原功能的磁碟區

下列 PowerShell Cmdlet 會建立 1 TB 的簡單磁碟區,無法容許任何磁碟故障。 同時支援讀取和寫入快取。

New-Volume -FriendlyName "TestVolume" -FileSystem ReFS -StoragePoolFriendlyName Storage* -ResiliencySettingName Simple -Size 1TB

啟用儲存體匯流排快取之後進行變更

執行 Enable-StorageBusCache 之後,無法修改佈建模式、共用快取百分比、快取中繼資料保留位元組、快取模式 HDD、快取模式 SSD 以及快取頁面大小。 實體設定可以進行有限的變更。 如需詳細資訊,請參閱下列常見案例。

新增或取代容量磁碟機 (HDD)

手動新增磁碟機之後,請執行下列 Cmdlet 以完成接收程序。

Update-StorageBusCache

新增或取代快取磁碟機 (NVMes 或 SSD)

沒有 Cmdlet 可解除繫結/重新繫結現有的繫結,並平衡關聯性。 下列步驟會導致現有的讀取快取遺失。

Remove-StorageBusBinding
New-StorageBusBinding 

檢查並平衡快取和容量繫結

使用下列 Cmdlet 來檢查現有的快取和容量繫結。

Get-StorageBusBinding

在下列範例中,第一個資料行會列出容量磁碟機,而第三個資料行會列出它們所綁定的快取磁碟機。 請按照新增或取代快取磁碟機的指示來進行平衡,因此不會保留現有的快取。

顯示 Get-StorageBusBinding 輸出的螢幕快照。

儲存體匯流排快取常見問題

本節回答 Windows Server 2022 上儲存體匯流排快取的常見問題。

當伺服器不是容錯移轉叢集的一部分時,為何需要安裝容錯移轉叢集功能?

這項功能是專為獨立伺服器所設計的,但建置在儲存空間直接存取的儲存體匯流排層 (SBL) 快取之上。 由於需要叢集元件,因此需要安裝容錯移轉叢集功能。

儲存體匯流排快取是否可與所有快閃設定搭配使用?

否,此功能僅適用於兩種媒體類型,其中一種必須是 HDD。 此功能不適用於 RAID、SAN 或快閃系統。

如何變更儲存體匯流排快取設定?

請參閱下列範例,了解如何將佈建模式從共用 (預設) 變更為快取。 建議使用預設設定,且應在啟用儲存體匯流排快取之前進行任何變更。

Set-StorageBusCache -ProvisionMode Cache