Snowflake Postgres-Servereinstellungen¶
In der folgenden Tabelle sind die Parameter aufgeführt, die für die Postgres-Serverkomponente von Snowflake Postgres-Instanzen festgelegt werden können. Der Name jeder Einstellung ist mit seiner Postgres-Dokumentation verlinkt.
Wenn in der Spalte „Standard“ der Eintrag „Postgres default“ angezeigt wird, verwenden Snowflake-Postgres-Instanzen den Standardwert von Postgres. Dies kann sich je nach Hauptversion unterscheiden.
Unter Erstellen einer Snowflake Postgres-Instanz finden Sie Details zum Festlegen von Werten für diese Postgres-Servereinstellungen beim Erstellen von Snowflake Postgres-Instanzen.
Tipp
Um die Dokumentation eines Parameters für eine bestimmte Hauptversion anzuzeigen, ändern Sie das Wort „current“ in der Hyperlink-Adresse in die Ziel-Hauptversion. Zum Beispiel diese Hyperlink-Adresse für die Einstellung postgres:work_mem:
https://www.postgresql.org/docs/current/runtime-config-resource.html#GUC-WORK-MEM
wird hierzu, um die Postgres 17-Dokumentation aufzurufen:
https://www.postgresql.org/docs/17/runtime-config-resource.html#GUC-WORK-MEM
Komponente |
Name |
Erfordert Neustart |
Beschreibung |
Standard |
|---|---|---|---|---|
pgbouncer |
FALSE |
Wenn die automatisch (anhand von „*“) erstellten Datenbankpools so viele Sekunden nicht mehr genutzt wurden, werden sie freigegeben. |
3600 |
|
pgbouncer |
FALSE |
Wie viele Serververbindungen pro Benutzer/Datenbank-Paar zugelassen werden sollen |
497 |
|
pgbouncer |
FALSE |
Ignoriert Parameter-Startpakete (z. B. options, extra_float_digits). |
client_encoding,datestyle,timezone,standard_conforming_strings,extra_float_digits |
|
pgbouncer |
FALSE |
Anzahl der vorbereiteten Anweisungen, die für eine einzelne Serververbindung aktiv bleiben |
250 |
|
pgbouncer |
FALSE |
Gibt an, wann eine Serververbindung von anderen Clients wiederverwendet werden kann. |
transaction |
|
pgbouncer |
Wenn eine Serververbindung länger als die angegebene Anzahl von Sekunden inaktiv war, wird sie geschlossen. |
FALSE |
60 |
|
postgres |
FALSE |
Führt zu einer EXPLAIN ANALYZE-Ausgabe und nicht nur EXPLAIN-Ausgabe, die gedruckt wird, wenn ein Ausführungsplan protokolliert wird. |
Standard für Postgres |
|
postgres |
FALSE |
Steuert, ob beim Protokollieren eines Ausführungsplans Statistiken zur Puffernutzung gedruckt werden. |
Standard für Postgres |
|
postgres |
FALSE |
Wählt das zu verwendende EXPLAIN-Ausgabeformat aus. |
Standard für Postgres |
|
postgres |
FALSE |
Die minimale Ausführungszeit der Anweisung in Millisekunden, die dazu führt, dass der Plan der Anweisung protokolliert wird. |
Standard für Postgres |
|
postgres |
FALSE |
Wenn verschachtelte -Anweisungen (innerhalb einer Funktion ausgeführte Anweisungen) bei der Protokollierung berücksichtigt werden. |
Standard für Postgres |
|
postgres |
FALSE |
Steuert, ob beim Protokollieren eines Ausführungsplans Zeitinformationen pro Knoten gedruckt werden. |
Standard für Postgres |
|
postgres |
FALSE |
Bewirkt, dass Trigger-Ausführungsstatistiken enthalten sind, wenn ein Ausführungsplan protokolliert wird. |
Standard für Postgres |
|
postgres |
FALSE |
Steuert, ob beim Protokollieren eines Ausführungsplans ausführliche Details gedruckt werden. |
Standard für Postgres |
|
postgres |
FALSE |
Bewirkt, dass auto_explain nur einen Bruchteil der Anweisungen in jeder Sitzung erklärt. |
Standard für Postgres |
|
postgres |
FALSE |
Gibt einen Bruchteil der Tabellengröße an, der zu „autovacuum_analyze_threshold“ hinzugefügt werden soll, wenn entschieden wird, ob ANALYZE ausgelöst werden soll. |
Standard für Postgres |
|
postgres |
TRUE |
Gibt das maximale Alter (in Transaktionen) für die Transaktions-ID einer Tabelle an, bevor ein VACUUM-Vorgang erzwungen wird, um ein Wraparound der Transaktions-ID in der Tabelle zu verhindern. |
Standard für Postgres |
|
postgres |
FALSE |
Gibt den Wert der Kostenverzögerung an, der für automatische VACUUM-Vorgänge verwendet wird. Wenn -1 angegeben ist, wird der reguläre Wert für vacuum_cost_delay verwendet. |
Standard für Postgres |
|
postgres |
FALSE |
Gibt den Wert der Kostenbeschränkung an, der für automatische VACUUM-Vorgänge verwendet wird. |
Standard für Postgres |
|
postgres |
FALSE |
Gibt einen Bruchteil der Tabellengröße an, der zu „autovacuum_vacuum_insert_threshold“ hinzugefügt werden soll, wenn entschieden wird, ob VACUUM ausgelöst werden soll. |
Standard für Postgres |
|
postgres |
FALSE |
Gibt die Anzahl der eingefügten Tupel an, die zum Auslösen von VACUUM in einer beliebigen Tabelle benötigt werden. |
Standard für Postgres |
|
postgres |
FALSE |
Gibt einen Bruchteil der Tabellengröße an, der zu „autovacuum_vacuum_threshold“ hinzugefügt werden soll, wenn entschieden wird, ob VACUUM ausgelöst werden soll. |
Standard für Postgres |
|
postgres |
FALSE |
Gibt das Ziel der Checkpoint-Vervollständigung als Bruchteil der Gesamtzeit zwischen den Checkpoints an. |
Standard für Postgres |
|
postgres |
FALSE |
Maximale Zeit zwischen automatischen WAL-Checkpoints. |
Standard für Postgres |
|
postgres |
FALSE |
Schreibt eine Meldung in das Serverprotokoll, wenn -Checkpoints, die durch das Auffüllen von WAL-Segmentdateien entstehen, näher beieinander liegen als diese Zeitspanne. |
Standard für Postgres |
|
postgres |
FALSE |
Legt das Standard-Statistikziel für Tabellenspalten fest, ohne dass ein spaltenspezifisches Ziel mit ALTER TABLE SET STATISTICS festgelegt wurde. |
Standard für Postgres |
|
postgres |
FALSE |
Wählt die Textsuchkonfiguration aus, die von den Varianten der Textsuchfunktionen verwendet wird, die kein explizites Argument haben, das die Konfiguration angibt. |
Standard für Postgres |
|
postgres |
FALSE |
Eine schreibgeschützte SQL-Transaktion kann keine nicht-temporären Tabellen ändern. |
off |
|
postgres |
FALSE |
Gibt an, ob Hot Standby Feedback über Abfragen, die derzeit auf dem Standby ausgeführt werden, an den primären oder den vorgelagerten Standby sendet. |
on |
|
postgres |
FALSE |
Beendet jede Sitzung, die innerhalb einer offenen Transaktion länger als die angegebene Zeit inaktiv ist. |
Standard für Postgres |
|
postgres |
FALSE |
Legt das Anzeigeformat für den Intervallwert fest. |
Standard für Postgres |
|
postgres |
FALSE |
Aktiviert die JIT-Unterstützung. |
Standard für Postgres |
|
postgres |
FALSE |
Bricht jede Anweisung ab, die länger als die angegebene Zeit wartet, während sie versucht, eine Sperre zu erhalten. |
Standard für Postgres |
|
postgres |
FALSE |
Bewirkt, dass jede von Autovacuum ausgeführte Aktion protokolliert wird, wenn sie mindestens die angegebene Zeit lang ausgeführt wurde. |
Standard für Postgres |
|
postgres |
FALSE |
Gibt eine Zeile an die Serverprotokolle aus, in der jede erfolgreiche Verbindung aufgeführt ist. |
Standard für Postgres |
|
postgres |
FALSE |
Legt die gewünschten Protokollziele fest. |
syslog,stderr |
|
postgres |
FALSE |
Bewirkt, dass die Beendigung von Sitzungen protokolliert wird. Die Protokollausgabe liefert ähnliche Informationen wie „log_connections“ sowie die Dauer der Sitzung. |
Standard für Postgres |
|
postgres |
FALSE |
Bewirkt, dass die Dauer jeder abgeschlossenen Anweisung protokolliert wird. |
Standard für Postgres |
|
postgres |
FALSE |
Gibt eine Zeichenfolge im printf-Stil an, die am Anfang jeder Protokollzeile ausgegeben wird. |
[%p][%b][%v][%x] %q[user=%u,db=%d,app=%a] |
|
postgres |
FALSE |
Steuert, ob eine Protokollmeldung erzeugt wird, wenn eine Sitzung länger als Deadlock_timeout wartet, um eine Sperre zu erhalten. |
on |
|
postgres |
FALSE |
Ermöglicht Sampling der Dauer von abgeschlossenen Anweisungen, die mindestens die angegebene Zeit lang ausgeführt wurden. |
Standard für Postgres |
|
postgres |
FALSE |
Bewirkt, dass die Dauer jeder abgeschlossenen Anweisung protokolliert wird, wenn die Anweisung mindestens die angegebene Zeit lang ausgeführt wurde. |
2s |
|
postgres |
FALSE |
Steuert, welche Meldungsstufen in das Serverprotokoll geschrieben werden. |
Hinweis: |
|
postgres |
FALSE |
Dies bestimmt die maximale Größe einer einzelnen Protokolldatei. |
Standard für Postgres |
|
postgres |
FALSE |
Steuert, welche SQL-Anweisungen protokolliert werden. |
ddl |
|
postgres |
FALSE |
Ermittelt den Anteil der Anweisungen, deren Dauer log_min_dauer_sample überschreitet, die protokolliert werden. |
Standard für Postgres |
|
postgres |
FALSE |
Steuert die Protokollierung von Namen und Größen von temporären Dateien. |
10MB |
|
postgres |
FALSE |
Legt den Anteil der Transaktionen fest, deren Anweisungen alle protokolliert werden, zusätzlich zu den Anweisungen, die aus anderen Gründen protokolliert wurden. |
Standard für Postgres |
|
postgres |
FALSE |
Gibt die maximale Menge an Arbeitsspeicher an, die bei der logischen Dekodierung verwendet werden soll. |
Standard für Postgres |
|
postgres |
FALSE |
Gibt die maximale Menge an Arbeitsspeicher an, der von Wartungsvorgängen wie VACUUM, CREATE INDEXund ALTER TABLE ADD FOREIGN KEY verwendet werden kann. |
TOTAL_MEMORY * 0,4 |
|
postgres |
TRUE |
Ermittelt die maximale Anzahl gleichzeitiger Verbindungen zum Datenbankserver. |
500 |
|
postgres |
TRUE |
Steuert die durchschnittliche Anzahl der für jede Transaktion zugewiesenen Objektsperren. |
Standard für Postgres |
|
postgres |
TRUE |
Gibt die maximale Anzahl der logischen Replikations-Worker an. |
Standard für Postgres |
|
postgres |
FALSE |
Legt die maximale Anzahl paralleler Worker fest, die durch einen einzelnen Dienstprogrammbefehl gestartet werden können. |
Standard für Postgres |
|
postgres |
FALSE |
Legt die maximale Anzahl von Workern fest, die der Cluster für parallele Vorgänge unterstützen kann. |
NUM_CPUS |
|
postgres |
FALSE |
Legt die maximale Anzahl von Workern fest, die von einem einzelnen Sammel- oder Sammelknoten gestartet werden können. |
NUM_CPUS |
|
postgres |
TRUE |
Gibt die maximale Anzahl von Replikations-Slots an, die der Server unterstützen kann. |
10 |
|
postgres |
FALSE |
Gibt die maximale Größe von WAL-Dateien an, die Replikations-Slots im |
STORAGE_GB * 0,1 |
|
postgres |
FALSE |
Legt fest, wie lange der Standby-Server warten soll, bevor er Standby-Abfragen abbricht, die mit bald anzuwendenden WAL-Einträgen in Konflikt stehen. |
Standard für Postgres |
|
postgres |
FALSE |
Legt fest, wie lange der Standby-Server warten soll, bevor er Standby-Abfragen abbricht, die mit bald anzuwendenden WAL-Einträgen in Konflikt stehen. |
Standard für Postgres |
|
postgres |
TRUE |
Gibt die maximale Anzahl gleichzeitiger Verbindungen von Standardservern oder Streaming-Basissicherungsclients an. |
10 |
|
postgres |
FALSE |
Maximale Größe für das WAL-Wachstum während automatischer Checkpoints. |
MIN(10GB, STORAGE_GB * 0,1) |
|
postgres |
TRUE |
Legt die maximale Anzahl der Hintergrundprozesse fest, die der Cluster unterstützen kann. |
100 |
|
postgres |
TRUE |
Maximale Anzahl der verfolgten Anweisungen. |
Standard für Postgres |
|
postgres |
FALSE |
Steuern, welche Anweisungen verfolgt werden sollen. |
Standard für Postgres |
|
postgres |
FALSE |
Es sollen Befehle des Dienstprogramms verfolgt werden. Dienstprogrammbefehle sind alle außer SELECT, INSERT, UPDATE, DELETEund MERGE. |
Standard für Postgres |
|
postgres |
FALSE |
Legt die Schätzung des Planers für die Kosten einer nicht sequenziell abgerufenen Festplattenseite fest. |
1.1 |
|
postgres |
FALSE |
Gibt eine oder mehrere freigegebene Bibliotheken an, die beim Starten der Verbindung vorab geladen werden sollen. |
Standard für Postgres |
|
postgres |
FALSE |
Bricht alle Anweisungen ab, die mehr als die angegebene Zeit in Anspruch nehmen. |
Standard für Postgres |
|
postgres |
FALSE |
Gibt an, wie viel der WAL-Verarbeitung abgeschlossen sein muss, bevor der Datenbankserver eine Erfolgsmeldung an den Client zurückgibt. |
Gebietsschema |
|
postgres |
FALSE |
Meldungen, die an syslog gesendet werden, nach Zeilen aufteilen, damit sie in 1.024 Bytes passen |
Standard für Postgres |
|
postgres |
FALSE |
Gibt die Anzahl der an TCP-Keepalive-Meldungen an, die verloren gehen können, bevor die Verbindung des Servers zum Client als unterbrochen gilt. |
4 |
|
postgres |
FALSE |
Gibt die Zeit ohne Netzwerkaktivität an, nach der das Betriebssystem eine TCP-Keepalive-Meldung an den Client senden soll. |
2 |
|
postgres |
FALSE |
Gibt die maximale Menge an Festplattenspeicher an, die ein Prozess für temporäre Dateien verwenden kann, z. B. für das Sortieren und Hashen von temporären Dateien oder die Speicherdatei für einen Host-Cursor. |
MIN(2000GB, STORAGE_GB * 0,25) |
|
postgres |
TRUE |
Speicher, der zum Speichern des Textes des aktuell ausgeführten Befehls für jede aktive Sitzung im Feld pg_stat_ activation.query reserviert ist. |
Standard für Postgres |
|
postgres |
TRUE |
Commit-Zeit von Transaktionen erfassen. |
Standard für Postgres |
|
postgres |
FALSE |
Gibt die Mindestgröße der älteren WAL-Dateien an, die im Verzeichnis „pg_wal“ gespeichert werden, falls ein Standby-Server diese für die Streaming-Replikation abrufen muss. |
Standard für Postgres |
|
postgres |
FALSE |
Legt die maximale Zeit fest, die auf die WAL-Replikation gewartet werden soll. |
Standard für Postgres |
|
postgres |
FALSE |
Legt die maximale Basismenge an Arbeitsspeicher fest, die von einem Abfragevorgang (z. B. einer Sortierung oder einer Hash-Tabelle) verwendet werden soll, bevor in temporäre Festplattendateien geschrieben wird. |
(TOTAL_MEMORY * 0,75)/ (NUM_CORES * 8) |