Raid

Windows 儲存空間,我可以跨 3 個磁碟條帶化並在頂部鏡像到第 4 個磁碟嗎?

  • April 17, 2018

我有 4 個 HDD 驅動器,並希望通過 1 級彈性最大限度地提高讀取性能。

為此,我想問一下我是否可以使用儲存空間中 4 個驅動器中的 3 個並創建一個具有 3 列的簡單虛擬磁碟,基本上跨 3 個磁碟條帶化,然後在此簡單捲和第四盤?更重要的是,我是否可以在 PowerShell 中指定設置以從 Simple Volume Stripe 執行讀取,以最大限度地提高讀取性能?

我看起來非常努力,但到目前為止還沒有在 Windows 中找到任何解決方案,它允許在所有 4 個磁碟上創建鏡像,然後在所有鏡像上執行類似於 Raid 0 條帶的並行讀取。FlexRaid 和 DrivePool 接近於所需的設置,但它們在執行文件傳輸時跨鏡像讀取與宣傳的性能不匹配。

有什麼想法或解決方案嗎?請注意,我很高興最終獲得單個磁碟大小的總容量。這個問題涉及在限制條件下使用 4 個 HDD 驅動器最大限度地提高讀取性能,以實現單個磁碟故障的恢復能力。

一種)

對於 4 個 HDD 儲存空間和 1 個磁碟故障恢復能力,您要創建(在儲存空間術語中4 列單奇偶校驗虛擬磁碟。

# Init
$storageSubSystem = Get-StorageSubSystem
$poolName = "POOL"
$poolDisks = Get-PhysicalDisk -CanPool $true | Where-Object {$_.MediaType -eq "HDD"}
$spaceName = "MyStorage"
$spaceSize = 1TB

# Create pool
$pool = New-StoragePool -FriendlyName $poolName -StorageSubSystemID $storageSubSystem.UniqueId -PhysicalDisks $poolDisks

# Create storage space
$spaceDisk = New-VirtualDisk -FriendlyName $spaceName -StoragePoolFriendlyName $poolName -NumberOfColumns 4 -NumberOfDataCopies 2 -ResiliencySettingName Parity -ProvisioningType Thin -Size $spaceSize
# or possibly
#$spaceDisk = New-VirtualDisk -FriendlyName $spaceName -StoragePoolFriendlyName $poolName -NumberOfColumns 4 -PhysicalDiskRedundancy 1 -ResiliencySettingName Parity -ProvisioningType Thin -Size $spaceSize

(我沒有測試它,但你明白了)

二)

但是,在您的第二段中,您明確要求將3 列簡單/無彈性虛擬磁碟用於與另一個物理驅動器的雙向鏡像。

這是不可能的,因為虛擬磁槃無法池化。我沒有說明這一點的文件連結,但我確實依賴:

C)

但是你問了一些想法——如果你創建 3 個磁碟跨越甚至條帶化的 動態卷,然後將它放在普通的雙向鏡像中。運氣好的話,動態音量可能會顯示在 中Get-PhysicalDisk -CanPool $true,那會很整潔(請參閱我的基準)。雖然可能毫無意義,而且我沒有可用的磁碟嘗試。


更重要的是,我是否可以在 PowerShell 中指定設置以從 Simple Volume Stripe 執行讀取以最大化讀取性能?

我不知道任何優先考慮讀取訪問的選項。無法使用儲存層 ( New-StorageTier )。我想您可以考慮將一個磁碟配置為Journal,即[Set-PhysicalDisk](https://docs.microsoft.com/en-us/powershell/module/storage/set-physicaldisk) -Usage Journal. 我懷疑它可以按照您想要的方式使用。

引用自:https://serverfault.com/questions/906875