Speicherplätze - Mischen Sie SSD mit HDD


8

Ich kann keine Informationen finden, also hoffe ich, dass jemand hier etwas Licht ins Dunkel bringen kann.

Ich habe eine neue Kopie von Windows 8 Pro installiert. Ich möchte Speicherplätze mit 4 internen Festplatten und 2 internen SSDs verwenden. Verwendet Windows 8 die SSDs auf besondere Weise (z. B. zwischengespeichert), um die Geschwindigkeit des Speicherpools zu erhöhen?

Oder sind die SSDs nur Teil des Datenpools und es wird kein Leistungsvorteil gewährt?

Antworten:


13

Dies erweitert die Antwort von TiernanO etwas - ich habe mich bemüht, einen detaillierten Hintergrund zu all dem zu finden, und dachte, ich würde es für alle gut aufschreiben:

SSDs können verwendet werden, um Ihre Pools zu beschleunigen. Dies funktioniert jedoch nur in bestimmten Situationen und es gibt eine Reihe von Bedingungen, die eingehalten werden müssen.

Erstens können Sie einem vorhandenen Pool nicht einfach SSDs hinzufügen und erwarten, dass dies Ihr System beschleunigt. Wenn Sie SSDs mit Festplatten im selben Pool mischen, verschwenden Sie im Grunde genommen die SSDs, da jede Ihrer Dateien auf die anderen Festplatten aufgeteilt ist, sodass sich möglicherweise die Hälfte Ihrer Datei auf einer SSD und die andere Hälfte auf einer befindet die Festplatte - Sie müssen also noch warten, bis die Festplatte hochgefahren ist, und die Daten suchen, bevor sie tatsächlich von Ihrem Computer verwendet werden können, obwohl die SSD die erste Hälfte der Daten vor langer Zeit gefunden hat. [Dies ist eine übermäßige Vereinfachung. Tatsächlich werden die Daten auf Blockebene auf verschiedene Festplatten aufgeteilt, nicht auf Dateiebene.]

Sie möchten also wahrscheinlich nicht SSDs und HDDs auf derselben virtuellen Festplatte mischen - haben Pools, die nur aus HDDs oder nur aus SSDs bestehen, nicht aus beiden. Im Übrigen ist es in Ordnung, sie im selben Speicherpool zu haben und nur nicht auf derselben virtuellen Festplatte zu arbeiten.

Kommen wir nun zu Ihrer Frage zurück: Ja, es ist möglich, SSDs zu verwenden, um die Dinge mithilfe der Journaling-Funktion von Storage Space zu beschleunigen. Es gibt jedoch einige Bedingungen:

  1. Sie müssen eine virtuelle Festplatte mit der Ausfallsicherheitseinstellung "Parität" verwenden. Journalfestplatten können nicht mit virtuellen Festplatten "Einfach" oder "Spiegeln" verwendet werden
  2. Sie müssen mindestens zwei SSDs haben - Sie können dies nicht überschreiben (im Hintergrund sind sie als Spiegelbereich für sich konfiguriert, falls eine ausfällt).
  3. Der gesamte Speicherplatz auf der SSD muss für das Journaling reserviert sein. Sie können keine der SSDs zum Speichern von Daten verwenden
  4. Nichts davon kann über die Windows-Benutzeroberfläche in Windows 8 oder Server 2012 konfiguriert werden. Sie müssen dies manuell mit PowerShell tun
  5. Wenn Sie die Anzahl der Paritätsbereiche in Ihrem Pool manuell erhöht haben, sollten Sie auch die Anzahl der Journaldatenträger erhöhen (z. B. wenn Sie den Standardwert für 1 Paritätsbereich verwenden, benötigen Sie 2 SSDs. Wenn Sie 2 Paritätsbereiche haben benötigen Sie 4 SSDs usw.).
  6. Es mag offensichtlich sein, aber das Hinzufügen von Journaldatenträgern erhöht nur die Geschwindigkeit des Datenschreibvorgangs auf den virtuellen Datenträger - die Lesegeschwindigkeit für Daten bleibt davon unberührt

Angenommen, Sie sind mit diesen Einschränkungen zufrieden, müssen Sie in einem erhöhten PowerShell-Fenster Folgendes tun:

In diesem Beispiel gehe ich davon aus, dass Sie Ihren Speicherpool oder Ihre virtuellen Festplatten noch nicht erstellt haben. Wenn Sie über einen vorhandenen Satz verfügen, ändern Sie die Anweisungen entsprechend.

# 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

Sie können jetzt überprüfen, ob alles funktioniert hat, indem Sie 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

Quellen:


Ist Punkt 4 für Windows 8.1 und 2012 R2 noch gültig?
Peter

1
@ Peter gilt meines Wissens immer noch.
Alan Isherwood

5

Ich denke, dies ist auf Windows Server 2012 R2 verbessert .

  • Rückschreib-Cache

Speicherbereiche können vorhandene Solid-State-Laufwerke im Speicherpool verwenden, um einen Rückschreibcache zu erstellen, der Stromausfälle toleriert und kleine zufällige Schreibvorgänge auf Solid-State-Laufwerke puffert, bevor sie später auf Festplattenlaufwerke geschrieben werden.

  • Welchen Wert bringt diese Änderung?

