Configurações do servidor Snowflake Postgres¶
A tabela abaixo detalha os parâmetros que podem ser definidos para o componente do servidor Postgres das instâncias do Snowflake Postgres. O nome de cada configuração está vinculado à respectiva documentação do Postgres.
Quando «Padrão do Postgres» aparece na coluna Padrão, as instâncias do Snowflake Postgres usam o valor padrão do Postgres. Isso pode variar conforme a versão principal.
Consulte Criando uma instância do Snowflake Postgres para obter detalhes sobre como definir valores para essas configurações do servidor Postgres ao criar instâncias do Snowflake Postgres.
Dica
Para ver a documentação de um parâmetro referente a uma versão principal específica, altere a palavra «current» no endereço do hiperlink para a versão principal de destino. Por exemplo, este endereço de hiperlink para a configuração postgres:work_mem:
https://www.postgresql.org/docs/current/runtime-config-resource.html#GUC-WORK-MEM
passa a ser o seguinte endereço para visitar a respectiva documentação do Postgres 17:
https://www.postgresql.org/docs/17/runtime-config-resource.html#GUC-WORK-MEM
Componente |
Nome |
Requer reinicialização |
Descrição |
Padrão |
|---|---|---|---|---|
pgbouncer |
FALSE |
Se os pools de banco de dados criados automaticamente (via «*») não forem utilizados por este número de segundos, eles serão liberados. |
3600 |
|
pgbouncer |
FALSE |
Quantas conexões de servidor devem ser permitidas por par de usuário/banco de dados. |
497 |
|
pgbouncer |
FALSE |
Ignorar pacotes de inicialização de parâmetros (por exemplo, extra_float_digits). |
client_encoding,datestyle,timezone,standard_conforming_strings,extra_float_digits |
|
pgbouncer |
FALSE |
Número de instruções preparadas que são mantidas ativas em uma única conexão de servidor. |
250 |
|
pgbouncer |
FALSE |
Especifica quando uma conexão de servidor pode ser reutilizada por outros clientes. |
transaction |
|
pgbouncer |
Se uma conexão de servidor ficar ociosa por mais tempo do que este número de segundos, ela será fechada. |
FALSE |
60 |
|
postgres |
FALSE |
Gera a saída de EXPLAIN ANALYZE, e não apenas a saída de EXPLAIN, que será impressa quando um plano de execução for registrado. |
Padrão do Postgres |
|
postgres |
FALSE |
Controla se as estatísticas de uso do buffer são impressas quando um plano de execução é registrado. |
Padrão do Postgres |
|
postgres |
FALSE |
Seleciona o formato da saída de EXPLAIN a ser usado. |
Padrão do Postgres |
|
postgres |
FALSE |
O tempo mínimo de execução da instrução, em milissegundos, que fará com que o plano da instrução seja registrado. |
Padrão do Postgres |
|
postgres |
FALSE |
Faz com que as instruções aninhadas (instruções executadas dentro de uma função) sejam consideradas para registro em log. |
Padrão do Postgres |
|
postgres |
FALSE |
Controla se as informações de tempo por nó são impressas quando um plano de execução é registrado. |
Padrão do Postgres |
|
postgres |
FALSE |
Faz com que as estatísticas de execução de acionamento sejam incluídas quando um plano de execução é registrado. |
Padrão do Postgres |
|
postgres |
FALSE |
Controla se todos os detalhes são impressos quando um plano de execução é registrado. |
Padrão do Postgres |
|
postgres |
FALSE |
Faz com que auto_explain explique apenas uma fração das instruções em cada sessão. |
Padrão do Postgres |
|
postgres |
FALSE |
Especifica uma fração do tamanho da tabela a ser adicionada a autovacuum_analyze_threshold ao decidir se é para acionar ou não uma ação ANALYZE. |
Padrão do Postgres |
|
postgres |
TRUE |
Especifica a duração máxima (em transações) que o ID da transação da tabela pode atingir antes que uma operação VACUUM seja forçada para impedir o wraparound do ID da transação na tabela. |
Padrão do Postgres |
|
postgres |
FALSE |
Especifica o valor do atraso do custo que será usado nas operações VACUUM automáticas. Se -1 for especificado, o valor regular vacuum_cost_delay será usado. |
Padrão do Postgres |
|
postgres |
FALSE |
Especifica o valor limite do custo que será usado nas operações VACUUM automáticas. |
Padrão do Postgres |
|
postgres |
FALSE |
Especifica uma fração do tamanho da tabela a ser adicionada a autovacuum_vacuum_insert_threshold ao decidir se é para acionar ou não uma ação VACUUM. |
Padrão do Postgres |
|
postgres |
FALSE |
Especifica o número de tuplas inseridas necessárias para acionar um VACUUM em qualquer tabela. |
Padrão do Postgres |
|
postgres |
FALSE |
Especifica uma fração do tamanho da tabela a ser adicionada a autovacuum_vacuum_threshold ao decidir se é para acionar ou não uma ação VACUUM. |
Padrão do Postgres |
|
postgres |
FALSE |
Especifica a meta da conclusão do ponto de verificação, como uma fração do tempo total entre os pontos de verificação. |
Padrão do Postgres |
|
postgres |
FALSE |
Tempo máximo entre os pontos de verificação WAL automáticos. |
Padrão do Postgres |
|
postgres |
FALSE |
Grava uma mensagem no log do servidor se os pontos de verificação causados pelo registro dos arquivos de segmento do WAL ocorrem mais próximos do que esta quantidade de tempo. |
Padrão do Postgres |
|
postgres |
FALSE |
Define a meta de estatística padrão para colunas de tabela sem uma meta específica de coluna definida por ALTER TABLE SET STATISTICS. |
Padrão do Postgres |
|
postgres |
FALSE |
Seleciona a configuração de pesquisa de texto usada pelas variantes das funções de pesquisa de texto que não têm um argumento explícito que especifica a configuração. |
Padrão do Postgres |
|
postgres |
FALSE |
Uma transação SQL somente leitura não pode alterar tabelas não temporárias. |
desativado |
|
postgres |
FALSE |
Especifica se uma espera ativa enviará ou não feedback à espera primária ou upstream sobre as consultas que estão em execução na espera. |
ativado |
|
postgres |
FALSE |
Encerra qualquer sessão que tenha ficado ociosa em uma transação aberta por mais tempo do que o especificado. |
Padrão do Postgres |
|
postgres |
FALSE |
Define o formato de exibição do valor do intervalo. |
Padrão do Postgres |
|
postgres |
FALSE |
Habilita o suporte a JIT. |
Padrão do Postgres |
|
postgres |
FALSE |
Anula qualquer instrução que aguarde mais do que o tempo especificado enquanto tenta adquirir um bloqueio. |
Padrão do Postgres |
|
postgres |
FALSE |
Faz com que cada ação executada por autovacuum seja registrada se for executada por pelo menos o tempo especificado. |
Padrão do Postgres |
|
postgres |
FALSE |
Gera uma linha nos logs do servidor detalhando cada conexão bem-sucedida. |
Padrão do Postgres |
|
postgres |
FALSE |
Define os destinos de log desejados. |
syslog,stderr |
|
postgres |
FALSE |
Faz com que os encerramentos de sessão sejam registrados. A saída de log mostra informações semelhantes a log_connections, mais a duração da sessão. |
Padrão do Postgres |
|
postgres |
FALSE |
Faz com que a duração de cada instrução concluída seja registrada. |
Padrão do Postgres |
|
postgres |
FALSE |
Especifica uma cadeia de caracteres no estilo printf, que é emitida no início de cada linha do log. |
[%p][%b][%v][%x] %q[user=%u,db=%d,app=%a] |
|
postgres |
FALSE |
Controla se uma mensagem de log é produzida quando uma sessão aguarda mais tempo que o deadlock_timeout para adquirir um bloqueio. |
ativado |
|
postgres |
FALSE |
Permite gerar uma amostragem da duração das instruções concluídas que foram executadas por pelo menos o tempo especificado. |
Padrão do Postgres |
|
postgres |
FALSE |
Faz com que a duração de cada instrução concluída seja registrada se a instrução for executada por pelo menos o tempo especificado. |
2s |
|
postgres |
FALSE |
Controla quais níveis de mensagem são gravados no log do servidor. |
notice |
|
postgres |
FALSE |
Determina o tamanho máximo de um arquivo de log individual. |
Padrão do Postgres |
|
postgres |
FALSE |
Controla quais instruções SQL são registradas. |
ddl |
|
postgres |
FALSE |
Determina a fração das instruções com duração superior a log_min_duration_sample que serão registradas. |
Padrão do Postgres |
|
postgres |
FALSE |
Controla o registro de nomes e tamanhos de arquivos temporários. |
10MB |
|
postgres |
FALSE |
Define a fração das transações com instruções que são todas registradas, além das instruções registradas por outros motivos. |
Padrão do Postgres |
|
postgres |
FALSE |
Especifica a quantidade máxima de memória que será usada pela decodificação lógica. |
Padrão do Postgres |
|
postgres |
FALSE |
Especifica a quantidade máxima de memória que será usada por operações de manutenção, como VACUUM, CREATE INDEX e ALTER TABLE ADD FOREIGN KEY. |
TOTAL_MEMORY * 0,4 |
|
postgres |
TRUE |
Determina o número máximo de conexões simultâneas no servidor de banco de dados. |
500 |
|
postgres |
TRUE |
Controla o número médio de bloqueios de objetos alocados para cada transação. |
Padrão do Postgres |
|
postgres |
TRUE |
Especifica o número máximo de trabalhadores de replicação lógica. |
Padrão do Postgres |
|
postgres |
FALSE |
Define o número máximo de trabalhadores paralelos que podem ser iniciados por um único comando de utilitário. |
Padrão do Postgres |
|
postgres |
FALSE |
Define o número máximo de trabalhadores que o cluster pode suportar em operações paralelas. |
NUM_CPUS |
|
postgres |
FALSE |
Define o número máximo de trabalhadores que podem ser iniciados por um único nó Gather ou Gather Merge. |
NUM_CPUS |
|
postgres |
TRUE |
Especifica o número máximo de slots de replicação que o servidor pode suportar. |
10 |
|
postgres |
FALSE |
Especifica o tamanho máximo de arquivos WAL que os slots de replicação podem reter no diretório |
STORAGE_GB * 0,1 |
|
postgres |
FALSE |
Determina quanto tempo o servidor de espera deve aguardar antes de cancelar as consultas em espera que entram em conflito com as entradas WAL prestes a serem aplicadas. |
Padrão do Postgres |
|
postgres |
FALSE |
Determina quanto tempo o servidor de espera deve aguardar antes de cancelar as consultas em espera que entram em conflito com as entradas WAL prestes a serem aplicadas. |
Padrão do Postgres |
|
postgres |
TRUE |
Especifica o número máximo de conexões simultâneas de servidores de espera ou clientes de backup base de streaming. |
10 |
|
postgres |
FALSE |
Tamanho máximo para permitir que o WAL cresça durante os pontos de verificação automáticos. |
MIN(10GB, STORAGE_GB * 0,1) |
|
postgres |
TRUE |
Define o número máximo de processos em segundo plano que o cluster pode suportar. |
100 |
|
postgres |
TRUE |
Número máximo de instruções rastreadas. |
Padrão do Postgres |
|
postgres |
FALSE |
Controla quais instruções devem ser rastreadas. |
Padrão do Postgres |
|
postgres |
FALSE |
Os comandos de utilitário devem ser rastreados. Os comandos de utilitário são todos aqueles, exceto SELECT, INSERT, UPDATE, DELETE e MERGE. |
Padrão do Postgres |
|
postgres |
FALSE |
Define a estimativa do planejador para o custo de uma página de disco buscada não sequencialmente. |
1,1 |
|
postgres |
FALSE |
Especifica uma ou mais bibliotecas compartilhadas que devem ser pré-carregadas no início da conexão. |
Padrão do Postgres |
|
postgres |
FALSE |
Anula qualquer instrução que leve mais tempo do que o especificado. |
Padrão do Postgres |
|
postgres |
FALSE |
Especifica o volume de processamento WAL que deve ser concluído antes que o servidor de banco de dados retorne uma indicação de «sucesso» para o cliente. |
local |
|
postgres |
FALSE |
Divide as mensagens enviadas para o syslog por linhas e para caber em 1.024 bytes. |
Padrão do Postgres |
|
postgres |
FALSE |
Especifica o número de mensagens keepalive TCP que podem ser perdidas antes que a conexão do servidor com o cliente seja considerada inativa. |
4 |
|
postgres |
FALSE |
Especifica a quantidade de tempo sem atividade de rede após a qual o sistema operacional deverá enviar uma mensagem keepalive TCP para o cliente. |
2 |
|
postgres |
FALSE |
Especifica a quantidade máxima de espaço em disco que um processo pode usar para arquivos temporários, como arquivos temporários de classificação e hash, ou o arquivo de armazenamento para um cursor mantido pressionado. |
MIN(2000GB, STORAGE_GB * 0,25) |
|
postgres |
TRUE |
Memória reservada para armazenar o texto do comando que está em execução para cada sessão ativa, no campo pg_stat_activity.query. |
Padrão do Postgres |
|
postgres |
TRUE |
Registra o tempo de confirmação das transações. |
Padrão do Postgres |
|
postgres |
FALSE |
Especifica o tamanho mínimo dos arquivos WAL anteriores mantidos no diretório pg_wal, caso um servidor de espera precise buscá-los para replicação de streaming. |
Padrão do Postgres |
|
postgres |
FALSE |
Define o tempo máximo de espera para a replicação de WAL. |
Padrão do Postgres |
|
postgres |
FALSE |
Define a quantidade máxima base de memória que será usada por uma operação de consulta (como uma tabela de classificação ou de hash) antes de gravar em arquivos de disco temporários. |
(TOTAL_MEMORY * 0,75)/ (NUM_CORES * 8) |