Konzepte von Performance Insights - Amazon DocumentDB

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Konzepte von Performance Insights

Durchschnittliche aktive Sitzungen

Datenbanklast (DB-Last) misst den Aktivitätsgrad in Ihrer Datenbank. Die wichtigste Metrik für Performance Insights ist DB Load, die jede Sekunde erfasst wird. Die Einheit für die DBLoad Metrik ist der Durchschnitt der aktiven Sitzungen (AAS) für eine Amazon DocumentDB DocumentDB-Instance.

Eine aktive Sitzung ist eine Verbindung, die Arbeit an die Amazon DocumentDB DocumentDB-Instance übermittelt hat und auf eine Antwort wartet. Wenn Sie beispielsweise eine Anfrage an eine Amazon DocumentDB DocumentDB-Instance senden, ist die Datenbanksitzung aktiv, während die Instance die Abfrage verarbeitet.

Um die Anzahl der durchschnittlich aktiven Sitzungen AAS zu erhalten, ruft Performance Insights die Anzahl der Sitzungen ab, die gleichzeitig eine Abfrage ausführen. Das AAS ist die Gesamtzahl der Sitzungen geteilt durch die Gesamtzahl der Stichproben. Die folgende Tabelle zeigt fünf aufeinanderfolgende Beispiele einer laufenden Abfrage.

Beispiel Anzahl der Sitzungen, die eine Abfrage ausführen AAS Berechnung

1

2

2

2 Sitzungen/1 Beispiel

2

0

1

2 Sitzungen/2 Beispiele

3

4

2

6 Sitzungen/3 Beispiele

4

0

1.5

6 Sitzungen/4 Beispiele

5

4

2

10 Sitzungen/5 Beispiele

Im vorherigen Beispiel beträgt der DB-Load für das Zeitintervall von 1-5 den Wert AAS 2. Eine Erhöhung der DB-Last bedeutet, dass im Durchschnitt mehr Sitzungen für die Datenbank ausgeführt werden.

Dimensionen

DieDB Load Metrik unterscheidet sich von den anderen Zeitreihenmetriken, da Sie sie in Unterkomponenten aufteilen können, die als Dimensionen bezeichnet werden. Sie können sich Dimensionen als Kategorien für die verschiedenen Merkmale der DB Load-Metrik vorstellen. Bei der Diagnose von Leistungsproblemen sind die Dimensionen Wait States und Top Query am nützlichsten.

Wartezustände

Ein Wartestatus bewirkt, dass eine Abfrageanweisung auf das Eintreten eines bestimmten Ereignisses wartet, bevor sie weiter ausgeführt werden kann. Beispielsweise kann eine Abfrageanweisung warten, bis eine gesperrte Ressource entsperrt ist. Durch die Kombination DB Load mit Wartezuständen können Sie sich ein vollständiges Bild vom Sitzungsstatus machen. Hier sind verschiedene Wartezustände von Amazon DocumentDB:

Amazon DocumentDB DocumentDB-Wartestatus Beschreibung des Wartestatus

Riegeln

Der Latch-Wartestatus tritt auf, wenn die Sitzung darauf wartet, den Pufferpool auszulagern. Häufiges Ein- und Auslagern in den Pufferpool kann häufiger vorkommen, wenn das System häufig umfangreiche Abfragen verarbeitet, Sammlungsscans durchführt oder wenn der Pufferpool zu klein ist, um den Arbeitssatz zu verarbeiten.

CPU

Der CPU Wartestatus tritt ein, wenn die Sitzung wartet. CPU

CollectionLock

Der CollectionLock Wartestatus tritt ein, wenn die Sitzung darauf wartet, eine Sperre für die Sammlung zu erlangen. Diese Ereignisse treten auf, wenn DDL Operationen an der Sammlung ausgeführt werden.

DocumentLock

Der DocumentLock Wartestatus tritt ein, wenn die Sitzung darauf wartet, ein Dokument zu sperren. Eine hohe Anzahl gleichzeitiger Schreibvorgänge auf dasselbe Dokument führt zu mehr DocumentLock Wartezuständen in diesem Dokument.

SystemLock

Der SystemLock Wartestatus tritt auf, wenn die Sitzung auf dem System wartet. Dies kann der Fall sein, wenn häufig Abfragen mit langer Laufzeit, lang andauernde Transaktionen oder eine hohe Parallelität im System auftreten.

IO

Der IO-Wartestatus tritt auf, wenn die Sitzung auf den Abschluss der IO wartet.

BufferLock

Der BufferLock Wartestatus tritt ein, wenn die Sitzung darauf wartet, eine Sperre für eine gemeinsam genutzte Seite im Puffer zu erlangen. BufferLockWartezustände können verlängert werden, wenn andere Prozesse die Cursor auf den angeforderten Seiten offen halten.

LowMemThrottle

Der LowMemThrottle Wartestatus tritt auf, wenn die Sitzung aufgrund einer hohen Speicherauslastung auf der Amazon DocumentDB DocumentDB-Instance wartet. Wenn dieser Status für eine lange Zeit andauert, sollten Sie erwägen, die Instance zu skalieren, um zusätzlichen Speicher bereitzustellen. Weitere Informationen finden Sie unter Resource Governor.

BackgroundActivity

Der BackgroundActivity Wartestatus tritt auf, wenn die Sitzung auf interne Systemprozesse wartet.

Sonstige

Der Wartestatus Andere ist ein interner Wartestatus. Wenn dieser Status über einen längeren Zeitraum andauert, sollten Sie erwägen, diese Abfrage zu beenden. Weitere Informationen finden Sie unter Wie finde und beende ich Abfragen mit langer Laufzeit oder blockierter Ausführung?

Die häufigsten Abfragen

Während bei Wartezuständen Engpässe auftreten, zeigen Abfragen am häufigsten, welche Abfragen am meisten zur Datenbanklast beitragen. Beispielsweise könnten derzeit viele Abfragen gleichzeitig in der Datenbank ausgeführt werden, aber eine einzelne Abfrage könnte 99 % der DB-Last verbrauchen. In diesem Fall könnte die hohe Belastung auf ein Problem mit der Abfrage hinweisen.

Max v CPU

Das Diagramm Datenbanklast im Dashboard dient zum Erfassen, Aggregieren und Anzeigen von Sitzungsinformationen. Um festzustellen, ob aktive Sitzungen das Maximum überschreitenCPU, sehen Sie sich ihr Verhältnis zur CPUMax-V-Linie an. Der Max CPU v-Wert wird durch die Anzahl der CPU (virtuellenCPU) V Kerne für Ihre Amazon DocumentDB DocumentDB-Instance bestimmt.

Wenn die DB-Auslastung häufig über der CPUMax-V-Linie liegt und der primäre Wartestatus gleich istCPU, CPU ist der überlastet. In diesem Fall möchten Sie möglicherweise die Verbindungen zur Instance drosseln, alle Abfragen mit hoher CPU Last optimieren oder eine größere Instance-Klasse in Betracht ziehen. Hohe und konsistente Instances von Wartezuständen deuten darauf hin, dass es möglicherweise Engpässe oder Probleme mit Ressourcenkonflikten gibt, die behoben werden müssen. Dies kann auch dann der Fall sein, wenn die DB-Last die CPUMax-V-Grenze nicht überschreitet.