Aktivieren und Konfigurieren des Azure-VM-Datenträgercaches mit dem Azure-Portal

Abgeschlossen

Wir haben die Einstellungen und Eigenschaften gesehen, die Sie auswählen können, um die Leistung Ihres Datenträgers vorherzusagen. Nun schauen Sie sich Möglichkeiten an, diese durch Zwischenspeichern zu verbessern.

Nutzung des Datenträgercaches

Ein Cache ist eine spezielle Komponente, in der Regel im Arbeitsspeicher, die Daten speichert, damit schneller darauf zugegriffen werden kann. Die Daten in einem Cache sind oft Daten, die zuvor gelesen wurden, oder Daten, die aus einer früheren Berechnung resultierten. Es soll schneller auf Daten zugegriffen werden können als beim Abrufen der Daten vom Datenträger.

Zum Zwischenspeichern wird ein spezieller (und u. U. teurer) temporärer Speicher verwendet, der eine höhere Lese- und Schreibleistung als dauerhafter Speicher aufweist. Da dieser Cachespeicher häufig begrenzt ist, müssen Sie entscheiden, welche Datenvorgänge am meisten vom Zwischenspeichern profitieren. Aber auch wenn der Cache z.B. in Azure in hohem Maße verfügbar gemacht werden kann, ist es dennoch wichtig, die Workloadmuster der einzelnen Datenträger zu kennen, bevor Sie entscheiden, welcher Cachetyp verwendet werden soll.

Das Caching von Lesevorgängen soll den Datenabruf beschleunigen. Anstatt aus dem dauerhaften Speicher werden die Daten aus dem schnelleren Cache gelesen. Beim Lesen von Daten wird der Cache unter den folgenden Bedingungen genutzt:

  • Die Daten wurden zuvor gelesen und sind im Cache vorhanden.
  • Außerdem ist der Cache groß genug, um alle diese Daten zu speichern.

Sie sollten unbedingt beachten, dass das Zwischenspeichern von Lesevorgängen hilfreich ist, wenn eine gewisse Vorhersagbarkeit der Lesewarteschlange gegeben ist, beispielsweise bei mehreren sequenziellen Lesevorgängen. Bei zufälligen E/A-Vorgängen, bei denen die Daten, auf die Sie zugreifen, über den ganzen Speicher verteilt sind, bietet das Zwischenspeichern wenig oder gar keinen Nutzen und kann sogar die Datenträgerleistung reduzieren.

Durch das Caching von Schreibvorgängen wird versucht, das Schreiben von Daten in den dauerhaften Speicher zu beschleunigen. Wenn eine App einen Schreibcache verwendet, kann sie die zu speichernden Daten berücksichtigen. In der Praxis werden die Daten im Cache in eine Warteschlange eingereiht, um auf Datenträger geschrieben zu werden. Wie Sie sich vorstellen können, kann dieser Mechanismus eine potenzielle Fehlerquelle darstellen, wenn z.B. das System heruntergefahren wird, bevor die zwischengespeicherten Daten geschrieben werden. Einige Systeme, z.B. SQL Server, regeln das Schreiben zwischengespeicherter Daten in den permanenten Datenträgerspeicher selbst.

Azure-Datenträgerzwischenspeichern

Es gibt zwei Arten des Datenträgerzwischenspeicherns, die Datenträgerspeicher betreffen:

  • Azure Storage-Caching
  • Azure-VM-Datenträgerzwischenspeicherung

Azure Storage-Caching stellt Cachedienste für Azure Blob Storage, Azure Files und andere Inhalte in Azure bereit. Die Konfiguration dieser Arten von Cache ist nicht Gegenstand dieses Moduls.

Azure-VM-Datenträgerzwischenspeichern dient zum Optimieren der Lese- und Schreibzugriffe auf die Dateien der virtuellen Festplatte (Virtual Hard Disk, VHD), die Azure-VMs angefügt sind. In diesem Modul konzentrieren wir uns auf die Datenträgerzwischenspeicherung.

Die Datenträgerzwischenspeicherung wird für Ultra Disks oder SSD Premium v2 nicht unterstützt, diese profitieren jedoch bereits von einer geringeren Wartezeit, die einige der gleichen Kernprobleme wie die Datenträgerzwischenspeicherung behandelt.

Azure-VM-Datenträgertypen

Mit Azure-VMs werden drei Typen von Datenträgern verwendet:

  • Betriebssystem-Datenträger: Wenn Sie eine Azure-VM erstellen, fügt Azure automatisch eine virtuelle Festplatte (virtual hard disk, VHD) für das Betriebssystem an.

  • Temporärer Datenträger: Wenn Sie eine Azure-VM erstellen, fügt Azure auch automatisch einen temporären Datenträger hinzu. Dieser Datenträger wird für Daten wie Seiten- und Auslagerungsdateien verwendet. Die Daten auf diesem Datenträger können während der Wartung oder der erneuten Bereitstellung einer VM verloren gehen. Verwenden Sie diesen Datenträger nicht zum Speichern dauerhafter Daten wie Datenbankdateien oder Transaktionsprotokolle.

  • Datenträger für Daten: Ein Datenträger ist eine VHD, die zum Speichern von Anwendungsdaten oder anderen Daten, die Sie aufbewahren müssen, an eine VM angefügt ist.

