Freigeben über


Verwenden des CSV-In-Memory-Lesecache

Gilt für: Azure Stack HCI, Versionen 22H2 und 21H2, Windows Server 2022, Windows Server 2019, Windows Server 2016

Wichtig

Azure Stack HCI ist jetzt Teil von Azure Local. Die Umbenennung der Produktdokumentation wird ausgeführt. Ältere Versionen von Azure Stack HCI, z. B. 22H2, verweisen jedoch weiterhin auf Azure Stack HCI und spiegeln die Namensänderung nicht wider. Weitere Informationen

In diesem Thema wird beschrieben, wie Sie den Arbeitsspeicher des Systems einsetzen, um die Leistung von Azure Stack HCI und Windows Server durch das Zwischenspeichern häufiger Lesevorgänge zu steigern. Schreibvorgänge können nicht im Arbeitsspeicher zwischengespeichert werden.

Azure Stack HCI und Windows Server sind mit dem CSV-In-Memory-Lesecache (Cluster Shared Volume, Freigegebenes Clustervolume) kompatibel. Der Einsatz des Arbeitsspeichers des Systems zum Zwischenspeichern von Lesevorgängen kann die Leistung von Anwendungen wie Hyper-V verbessern, die ungepufferte E/A-Vorgänge für den Zugriff auf VHD- oder VHDX-Dateien verwenden. (Nicht gepufferte E/A-Vorgänge sind Vorgänge, die nicht vom Windows-Cache-Manager zwischengespeichert werden.)

Da der Cache im Arbeitsspeicher server-lokal ist, wird die Datenlokalität verbessert. Zuletzt verwendete Lesevorgänge werden im Arbeitsspeicher auf demselben Host zwischengespeichert, auf dem der virtuelle Computer (VM) ausgeführt wird, wodurch die Häufigkeit der Lesevorgänge über das Netzwerk reduziert wird. Dies führt zu einer geringeren Latenz und einer besseren Arbeitsspeicherleistung.

Beachten Sie, dass sich der CSV-In-Memory-Lesecache im Arbeitsspeicher vom Speicherpoolcache unterscheidet.

Überlegungen zur Planung

Der In-Memory-Lesecache ist am effektivsten für Workloads mit vielen Lesevorgängen, wie z. B. Virtual Desktop Infrastructure (VDI). Bei Workloads mit extrem vielen Schreibvorgängen kann der Cache hingegen mehr Aufwand als Nutzen bringen und sollte deshalb deaktiviert werden.

Sie können bis zu 80 % des gesamten physischen Arbeitsspeichers für den CSV-In-Memory-Lesecache verwenden. Achten Sie darauf, ausreichend Arbeitsspeicher für Ihre VMs zur Verfügung zu stellen!

Hinweis

Bestimmte Tools für das Microbenchmarking wie DISKSPD und VM Fleet erzielen mit aktiviertem CSV-In-Memory-Read-Cache ggf. schlechtere Ergebnisse als ohne. VM Fleet erstellt standardmäßig eine 10 GiB große VHDX pro VM (insgesamt etwa 1 TiB für 100 VMs) und führt dann gleichmäßig zufällige Lese- und Schreibvorgänge auf diesen VMs durch. Im Gegensatz zu realen Workloads folgen die Lesevorgänge keinem vorhersehbaren oder sich wiederholenden Muster. Daher ist der In-Memory-Cache nicht effektiv, sondern verursacht nur zusätzlichen Verarbeitungsaufwand.

Konfigurieren des In-Memory-Lesecaches

Der CSV-In-Memory-Lesecache ist in Azure Stack HCI, Windows Server 2019 und Windows Server 2016 mit gleicher Funktionalität verfügbar. Unter Azure Stack HCI und Windows Server 2019 ist dieser Cache mit zugeteilter Größe von 1 GiB (Gibibyte) standardmäßig aktiviert. Unter Windows Server 2016 ist er standardmäßig deaktiviert.

Betriebssystemversion Standardgröße des CSV-Caches
Azure Stack HCI 1 GiB
Windows Server 2019 1 GiB
Windows Server 2016 0 (deaktiviert)

Konfigurieren des Caches mit Windows Admin Center

Gehen Sie wie folgt vor, um den Cache mit Windows Admin Center zu konfigurieren:

  1. Stellen Sie in Windows Admin Center eine Verbindung mit einem Cluster her, und wählen Sie dann im Bereich "Extras" auf der linken Seite "Einstellungen" aus.
  2. Wählen Sie im Bereich "Einstellungen" unter "Speicher" den Speichercache aus.
  3. Im rechten Bereich aktiviert oder deaktiviert ein Kontrollkästchen den Cache, und Sie können auch den maximalen Arbeitsspeicher pro Server angeben, der dem Cache zugewiesen werden soll.
  4. Wählen Sie dann die Option Schließen.

In Windows Admin Center aktivieren bzw. deaktivieren Sie den Cache über ein Kontrollkästchen. Außerdem können Sie den maximalen Arbeitsspeicher pro Server angeben, der dem Cache zugeordnet werden soll.

Konfigurieren des Caches mit PowerShell

Um zu sehen, wie viel Arbeitsspeicher mithilfe von PowerShell zugewiesen wird, führen Sie folgendes als Administrator aus:

(Get-Cluster).BlockCacheSize

Der zurückgegebene Wert entspricht Mebibytes (MiB) pro Server. 1024 stellt z. B. 1 GiB dar.

Um die Größe des zugeteilten Arbeitsspeichers zu ändern, bearbeiten Sie diesen Wert mit PowerShell. Um z. B. 2 GiB pro Server zuzuteilen, führen Sie Folgendes aus:

(Get-Cluster).BlockCacheSize = 2048

Damit Änderungen sofort wirksam werden, müssen Sie Ihre CSV-Volumes anhalten und dann fortsetzen oder auf andere Server verschieben. Verschieben Sie z. B. mit diesem PowerShell-Fragment jedes CSV auf einen anderen Serverknoten und wieder zurück:

Get-ClusterSharedVolume | ForEach {
    $Owner = $_.OwnerNode
    $_ | Move-ClusterSharedVolume
    $_ | Move-ClusterSharedVolume -Node $Owner
}

Nächste Schritte

Verwandte Informationen finden Sie außerdem unter: