Место для хранения - смешайте SSD с HDD

20030
Markaway

На самом деле не могу найти никакой информации, поэтому я надеюсь, что кто-то здесь может пролить свет.

У меня установлена ​​свежая копия Windows 8 Pro. Я хочу использовать места для хранения с 4 внутренними жесткими дисками и 2 внутренними твердотельными дисками. Использует ли Windows 8 SSD каким-либо особым образом (например, кеширование) для повышения скорости пула хранения?

Или SSD будет просто частью пула данных и не даст никакого преимущества в производительности?

8

4 ответа на вопрос

13
Alan Isherwood

Это несколько расширяет ответ TiernanO - я изо всех сил пытался найти хорошую подробную информацию обо всем этом, поэтому я решил написать это приятно для всех:

Твердотельные накопители можно использовать для ускорения работы ваших пулов, но это работает только в определенных ситуациях, и есть ряд условий, которые необходимо соблюдать.

Во-первых, вы не можете просто добавить SSD в существующий пул и ожидать, что он ускорит вашу систему. Фактически, если вы смешиваете твердотельные накопители с жесткими дисками в одном и том же пуле, вы в основном тратите впустую твердотельные накопители, потому что каждый из ваших файлов разделен на другие диски, поэтому половина вашего файла может быть на SSD, а другая половина - на жесткий диск - так что вам все еще нужно будет подождать, пока жесткий диск раскрутится, и искать данные, прежде чем он сможет фактически использоваться вашим компьютером, даже если SSD обнаружил первую половину данных давно. [это упрощение, фактически данные разделяются на разные диски на уровне блоков, а не на уровне файлов]

Таким образом, вы, вероятно, не хотите смешивать SSD и HDD в одном виртуальном диске - используйте пулы, состоящие только из HDD или только из SSD, а не из обоих. Между прочим, это нормально, если они находятся в одном пуле хранения, но не работают на одном виртуальном диске.

Теперь, возвращаясь к вашему вопросу - да, можно использовать твердотельные накопители, чтобы ускорить процесс, используя функцию «Журналирование» в Storage Space, - но есть несколько условий:

  1. Вы должны использовать виртуальный диск с параметром упругости «Четность», диски журнала нельзя использовать с виртуальными дисками «Простой» или «Зеркальный»
  2. У вас должно быть как минимум два твердотельных накопителя - вы не можете переопределить это (в фоновом режиме они настроены как зеркальное пространство само по себе в случае сбоя одного)
  3. Все пространство на SSD должно быть отведено для ведения журнала, вы не сможете использовать ни один из SSD для хранения данных
  4. Ничто из этого не может быть настроено из пользовательского интерфейса Windows в Windows 8 или Server 2012 - вы должны сделать это вручную с помощью PowerShell
  5. Если вы вручную увеличили количество пространств четности в своем пуле, то вы должны в равной степени увеличить количество дисков журнала (например, если вы используете пространство четности по умолчанию 1, вам нужно 2 твердотельных накопителя. Если у вас 2 пространства четности) Вам нужно 4 SSD и т. д.).
  6. Это может быть очевидно, но добавление журнальных дисков только увеличивает скорость записи данных на виртуальный диск - скорость чтения данных не будет затронута

Предполагая, что вы удовлетворены этими ограничениями, вот что вам нужно сделать в окне PowerShell с повышенными правами:

В этом примере я предполагаю, что вы еще не создали свой пул хранения или виртуальные диски - если у вас есть существующий набор, измените инструкции в соответствии с требованиями.

# See what disks you've got available so you can set the below variables Get-StoragePool -IsPrimordial $true | Get-PhysicalDisk ` | Where-Object CanPool -eq $True  # Tell Windows which disk is a traditional HDD and which is an SSD $HDDs = "PhysicalDisk1", "PhysicalDisk2", "PhysicalDisk3" $SSDs = "PhysicalDisk4", "PhysicalDisk5"  # Create a new storage pool (these are fairly default options) New-StoragePool -FriendlyName "Your Storage Pool" ` -PhysicalDisks (Get-PhysicalDisk $HDDs) ` -StorageSubSystemFriendlyName "Storage Spaces*" ` -ResiliencySettingNameDefault Parity  # Add in your two (or more) Journal disks Add-PhysicalDisk -StoragePoolFriendlyName "Your Storage Pool" ` -PhysicalDisks (Get-PhysicalDisk $SSDs) -Usage Journal  # Create the virtual disk and get it ready for use New-VirtualDisk -FriendlyName "Parity Protected & Journaled Data" ` -StoragePoolFriendlyName "Your Storage Pool" -NumberOfColumns 3 ` -ProvisioningType Thin -ResiliencySettingName Parity -Size 2TB ` | Initialize-Disk -PassThru -PartitionStyle MBR ` | New-Partition -AssignDriveLetter -UseMaximumSize ` | Format-Volume -FileSystem NTFS ` -NewFileSystemLabel "Parity Protected & Journaled" -Confirm:$false 

Теперь вы можете проверить все это с помощью Get-PhysicalDisk:

