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.
Verbesserte Arbeitsspeicherverwaltung in Aurora PostgreSQL
Kundenworkloads, die den in der DB-Instance verfügbaren freien Arbeitsspeicher ausschöpfen, führen zu einem Neustart der Datenbank durch das Betriebssystem, was die Nichtverfügbarkeit der Datenbank zur Folge hat. Aurora PostgreSQL hat verbesserte Funktionen zur Arbeitsspeicherverwaltung eingeführt, die Stabilitätsprobleme und Neustarts der Datenbank aufgrund von zu wenig freiem Arbeitsspeicher proaktiv verhindern. Diese Verbesserung ist standardmäßig in den folgenden Versionen verfügbar:
15.3 und höhere 15-Versionen
14.8 und höhere 14-Versionen
13.11 und höhere 13-Versionen
12.15 und höhere 12-Versionen
11.20 und höhere 11-Versionen
Die Arbeitsspeicherverwaltung wird auf folgende Weise verbessert:
Datenbanktransaktionen, die mehr Arbeitsspeicher anfordern, werden abgebrochen, wenn sich das System einem kritischen Arbeitsspeicherdruck nähert.
Das System steht unter kritischem Arbeitsspeicherdruck, wenn der gesamte physische Arbeitsspeicher bereits ausgeschöpft und auch der Swapspeicher nahezu ausgeschöpft ist. Unter diesen Umständen werden alle Transaktionen abgebrochen, die Speicher anfordern, um den Arbeitsspeicherdruck in der DB-Instance sofort zu reduzieren.
Wichtige PostgreSQL-Launcher und Hintergrund-Worker wie Autovacuum Worker sind immer geschützt.
Konfigurieren von Speicherverwaltungsparametern
So aktivieren Sie die Speicherverwaltung
Diese Option ist standardmäßig aktiviert. Eine Fehlermeldung wird angezeigt, wenn eine Transaktion aufgrund von zu wenig Arbeitsspeicher abgebrochen wird, wie im folgenden Beispiel gezeigt:
ERROR: out of memory Detail: Failed on request of size 16777216.
So deaktivieren Sie die Speicherverwaltung
Um diese Funktion zu deaktivieren, stellen Sie mit psql eine Verbindung zum Aurora-PostgreSQL-DB-Cluster her und verwenden Sie die SET-Anweisung für die Parameterwerte, wie unten beschrieben.
Für Aurora-PostgreSQL-Versionen 11.21, 12.16, 13.12, 14.9, 15.4 und ältere Versionen:
postgres=>
SET rds.memory_allocation_guard = true;
Der Standardwert des rds.memory_allocation_guard
Parameters ist false
in der Parametergruppe auf gesetzt.
Für Aurora PostgreSQL 12.17, 13.13, 14.10, 15.5 und höhere Versionen:
postgres=>
rds.enable_memory_management = false;
Der Standardwert des rds.enable_memory_management
Parameters ist true
in der Parametergruppe auf gesetzt.
Das Festlegen der Werte dieser Parameter in der DB-Cluster-Parametergruppe verhindert, dass die Abfragen abgebrochen werden. Weitere Informationen zur DB-Cluster-Parametergruppe finden Sie unter Parametergruppen für Amazon Aurora.
Der Wert dieser dynamischen Parameter kann auch auf Sitzungsebene festgelegt werden, um eine Sitzung in eine verbesserte Speicherverwaltung einzubeziehen oder auszuschließen.
Anmerkung
Wir raten davon ab, diese Funktion zu deaktivieren, da sie zu out-of-memory Fehlern führen kann, die aufgrund der Speicherauslastung im System zu einem Workload-bedingten Neustart der Datenbank führen können.