Espaces de stockage - mélangez SSD et HDD


8

Je ne trouve pas vraiment d'informations, alors j'espère que quelqu'un ici pourra faire la lumière.

J'ai une nouvelle copie de Windows 8 Pro installée. Je souhaite utiliser des espaces de stockage avec 4 disques durs internes et 2 SSD internes. Windows 8 utilise-t-il les SSD d'une manière spéciale (par exemple, la mise en cache) pour améliorer la vitesse du pool de stockage?

Ou les SSD feront-ils simplement partie du pool de données et aucun avantage de performance ne sera-t-il donné?

Réponses:


13

Cela étend quelque peu la réponse de TiernanO - j'ai eu du mal à trouver un bon fond détaillé sur tout cela, alors j'ai pensé que je l'écrirais bien pour tout le monde:

Les SSD peuvent être utilisés pour accélérer vos pools, mais cela ne fonctionne que dans certaines situations et il y a un certain nombre de conditions qui doivent être respectées.

Tout d'abord, vous ne pouvez pas simplement ajouter des SSD à un pool existant et vous attendre à ce qu'il accélère votre système. En fait, si vous mélangez des SSD avec des disques durs dans le même pool, vous gaspillez essentiellement les SSD parce que chacun de vos fichiers est divisé sur les autres disques, donc la moitié de votre fichier peut être sur un SSD et l'autre moitié sur le disque dur - vous devrez donc encore attendre que le disque dur tourne et rechercher les données avant qu'elles ne puissent réellement être utilisées par votre ordinateur, même si le SSD a trouvé la première moitié des données il y a longtemps. [il s'agit d'une simplification excessive, en fait, les données sont réparties sur différents disques au niveau d'un bloc, pas au niveau d'un fichier]

Donc, vous ne voulez probablement pas mélanger les SSD et les HDD dans le même disque virtuel - ayez des pools composés uniquement de HDD ou uniquement de SSD, pas des deux. Soit dit en passant, il est normal de les avoir dans le même pool de stockage, tout simplement ne fonctionne pas sur le même disque virtuel.

Maintenant, revenons à votre question - oui, il est possible d'utiliser des SSD pour accélérer les choses en utilisant la fonction de journalisation de Storage Space - mais il y a quelques conditions:

  1. Vous devez utiliser un disque virtuel avec un paramètre de résilience de 'Parité', les disques de journal ne peuvent pas être utilisés avec des disques virtuels 'Simple' ou 'Miroir'
  2. Vous devez avoir au moins deux SSD - vous ne pouvez pas remplacer cela (en arrière-plan, ils sont configurés comme un espace miroir en soi en cas de défaillance)
  3. Tout l'espace sur le SSD doit être dédié à la journalisation, vous ne pourrez utiliser aucun des SSD pour stocker des données
  4. Rien de tout cela ne peut être configuré à partir de l'interface utilisateur de Windows dans Windows 8 ou Server 2012 - vous devez le faire manuellement à l'aide de PowerShell
  5. Si vous avez augmenté manuellement le nombre d'espaces de parité dans votre pool, vous devez également augmenter le nombre de disques de journal (par exemple, si vous utilisez l'espace de parité 1 par défaut, vous avez besoin de 2 SSD. Si vous avez 2 espaces de parité , vous avez besoin de 4 SSD, etc.).
  6. Cela peut être évident, mais l'ajout de disques de journal n'augmente que les vitesses d'écriture des données sur le disque virtuel - les vitesses de lecture des données ne seront pas affectées

En supposant que vous êtes satisfait de ces restrictions, voici ce que vous devrez faire dans une fenêtre PowerShell élevée:

Pour cet exemple, je suppose que vous n'avez pas encore créé votre pool de stockage ou vos disques virtuels - si vous avez un ensemble existant, modifiez les instructions en conséquence.

# 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

Vous pouvez maintenant vérifier que tout a fonctionné en utilisant 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

Sources:


Le point 4 est-il toujours valable pour Windows 8.1 et 2012 R2?
Peter

1
@Peter s'applique toujours autant que je sache.
Alan Isherwood

5

Je pense que cela est amélioré sur Windows Server 2012 R2 .

  • Cache de réécriture

Les espaces de stockage peuvent utiliser des unités SSD existantes dans le pool de stockage pour créer un cache de réécriture qui tolère les pannes de courant et qui met en mémoire tampon les petites écritures aléatoires sur les unités SSD avant de les écrire ultérieurement sur les disques durs.

  • Quelle valeur ce changement ajoute-t-il?

Les petites écritures aléatoires dominent souvent les charges de travail d'entreprise courantes et peuvent avoir un impact sur les performances des autres transferts de données en cours. En utilisant des disques SSD (qui excellent en accès aléatoire) pour un cache en écriture différée, les espaces de stockage peuvent réduire la latence des écritures aléatoires et également réduire considérablement tout impact sur les performances des autres transferts de données.

  • Qu'est-ce qui fonctionne différemment?

