Назад | Перейти на главную страницу

Пространства хранения Windows, могу ли я разделить 3 диска и верхнее зеркало на 4-й диск?

У меня 4 жестких диска, и я хочу максимизировать скорость чтения с 1 уровнем отказоустойчивости.

Для этой цели я хотел бы спросить, могу ли я использовать 3 из 4 дисков в дисковых пространствах и создать простой виртуальный диск с 3 столбцами, по существу, чередуя 3 диска, а затем поверх этого создать зеркало между этим простым томом и 4-й диск? Что еще более важно, могу ли я указать параметры в PowerShell для выполнения чтения из Simple Volume Stripe, чтобы максимизировать производительность чтения?

Я очень внимательно посмотрел, но до сих пор не нашел в Windows решения, которое позволяло бы создавать зеркала на всех 4 дисках, а затем выполнять параллельное чтение через все зеркала, аналогичные полосе Raid 0. FlexRaid и DrivePool были близки к желаемой настройке, но их показания через зеркала при выполнении передачи файлов не соответствовали заявленной производительности.

Есть идеи или решения? Обратите внимание, что я счастлив, что в итоге у меня будет общая емкость размером с один диск. Этот вопрос касается максимизации производительности чтения с использованием 4 жестких дисков с ограничением по обеспечению отказоустойчивости при отказе одного диска.

У меня 4 жестких диска, и я хочу максимизировать скорость чтения с 1 уровнем отказоустойчивости.

Вы можете развернуть эквивалент RAID10 от MSFT. Посмотрите, какое отношение столбцы имеют к избыточности и производительности.

https://social.technet.microsoft.com/wiki/contents/articles/11382.storage-spaces-frequent-asked-questions-faq.aspx#What_are_columns_and_how_does_Storage_Spaces_decide_how_many_to_use

А)

для 4 HDD Storage Space с отказоустойчивостью 1 диска, которую вы хотите создать (в Storage Space терминология) Виртуальный диск с 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 столбцами, простой / без отказоустойчивости для использования в двустороннее зеркало с другим физическим диском.

Это невозможно как виртуальные диски не может объединить. У меня нет ссылки на документацию, в которой говорится об этом, но я полагаюсь на:

  • мой собственный опыт
  • дело в том, что New-StoragePool имеет только -PhysicalDisks аргумент, а не -VirtualDisks или просто -Disks например
  • который Get-PhysicalDisk имеет -CanPool атрибут, а Get-VirtualDisk не

C)

Но вы просили идеи - а если бы вы создали 3 диска охватывал или даже в полоску динамичный громкость, а затем просто двустороннее зеркало. Если повезет, динамический объем может появиться в Get-PhysicalDisk -CanPool $true, это было бы здорово (см. мой ориентир). Возможно, это бессмысленно, и у меня нет бесплатных дисков, чтобы попробовать.


Что еще более важно, могу ли я указать параметры в PowerShell для выполнения чтения из Simple Volume Stripe, чтобы максимизировать производительность чтения?

Я не знаю ни о каком варианте приоритета доступа для чтения. Уровни хранения (New-StorageTier) нельзя использовать. Я думаю, вы могли бы изучить настройку одного диска как Журнал, т.е. Set-PhysicalDisk -Usage Journal. Сомневаюсь, что его можно использовать так, как вы хотите.