Behebung von Speicherproblemen in Aurora Postgre SQL - Amazon Aurora

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.

Behebung von Speicherproblemen in Aurora Postgre SQL

Wenn die Menge an Arbeitsspeicher, die für Sortier- oder Indexerstellungsvorgänge benötigt wird, die durch den work_mem Parameter zugewiesene Menge übersteigt, SQL schreibt Aurora Postgre die überschüssigen Daten in temporäre Festplattendateien. Beim Schreiben der Daten SQL verwendet Aurora Postgre denselben Speicherplatz, den es zum Speichern von Fehler- und Meldungsprotokollen verwendet, d. h. lokalen Speicher. Für jede Instance in Ihrem Aurora SQL Postgre-DB-Cluster steht eine Menge an lokalem Speicher zur Verfügung. Die Speichermenge basiert auf der entsprechenden DB-Instance-Klasse. Wenn Sie den lokalen Speicherplatz erhöhen möchten, müssen Sie die Instance so ändern, dass sie eine größere DB-Instance-Klasse verwendet. Spezifikationen für DB-Instance-Klassen finden Sie unter Hardware-Spezifikationen für DB-Instance-Klassen für Aurora.

Sie können den lokalen Speicherplatz Ihres Aurora SQL Postgre-DB-Clusters überwachen, indem Sie die CloudWatch Amazon-Metrik für FreeLocalStorage beobachten. Diese Metrik meldet die Menge des verfügbaren Speicherplatzes jeder DB-Instance im Aurora-DB-Cluster für temporäre Tabellen und Protokolle. Weitere Informationen finden Sie unter Überwachung von Aurora Aurora-Metriken mit Amazon CloudWatch.

Sortier-, Indizierungs- und Gruppierungsoperationen beginnen im Arbeitsspeicher, müssen jedoch häufig in den lokalen Speicher ausgelagert werden. Wenn Ihrem Aurora SQL Postgre-DB-Cluster aufgrund dieser Art von Vorgängen der lokale Speicher ausgeht, können Sie das Problem lösen, indem Sie eine der folgenden Maßnahmen ergreifen.

  • Rüsten Sie den Arbeitsspeicher auf. Dadurch muss weniger lokaler Speicher verwendet werden. Standardmäßig SQL weist Postgre 4 MB für jeden Sortier-, Gruppen- und Indexvorgang zu. Um den aktuellen Arbeitsspeicherwert für die Writer-Instance Ihres Aurora SQL Postgre-DB-Clusters zu überprüfen, stellen Sie mit dem folgenden Befehl eine Verbindung zur Instance her psql und führen Sie ihn aus.

    postgres=> SHOW work_mem; work_mem ---------- 4MB (1 row)

    Sie können den Arbeitsspeicher auf Sitzungsebene vor Sortier-, Gruppierungs- und anderen Operationen wie folgt erhöhen.

    SET work_mem TO '1 GB';

    Weitere Informationen zum Arbeitsspeicher finden Sie unter Ressourcenverbrauch in der Postgre-Dokumentation. SQL

  • Ändern Sie den Aufbewahrungszeitraum für Protokolle, sodass die Protokolle für kürzere Zeiträume gespeichert werden. Um zu erfahren wie dies geht, vgl. SQLDatenbankprotokolldateien von Aurora Postgre SQL RDS.

Verwenden Sie für Aurora SQL Postgre-DB-Cluster, die größer als 40 TB sind, keine db.t2-, db.t3- oder db.t4g-Instance-Klassen. Wir empfehlen, die T-DB-Instance-Klassen nur für Entwicklungs- und Testserver oder andere Nicht-Produktionsserver zu verwenden. Weitere Informationen finden Sie unter DB-Instance-Klassenarten.