Paramètres du serveur Snowflake Postgres¶
Le tableau ci-dessous détaille les paramètres qui peuvent être définis pour le composant du serveur Postgres des instances Snowflake Postgres. Le nom de chaque paramètre est lié par un lien hypertexte à sa documentation Postgres.
Lorsque « Postgres par défaut » apparaît dans la colonne Par défaut, les instances Snowflake Postgres utilisent la valeur par défaut de Postgres. Celle-ci peut varier en fonction de la version majeure.
Consultez Création d’une instance Snowflake Postgres pour plus de détails sur la définition des valeurs de ces paramètres de serveur Postgres lors de la création d’instances Snowflake Postgres.
Astuce
Pour voir la documentation d’un paramètre pour une version majeure spécifique, remplacez le mot « current » dans l’adresse du lien hypertexte par la version majeure cible. Par exemple, cette adresse de lien hypertexte pour le paramètre postgres:work_mem :
https://www.postgresql.org/docs/current/runtime-config-resource.html#GUC-WORK-MEM
devient ce qui suit pour consulter sa documentation Postgres 17 :
https://www.postgresql.org/docs/17/runtime-config-resource.html#GUC-WORK-MEM
Composant |
Nom |
Nécessite un redémarrage |
Description |
Par défaut |
|---|---|---|---|---|
pgbouncer |
FALSE |
Si les pools de bases de données automatiquement créés (via « * ») n’ont pas été utilisés pendant ce nombre de secondes, ils sont désactivés. |
3600 |
|
pgbouncer |
FALSE |
Nombre de connexions serveur à autoriser par paire utilisateur/base de données. |
497 |
|
pgbouncer |
FALSE |
Ignore les paquets de démarrage des paramètres (par exemple, options,extra_float_digits). |
client_encoding,datestyle,timezone,standard_conforming_strings,extra_float_digits |
|
pgbouncer |
FALSE |
Nombre d’instructions préparées maintenues actives sur une seule connexion serveur |
250 |
|
pgbouncer |
FALSE |
Indique lorsqu’une connexion serveur peut être réutilisée par d’autres clients. |
transaction |
|
pgbouncer |
Si une connexion serveur a été inactive pendant un nombre de secondes supérieur à celui-ci, elle sera fermée. |
FALSE |
60 |
|
postgres |
FALSE |
Provoque l’affichage de la sortie EXPLAIN ANALYZE, plutôt que de la sortie EXPLAIN, lorsqu’un plan d’exécution est journalisé. |
Postgres par défaut |
|
postgres |
FALSE |
Contrôle si les statistiques d’utilisation de la mémoire tampon sont affichées lorsqu’un plan d’exécution est journalisé. |
Postgres par défaut |
|
postgres |
FALSE |
Sélectionne le format de sortie EXPLAIN à utiliser. |
Postgres par défaut |
|
postgres |
FALSE |
Temps minimum d’exécution de l’instruction, en millisecondes, qui entraînera la journalisation du plan de l’instruction. |
Postgres par défaut |
|
postgres |
FALSE |
Provoque la prise en compte des instructions imbriquées (instructions exécutées à l’intérieur d’une fonction) pour la journalisation. |
Postgres par défaut |
|
postgres |
FALSE |
Contrôle si les informations de chronométrage par nœud sont affichées lorsqu’un plan d’exécution est journalisé. |
Postgres par défaut |
|
postgres |
FALSE |
Provoque l’inclusion des statistiques d’exécution du déclencheur lorsqu’un plan d’exécution est journalisé. |
Postgres par défaut |
|
postgres |
FALSE |
Contrôle si des détails verbaux sont affichés lorsqu’un plan d’exécution est journalisé. |
Postgres par défaut |
|
postgres |
FALSE |
Conduit auto_explain à n’expliquer qu’une partie des instructions de chaque session. |
Postgres par défaut |
|
postgres |
FALSE |
Spécifie une partie de la taille de la table à ajouter à autovacuum_analyze_threshold lors de la décision de déclencher une ANALYZE. |
Postgres par défaut |
|
postgres |
TRUE |
Spécifie l’âge maximal (en transactions) que l’ID de transaction d’une table peut atteindre avant qu’une opération VACUUM ne soit forcée pour empêcher le bouclage de l’ID de transaction dans la table. |
Postgres par défaut |
|
postgres |
FALSE |
Spécifie la valeur du délai de coût qui sera utilisée dans les opérations VACUUM automatiques. Si -1 est spécifié, la valeur vacuum_cost_delay régulière sera utilisée. |
Postgres par défaut |
|
postgres |
FALSE |
Spécifie la valeur de limite de coût qui sera utilisée dans les opérations VACUUM automatiques. |
Postgres par défaut |
|
postgres |
FALSE |
Spécifie une partie de la taille de la table à ajouter à autovacuum_vacuum_insert_threshold lors de la décision de déclencher un VACUUM. |
Postgres par défaut |
|
postgres |
FALSE |
Spécifie le nombre de tuples insérés nécessaires pour déclencher un VACUUM dans n’importe quelle table. |
Postgres par défaut |
|
postgres |
FALSE |
Spécifie une partie de la taille de la table à ajouter à autovacuum_vacuum_threshold lors de la décision de déclencher un VACUUM. |
Postgres par défaut |
|
postgres |
FALSE |
Spécifie la cible d’achèvement du point de contrôle, sous forme de fraction du temps total entre les points de contrôle. |
Postgres par défaut |
|
postgres |
FALSE |
Temps maximum entre les points de contrôle WAL automatiques. |
Postgres par défaut |
|
postgres |
FALSE |
Écrit un message dans le journal du serveur si les points de contrôle causés par le remplissage des fichiers de segment WAL ont lieu à des intervalles plus rapprochés que cette durée. |
Postgres par défaut |
|
postgres |
FALSE |
Définit la cible de statistiques par défaut pour les colonnes de la table sans cible spécifique à la colonne définie via ALTER TABLE SET STATISTICS. |
Postgres par défaut |
|
postgres |
FALSE |
Sélectionne la configuration de recherche de texte utilisée par les variantes des fonctions de recherche de texte qui ne disposent pas d’argument explicite spécifiant la configuration. |
Postgres par défaut |
|
postgres |
FALSE |
Une transaction SQL en lecture seule ne peut pas modifier des tables qui ne sont pas temporaires. |
inactif |
|
postgres |
FALSE |
Spécifie si un système de secours actif enverra ou non des informations au système principal ou au système de secours en amont concernant les requêtes en cours d’exécution sur le système de secours. |
actif |
|
postgres |
FALSE |
Met fin à toute session qui a été inactive dans une transaction ouverte pendant une durée supérieure à la durée spécifiée. |
Postgres par défaut |
|
postgres |
FALSE |
Définit le format d’affichage de la valeur d’intervalle. |
Postgres par défaut |
|
postgres |
FALSE |
Active l’assistance JIT. |
Postgres par défaut |
|
postgres |
FALSE |
Annule toute instruction qui attend plus longtemps que la durée spécifiée lors de la tentative d’acquisition d’un verrou. |
Postgres par défaut |
|
postgres |
FALSE |
Provoque la journalisation de chaque action exécutée par autovacuum si celle-ci a duré au moins le temps spécifié. |
Postgres par défaut |
|
postgres |
FALSE |
Affiche une ligne dans les journaux du serveur détaillant chaque connexion réussie. |
Postgres par défaut |
|
postgres |
FALSE |
Définit les destinations souhaitées pour les journaux. |
syslog,stderr |
|
postgres |
FALSE |
Provoque la journalisation des terminaisons de session. La sortie du journal fournit des informations similaires à celles de log_connections, ainsi que la durée de la session. |
Postgres par défaut |
|
postgres |
FALSE |
Provoque la journalisation de la durée de chaque instruction terminée. |
Postgres par défaut |
|
postgres |
FALSE |
Spécifie une chaîne de caractères de type printf qui est affichée au début de chaque ligne du journal. |
[%p][%b][%v][%x] %q[user=%u,db=%d,app=%a] |
|
postgres |
FALSE |
Contrôle si un message de journal est généré lorsqu’une session attend plus longtemps que deadlock_timeout pour acquérir un verrou. |
actif |
|
postgres |
FALSE |
Permet d’échantillonner la durée des instructions terminées qui ont duré au moins le temps spécifié. |
Postgres par défaut |
|
postgres |
FALSE |
Provoque la journalisation de la durée de chaque instruction terminée si celle-ci a duré pendant au moins le temps spécifié. |
2s |
|
postgres |
FALSE |
Contrôle les niveaux de messages écrits dans le journal du serveur. |
notice |
|
postgres |
FALSE |
Ceci détermine la taille maximale d’un fichier de journal individuel. |
Postgres par défaut |
|
postgres |
FALSE |
Contrôle les instructions SQL à journaliser. |
ddl |
|
postgres |
FALSE |
Détermine la partie des instructions dont la durée dépasse log_min_duration_sample qui sera journalisée. |
Postgres par défaut |
|
postgres |
FALSE |
Contrôle la journalisation des noms et des tailles de fichiers temporaires. |
10MB |
|
postgres |
FALSE |
Définit la partie des transactions dont les instructions sont toutes journalisées, en plus des instructions journalisées pour d’autres raisons. |
Postgres par défaut |
|
postgres |
FALSE |
Spécifie la quantité maximale de mémoire à utiliser par le décodage logique. |
Postgres par défaut |
|
postgres |
FALSE |
Spécifie la quantité maximale de mémoire à utiliser par les opérations de maintenance, comme VACUUM, CREATE INDEX et ALTER TABLE ADD FOREIGN KEY. |
TOTAL_MEMORY * 0.4 |
|
postgres |
TRUE |
Détermine le nombre maximal de connexions simultanées au serveur de base de données. |
500 |
|
postgres |
TRUE |
Contrôle le nombre moyen de verrous d’objet attribués à chaque transaction. |
Postgres par défaut |
|
postgres |
TRUE |
Spécifie le nombre maximal de processus de réplication logique. |
Postgres par défaut |
|
postgres |
FALSE |
Définit le nombre maximal de processus parallèles pouvant être démarrés par une seule commande utilitaire. |
Postgres par défaut |
|
postgres |
FALSE |
Définit le nombre maximal de processus que le cluster peut prendre en charge pour des opérations parallèles. |
NUM_CPUS |
|
postgres |
FALSE |
Définit le nombre maximal de processus qui peuvent être démarrés par un seul nœud Gather ou Gather Merge. |
NUM_CPUS |
|
postgres |
TRUE |
Spécifie le nombre maximal d’emplacements de réplication que le serveur peut prendre en charge. |
10 |
|
postgres |
FALSE |
Spécifie la taille maximale des fichiers WAL que les emplacements de réplication sont autorisés à conserver dans le répertoire |
STORAGE_GB * 0.1 |
|
postgres |
FALSE |
Détermine la durée pendant laquelle le serveur de secours doit attendre avant d’annuler les requêtes de secours qui entrent en conflit avec les entrées WAL sur le point d’être appliquées. |
Postgres par défaut |
|
postgres |
FALSE |
Détermine la durée pendant laquelle le serveur de secours doit attendre avant d’annuler les requêtes de secours qui entrent en conflit avec les entrées WAL sur le point d’être appliquées. |
Postgres par défaut |
|
postgres |
TRUE |
Spécifie le nombre maximal de connexions simultanées à partir de serveurs de secours ou de clients de sauvegarde de base en continu. |
10 |
|
postgres |
FALSE |
Taille maximale autorisée pour la croissance des WAL lors des points de contrôle automatiques. |
MIN(10GB, STORAGE_GB * 0.1) |
|
postgres |
TRUE |
Définit le nombre maximal de processus d’arrière-plan que le cluster peut prendre en charge. |
100 |
|
postgres |
TRUE |
Nombre maximal d’instructions suivies. |
Postgres par défaut |
|
postgres |
FALSE |
Contrôle les instructions à suivre. |
Postgres par défaut |
|
postgres |
FALSE |
Indique si les commandes utilitaires doivent être suivies. Les commandes utilitaires sont toutes celles autres que SELECT, INSERT, UPDATE, DELETE et MERGE. |
Postgres par défaut |
|
postgres |
FALSE |
Définit l’estimation par le planificateur du coût d’une page de disque non récupérée de manière séquentielle. |
1.1 |
|
postgres |
FALSE |
Spécifie une ou plusieurs bibliothèques partagées qui doivent être préchargées au début de la connexion. |
Postgres par défaut |
|
postgres |
FALSE |
Annule toute instruction qui prend plus de temps que la durée spécifiée. |
Postgres par défaut |
|
postgres |
FALSE |
Spécifie la quantité de traitement WAL qui doit être effectuée avant que le serveur de base de données renvoie une indication de « réussite » au client. |
local |
|
postgres |
FALSE |
Divise les messages envoyés à syslog par lignes pour les adapter à 1 024 octets |
Postgres par défaut |
|
postgres |
FALSE |
Spécifie le nombre de messages TCP keepalive qui peuvent être perdus avant que la connexion serveur au client ne soit considérée comme interrompue. |
4 |
|
postgres |
FALSE |
Spécifie le temps d’inactivité réseau après lequel le système d’exploitation doit envoyer un message TCP keepalive vers le client. |
2 |
|
postgres |
FALSE |
Spécifie l’espace disque maximal qu’un processus peut utiliser pour les fichiers temporaires, tels que les fichiers temporaires de tri et de hachage, ou le fichier de stockage pour un curseur maintenu. |
MIN(2000GB, STORAGE_GB * 0.25) |
|
postgres |
TRUE |
Mémoire réservée pour stocker le texte de la commande en cours d’exécution pour chaque session active, pour le champ pg_stat_activity.query. |
Postgres par défaut |
|
postgres |
TRUE |
Enregistre le temps de validation des transactions. |
Postgres par défaut |
|
postgres |
FALSE |
Spécifie la taille minimale des fichiers WAL historiques conservés dans le répertoire pg_wal, au cas où un serveur de secours aurait besoin de les récupérer pour la réplication en continu. |
Postgres par défaut |
|
postgres |
FALSE |
Définit le temps d’attente maximal pour la réplication des WAL. |
Postgres par défaut |
|
postgres |
FALSE |
Définit la quantité maximale de mémoire de base à utiliser par une opération de requête (telle qu’un tri ou une table de hachage) avant d’écrire dans des fichiers de disque temporaires. |
(TOTAL_MEMORY * 0.75)/ (NUM_CORES * 8) |