Betriebssystemdatenträger und Datenträger für Daten nutzen die Azure-VM-Datenträgerzwischenspeicherung. Die Cachegröße für einen VM-Datenträger hängt von der Größe der VM-Instanz und der Anzahl der Datenträger ab, die auf dem virtuellen Computer bereitgestellt werden. Die Zwischenspeicherung kann nur für Datenträger mit einer Größe von bis zu 4 TiB aktiviert werden.

Cacheoptionen für Azure-VMs

Es gibt drei allgemeine Optionen für die VM-Datenträgerzwischenspeicherung:

  • Lese-/Schreibzugriff: Rückschreibcache Verwenden Sie diese Option nur, wenn Ihre Anwendung das Schreiben zwischengespeicherter Daten auf dauerhafte Datenträger bei Bedarf ordnungsgemäß ausführt.
  • Schreibgeschützt: Lesevorgänge werden über den Cache ausgeführt.
  • Kein: Kein Cache Wählen Sie diese Option für lesegeschützte und schreibintensive Datenträger. Protokolldateien sind gut geeignet, da sie mit schreibintensiven Vorgängen verbunden sind.

Nicht jede Cachingoption ist für jeden Datenträgertyp verfügbar. Die folgende Tabelle zeigt die Optionen zum Zwischenspeichern für die einzelnen Datenträgertypen:

Schreibgeschützt Lesen/Schreiben Keine
Betriebssystem-Datenträger Ja Ja (Standard) Ja
Datenträger für Daten Ja (Standard) Ja ja
Temporärer Datenträger nein Nein no

Hinweis

Die Optionen für die Datenträgerzwischenspeicherung können für VMs der L-Serie und B-Serie nicht geändert werden.

Überlegungen zur Leistung der Azure-VM-Datenträgerzwischenspeicherung

Wie können Ihre Cacheeinstellungen die Leistung Ihrer auf Azure-VMs ausgeführten Workloads beeinträchtigen?

Betriebssystem-Datenträger

Das Standardverhalten eines VM-Betriebssystemdatenträgers besteht darin, den Cache im Lese-/Schreibmodus zu verwenden. Wenn Sie also Anwendungen haben, die Datendateien auf dem Betriebssystemdatenträger speichern und viele zufällige Lese-/Schreibvorgänge für die Datendateien ausführen. Erwägen Sie, diese Dateien auf einen Datenträger zu verschieben, auf dem die Zwischenspeicherung deaktiviert ist. Woran liegt das? Wenn die Lesewarteschlange keine sequenziellen Lesevorgänge enthält, hat das Zwischenspeichern wenig oder keinen Nutzen. Wenn Sie den Cache so verwalten, als seien die enthaltenen Daten sequenziell, kann dies die Datenträgerleistung beeinträchtigen.

Datenträger für Daten

Für leistungsabhängige Anwendungen sollten Sie Datenträger für Daten anstelle des Betriebssystem-Datenträgers verwenden. Mithilfe von separaten Datenträgern können Sie die entsprechenden Cacheeinstellungen für jeden Datenträger konfigurieren.

Beispielsweise kann auf Azure-VMs, die SQL Server ausführen, das Aktivieren des schreibgeschützten Zwischenspeicherns auf den Datenträgern für Daten (für reguläre und TempDB-Daten) zu erheblichen Leistungsverbesserungen führen. Protokolldateien sind auf der anderen Seite gute Kandidaten für Datenträger für Daten ohne Zwischenspeichern.

Warnung

Durch Ändern der Cacheeinstellung eines Azure-Datenträgers wird der Zieldatenträger getrennt und erneut angefügt. Wenn es sich um den Betriebssystemdatenträger handelt, wird die VM neu gestartet. Beenden Sie alle Anwendungen und Dienste, die von dieser Unterbrechung betroffen sein könnten, bevor Sie die Cacheeinstellung des Datenträgers ändern.

Sie können die Cacheeinstellungen für virtuelle Computer mit einem der folgenden Tools konfigurieren:

  • Azure-Portal
  • Azure CLI
  • Azure PowerShell
  • Resource Manager-Vorlagen

Konfigurieren der Zwischenspeicherung im Azure-Portal

Wenn Sie einen neuen virtuellen Computer über das Azure-Portal bereitstellen, können Sie die standardmäßige Zwischenspeicherkonfiguration für den Betriebssystem-Datenträger vom Lese-/Schreibzugriff nicht ändern, bis der virtuelle Computer bereitgestellt wird.

Wenn Sie einem vorhandenen virtuellen Computer einen Datenträger für Daten hinzufügen, können Sie die Cacheoption konfigurieren, bevor der Datenträger für den virtuellen Computer bereitgestellt wird.

Als Nächstes erstellen Sie eine VM und ändern die Cacheeinstellungen über das Azure-Portal.