Le cache d'écriture différée est transparent pour les administrateurs et les utilisateurs, et il est créé sur tous les nouveaux disques virtuels s'il y a un nombre suffisant de disques SSD dans le pool de stockage, comme déterminé par les exigences suivantes pour l'espace de stockage associé:

  1. Les espaces simples nécessitent un disque SSD
  2. Les espaces miroir bidirectionnels et les espaces à parité simple nécessitent deux disques SSD
  3. Les espaces miroir à trois voies et les espaces à double parité nécessitent trois disques SSD

Le cache d'écriture différée fonctionne avec tous les types d'espaces de stockage, y compris les espaces de stockage avec des niveaux de stockage.

Les espaces de stockage nouvellement créés utilisent automatiquement un cache d'écriture différée de 1 Go par défaut lorsque le pool de stockage contient suffisamment de disques physiques avec MediaType défini sur SSD ou Utilisation défini sur Journal pour prendre en charge le paramètre de résilience spécifié. S'il n'y a pas suffisamment de disques physiques avec ces paramètres, la taille du cache en écriture différée est définie sur 0, sauf pour les espaces de parité, lorsqu'elle est définie sur 32 Mo.


Bonjour et bienvenue sur superuser.com. Votre exemple se réfère au serveur Windows, tandis que l'affiche pose des questions sur Windows 8.1. Êtes-vous sûr que ce dont vous parlez vaut également pour Windows 8.1? Si oui, avez-vous des références pour cela?
Mogget

3

Ça dépend vraiment. Il existe au moins 4 façons d'utiliser les SSD dans une configuration mixte, c'est-à-dire lorsqu'il existe à la fois des disques durs et des SSD:

  • Vous pouvez simplement les ajouter aveuglément à la piscine. Cela n'a aucun sens, car les données se répartissent de manière aléatoire sur vos disques, quelle que soit leur intensité d'écriture. Remarque: il s'agit bien sûr du paramètre par défaut.
  • Vous pouvez utiliser les SSD pour la journalisation avec des espaces de parité (RAID5 / 6), c'est-à-dire la mise en cache pendant les écritures. Je le recommanderais sans réserve si les espaces de parité n'étaient pas si durs. Non, vraiment, c'est MAUVAIS, à éviter à tout prix. Pour les espaces en miroir, un journal dédié est inutile car il n'y a pas de parité impliquée, juste une copie 1: 1.
  • Vous pouvez configurer un stockage hiérarchisé et laisser Windows déplacer automatiquement les données fréquemment consultées vers les SSD les plus rapides. Cela peut fonctionner décemment, mais il est vraiment difficile de comparer, donc je ne peux pas dire si c'est bon ou mauvais.
  • Vous pouvez également créer 2 baies distinctes, placer les 2 SSD dans un miroir à 2 voies pour les fichiers de programme et d'autres éléments gourmands en écriture, et placer les 4 disques durs dans un autre miroir à 2 voies pour tout le reste. C'est celui que je vous recommande.

Si vous êtes curieux de savoir pourquoi je suis si confiant, c'est parce que j'ai passé quelques semaines (sans blague) à tester l'enfer des espaces de stockage. Consultez ma série d'analyse comparative approfondie pour tous les chiffres qui soutiennent mes déclarations:

À votre santé.


2

Il y a très peu de documentation à ce sujet, mais j'ai lu quelque part que les espaces de stockage ont la possibilité d'ajouter un disque à un pool pour la journalisation. Je ne peux pas trouver l'article d'origine, mais si vous regardez la cmdlet Add-PhysicalDisk , sous Utilisation, il y a une option pour Journal ... Quand j'ai lu à ce sujet, le gars a mentionné qu'il avait utilisé un SSD comme disque de journal, et l'a ajouté à un pool de 8 disques de 2 To, et la lecture et l'écriture ont augmenté de 40 +% ... Votre kilométrage peut varier, mais cela pourrait valoir la peine ...

En tant qu'option tierce, vous pouvez également consulter FancyCache . Vous pouvez utiliser la mémoire et les SSD comme cache pour vos supports plus lents. Je l'ai utilisé auparavant, et cela a bien fonctionné, je n'ai tout simplement pas eu la chance de réinstaller depuis le passage à Server 2012 ...


+1 pour l'indice FancyCache, jamais entendu parler de celui-ci auparavant, et pourrait valoir le coup d'œil.
TheBlastOne

Les disques de journalisation ne sont utilisés que pour les espaces de parité IIRC. Pour les espaces en miroir, vous devez configurer le WBC.
Monstieur
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.