FriendlyName CanPool OperationalStatus HealthStatus Usage Size ------------ ------- ----------------- ------------ ----- ---- PhysicalDisk1 False OK Healthy Auto-Select 10.25 GB PhysicalDisk2 False OK Healthy Auto-Select 10.25 GB PhysicalDisk3 False OK Healthy Auto-Select 10.25 GB PhysicalDisk4 False OK Healthy Journal 10.25 GB PhysicalDisk5 False OK Healthy Journal 10.25 GB 

Источники:

Пункт 4 остается в силе для Windows 8.1 и 2012 R2? Peter 9 лет назад 0
@ Питер все еще применяется, насколько я знаю. Alan Isherwood 9 лет назад 1
4
alonsomh

Я думаю, что это улучшилось на Windows Server 2012 R2 .

  • Кэш с обратной записью

Пространства хранения могут использовать существующие твердотельные накопители в пуле хранения для создания кэша обратной записи, который устойчив к сбоям электропитания и буферизует небольшие случайные записи на твердотельные накопители перед последующей записью их на жесткие диски.

  • Какую ценность это изменение добавляет?

Небольшие случайные записи часто доминируют над обычными рабочими нагрузками предприятия, и они могут влиять на производительность других передаваемых данных. Благодаря использованию твердотельных накопителей (которые превосходны при произвольном доступе) для кэша обратной записи, дисковые пространства могут уменьшить задержку произвольной записи, а также значительно уменьшить любое влияние на производительность других передач данных.

  • Что работает по-другому?

Кэш обратной записи прозрачен для администраторов и пользователей и создается на всех новых виртуальных дисках, если в пуле хранения имеется достаточное количество твердотельных накопителей, что определяется следующими требованиями к соответствующему пространству хранения:

  1. Простые пространства требуют одного твердотельного накопителя
  2. Для двусторонних зеркальных пространств и пространств с одинарной четностью требуются два твердотельных накопителя
  3. Трехсторонние зеркальные пространства и пространства с двойной четностью требуют трех твердотельных накопителей

Кэш с обратной записью работает со всеми типами областей хранения, включая области хранения с уровнями хранения.

Вновь созданные области памяти автоматически используют кэш с обратной записью 1 ГБ по умолчанию, когда пул хранения содержит достаточно физических дисков с MediaType, установленным на SSD или Usage, установленным на Journal, для поддержки указанного параметра устойчивости. Если с этими настройками не хватает физических дисков, размер кэша обратной записи устанавливается равным 0, за исключением пространств четности, если он равен 32 МБ.

Здравствуйте и добро пожаловать на superuser.com. Ваш пример относится к серверу Windows, в то время как постер спрашивал о Windows 8.1. Вы уверены, что то, о чем вы говорите, относится и к Windows 8.1? Если так, у вас есть ссылки на это? Mogget 10 лет назад 0
3
bviktor

It depends, really. There's at least 4 ways you may utilize SSDs in a mixed setup, i.e. when there are both HDDs and SSDs:

  • You can just blindly add them all to the pool. This makes no sense whatsoever, because data will spread randomly across your disks, no matter how write-intensive it is. Note: this is the default setting, of course.
  • You can use the SSDs for journaling with parity (RAID5/6) spaces, i.e. caching during writes. This I would recommend wholeheartedly if parity spaces didn't suck so hard. No, really, it is BAD, avoid at all costs. For mirrored spaces a dedicated journal is useless as there's no parity involved, just a 1:1 copy.
  • You can set up tiered storage and let Windows automatically move frequently-accessed data to the faster SSDs. This may work decently, but it's really hard to benchmark so I can't say if it's good or bad.
  • You can also create 2 separate arrays, put the 2 SSDs in a 2-way mirror for program files and other write-intensive stuff, and put the 4 HDDs in another 2-way mirror for everything else. This is the one I recommend for you.

If you're curious why I'm so confident, it's because I've spent a few weeks (not kidding) testing the hell out of Storage Spaces. Check out my in-depth benchmarking series for all the numbers that back my statements:

Cheers.

2
TiernanO

Об этом очень мало документации, но я где-то читал, что в дисковых пространствах есть возможность добавить диск в пул для ведения журнала. Я не могу найти оригинальную статью, но если вы посмотрите на командлет Add-PhysicalDisk, в разделе Использование есть опция для журнала ... Когда я читал об этом, парень упомянул, что он использовал SSD в качестве диска журнала, и добавил его в пул из 8 дисков по 2 ТБ, а чтение и запись увеличились на 40 +% ... Ваш пробег может меняться, но, возможно, стоит попробовать ...

Как сторонний вариант, вы также можете взглянуть на FancyCache . Вы можете использовать память и твердотельные накопители в качестве кеша для медленных носителей. Я использовал его раньше, и он работал хорошо, просто не было возможности переустановить с момента перехода на Server 2012 ...

+1 для подсказки FancyCache, никогда не слышал об этом раньше, и, возможно, стоит посмотреть. TheBlastOne 11 лет назад 0
Журнальные диски используются только для пространств четности IIRC. Для зеркальных пространств вам нужно настроить WBC. Monstieur 7 лет назад 0