Überwachen von DAX
Sie können wichtige Metriken überwachen, z. B. die Cache-Trefferrate, um eine optimale DAX-Cluster-Leistung sicherzustellen, Probleme zu diagnostizieren und zu bestimmen, wann Sie den Cluster skalieren müssen. Durch die regelmäßige Überprüfung der wichtigsten Kennzahlen können Sie die Leistung, Stabilität und Kosteneffizienz aufrechterhalten, indem Sie den Cluster gemäß Ihren Workload-Anforderungen skalieren. Weitere Informationen zum Überwachen von DAX finden Sie unter Produktionsüberwachung.
Die folgende Liste enthält einige der wichtigsten Kennzahlen, die Sie überwachen sollten:
-
Cache-Trefferrate – Zeigt, wie effektiv DAX zwischengespeicherte Daten bereitstellt, sodass weniger auf die zugrunde liegenden DynamoDB-Tabellen zugegriffen werden muss. Wenige Cache-Fehler für den Cluster deuten auf eine gute Caching-Effizienz hin. Wenige Cache-Treffer weisen jedoch darauf hin, dass Sie möglicherweise die TTL-Einstellung für das Caching erneut überprüfen müssen oder der Workload nicht für das Caching geeignet ist.
Verwenden Sie Amazon CloudWatch, um die Cache-Trefferrate Ihres DAX-Clusters zu berechnen. Vergleichen Sie die Metriken
ItemCacheHits,ItemCacheMisses,QueryCacheHitsundQueryCacheMisses, um diese Rate zu erhalten. Die folgende Formel zeigt, wie die Cache-Trefferrate berechnet wird. Um die Rate mit dieser Formel zu berechnen, teilen Sie Ihre Cache-Treffer durch die Summe Ihrer Cache-Treffer und -Fehler.Cache hit ratio = Cache hits / (Cache hits + Cache misses)Die Cache-Trefferrate ist eine Zahl zwischen 0 und 1, die als Prozentsatz dargestellt wird. Ein höherer Prozentsatz weist auf eine insgesamt bessere Cache-Auslastung hin.
-
ErrorRequestCount – Die Anzahl der Anforderungen, die zu Benutzerfehlern führten, die vom Knoten oder Cluster gemeldet wurden.
ErrorRequestCountbeinhaltet Anforderungen, die vom Knoten oder Cluster gedrosselt wurden. Durch die Überwachung von Benutzerfehlern können Sie Fehlkonfigurationen bei der Skalierung oder häufig verwendete Element-/Partitionsmuster in Ihrer Anwendung identifizieren. -
Betriebslatenzen – Die Überwachung der Latenz von Lese- und Schreibvorgängen zum und vom DAX-Cluster kann Ihnen dabei helfen, Leistungsengpässe zu identifizieren. Zunehmende Latenzen können auf Probleme mit Ihrer DAX-Cluster-Konfiguration oder Ihrem Netzwerk bzw. auf die Notwendigkeit einer Skalierung hinweisen.
-
Netzwerkverbrauch – Behalten Sie die Metriken
NetworkBytesInundNetworkBytesOutim Auge, um den Netzwerkdatenverkehr Ihres DAX-Clusters zu überwachen. Ein unerwarteter Anstieg des Netzwerkdurchsatzes könnte zu mehr Client-Anforderungen oder ineffizienten Abfragemustern führen, die bedingen, dass mehr Daten übertragen werden.Durch die Überwachung des Netzwerkverbrauchs können Sie die Kosten für Ihren DAX-Cluster verwalten. Sie können außerdem sicherstellen, dass das Netzwerk nicht zu einem Engpass für die Cluster-Leistung wird.
-
Bereinigungsrate – Zeigt an, wie oft Elemente aus Ihrem Cache entfernt werden, um Platz für neue Elemente zu schaffen. Wenn die Bereinigungsrate im Laufe der Zeit zunimmt, ist Ihr Cache möglicherweise zu klein oder Ihre Caching-Strategie ist nicht effektiv.
Überwachen Sie die Metrik
EvictedSizein CloudWatch, um festzustellen, ob Ihre Cache-Größe für Ihren Workload ausreichend ist. Wenn die bereinigte Gesamtgröße weiter zunimmt, müssen Sie Ihren DAX-Cluster möglicherweise hochskalieren, um einen größeren Cache aufzunehmen. -
CPU-Auslastung – Dies bezieht sich auf den Prozentsatz der CPU-Auslastung des Knotens oder Clusters. Dies ist eine wichtige Metrik, die für jede Datenbank oder jedes Caching-System überwacht werden muss. Eine hohe CPU-Auslastung kann bedeuten, dass Ihr DAX-Cluster möglicherweise überlastet ist und skaliert werden muss, um der gestiegenen Nachfrage gerecht zu werden.
Überwachen Sie die Metrik
CPUUtilizationfür Ihren DAX-Cluster. Wenn sich Ihre CPU-Auslastung kontinuierlich 70–80 % nähert oder überschreitet, sollten Sie ein Hochskalieren Ihres DAX-Clusters in Betracht ziehen, wie im folgenden Abschnitt beschrieben.Wenn die Anzahl der an DAX gesendeten Anforderungen die Kapazität eines Knotens überschreitet, begrenzt DAX die Rate, mit der zusätzliche Anforderungen akzeptiert werden. Dazu wird ein ThrottlingException-Wert zurückgegeben. DAX die CPU-Auslastung Ihres Clusters kontinuierlich aus, um zu bestimmen, welche Anforderungsmenge verarbeitet werden kann, während gleichzeitig ein fehlerfreier Cluster-Status beibehalten wird.
Sie können die Metrik
ThrottledRequestCountüberwachen, die von DAX in CloudWatch veröffentlicht wird. Wenn diese Ausnahmen regelmäßig angezeigt werden, sollten Sie die Skalierung des Clusters in Erwägung ziehen.
Skalieren Ihres DAX-Clusters mithilfe von Überwachungsdaten
Sie können feststellen, ob Sie Ihren DAX-Cluster hoch- oder herunterskalieren müssen, indem Sie dessen Leistungsmetriken überwachen.
-
Hoch- oder Herunterskalieren – Wenn Ihr DAX-Cluster eine hohe CPU-Auslastung, geringe Cache-Treffer (nach der Optimierung der Caching-Strategie) oder hohe Betriebslatenzen aufweist, sollten Sie Ihren Cluster hochskalieren. Das Hinzufügen weiterer Knoten, was auch als Aufskalieren bezeichnet wird, kann dazu beitragen, die Last gleichmäßiger zu verteilen. Für Workloads mit steigenden Schreibvorgängen pro Sekunde müssen Sie möglicherweise leistungsstärkere Knoten auswählen (Hochskalieren).
-
Herunterskalieren – Wenn Sie konsistent eine niedrige CPU-Auslastung und Betriebslatenzen unter Ihren Schwellenwerten beobachten, haben Sie möglicherweise zu viele Ressourcen bereitgestellt. In solchen Fällen sollten Sie die Knoten herunterskalieren, um die Kosten zu senken. Sie können die Anzahl der Knoten in Zeiten geringer Auslastung auf 1 reduzieren, können den Cluster aber nicht vollständig herunterfahren.