Kleine zufällige Schreibvorgänge dominieren häufig die üblichen Workloads in Unternehmen und können sich auf die Leistung anderer Datenübertragungen auswirken, die stattfinden. Durch die Verwendung von Solid-State-Laufwerken (die sich durch wahlfreien Zugriff auszeichnen) für einen Rückschreibcache können Speicherbereiche die Latenz der zufälligen Schreibvorgänge verringern und auch die Auswirkungen auf die Leistung anderer Datenübertragungen erheblich verringern.

  • Was funktioniert anders?

Der Rückschreibcache ist für Administratoren und Benutzer transparent und wird auf allen neuen virtuellen Festplatten erstellt, wenn sich im Speicherpool eine ausreichende Anzahl von Solid-State-Laufwerken befindet. Dies wird durch die folgenden Anforderungen für den zugeordneten Speicherplatz bestimmt:

  1. Einfache Räume erfordern ein Solid-State-Laufwerk
  2. Zweiwege-Spiegelräume und Einzelparitätsräume erfordern zwei Solid-State-Laufwerke
  3. Dreiwege-Spiegelräume und Doppelparitätsräume erfordern drei Solid-State-Laufwerke

Der Rückschreibcache funktioniert mit allen Arten von Speicherbereichen, einschließlich Speicherbereichen mit Speicherebenen.

Neu erstellte Speicherplätze verwenden standardmäßig automatisch einen 1-GB-Rückschreibcache, wenn der Speicherpool genügend physische Datenträger enthält, wobei MediaType auf SSD oder Verwendung auf Journal festgelegt ist, um die angegebene Ausfallsicherheitseinstellung zu unterstützen. Wenn mit diesen Einstellungen nicht genügend physische Festplatten vorhanden sind, wird die Größe des Rückschreibcaches auf 0 festgelegt, mit Ausnahme von Paritätsbereichen, wenn sie auf 32 MB festgelegt ist.


Hallo und willkommen bei superuser.com. Ihr Beispiel bezieht sich auf Windows Server, während das Poster nach Windows 8.1 fragte. Sind Sie sicher, dass das, worüber Sie sprechen, auch für Windows 8.1 gilt? Wenn ja, haben Sie Referenzen dafür?
Mogget

3

Es kommt wirklich darauf an. Es gibt mindestens vier Möglichkeiten, wie Sie SSDs in einem gemischten Setup verwenden können, dh wenn sowohl HDDs als auch SSDs vorhanden sind:

  • Sie können sie einfach alle blind zum Pool hinzufügen. Dies macht überhaupt keinen Sinn, da sich die Daten zufällig auf Ihren Festplatten verteilen, egal wie schreibintensiv sie sind. Hinweis: Dies ist natürlich die Standardeinstellung.
  • Sie können die SSDs für das Journaling mit Paritätsbereichen (RAID5 / 6) verwenden, dh für das Caching während des Schreibens. Dies würde ich von ganzem Herzen empfehlen, wenn Paritätsräume nicht so stark saugen. Nein, wirklich, es ist SCHLECHT, unbedingt vermeiden. Für gespiegelte Räume ist ein dediziertes Journal nutzlos, da keine Parität erforderlich ist, sondern nur eine 1: 1-Kopie.
  • Sie können mehrstufigen Speicher einrichten und Windows Daten, auf die häufig zugegriffen wird, automatisch auf die schnelleren SSDs verschieben. Das mag anständig funktionieren, aber es ist wirklich schwer zu bewerten, daher kann ich nicht sagen, ob es gut oder schlecht ist.
  • Sie können auch 2 separate Arrays erstellen, die 2 SSDs in einen 2-Wege-Spiegel für Programmdateien und andere schreibintensive Dinge legen und die 4 HDDs für alles andere in einen anderen 2-Wege-Spiegel legen. Dies ist die, die ich für Sie empfehle.

Wenn Sie neugierig sind, warum ich so zuversichtlich bin, dann deshalb, weil ich ein paar Wochen (kein Scherz) damit verbracht habe, die Hölle aus den Speicherbereichen zu testen. In meiner ausführlichen Benchmarking-Reihe finden Sie alle Zahlen, die meine Aussagen stützen:

Prost.


2

Es gibt sehr wenig Dokumentation dazu, aber ich habe irgendwo gelesen, dass Storage Spaces die Option hat, einem Pool für Journaling eine Festplatte hinzuzufügen. Ich kann den Originalartikel nicht finden, aber wenn Sie sich das Cmdlet Add-PhysicalDisk unter Verwendung ansehen, gibt es eine Option für Journal ... Als ich darüber las, erwähnte der Typ, dass er eine SSD als Journaldisk verwendet hat, und fügte es einem Pool von 8 2-TB-Laufwerken hinzu und erhöhte das Lesen und Schreiben um 40 +% ... Ihr Kilometerstand kann variieren, aber es könnte einen Versuch wert sein ...

Als Option eines Drittanbieters möchten Sie möglicherweise auch einen Blick auf FancyCache werfen . Sie können Speicher und SSDs als Cache für Ihre langsameren Medien verwenden. Ich habe es schon einmal verwendet und es hat gut funktioniert. Ich hatte seit dem Wechsel zu Server 2012 keine Chance mehr, es erneut zu installieren.


+1 für FancyCache-Hinweis, noch nie davon gehört, und möglicherweise einen Blick wert.
TheBlastOne

Journaldisketten werden nur für Parity Spaces IIRC verwendet. Für gespiegelte Bereiche müssen Sie den WBC konfigurieren.
Monstieur
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.