Essa é uma lista de termos e seus significados no contexto do PostgreSQL, e dos sistemas de banco de dados relacionais (SGBDR), em geral.
Atomicidade, Consistência, Isolamento, e Durabilidade. Esse conjunto de propriedades das transações do banco de dados visa garantir a validade durante operações concorrentes, mesmo em caso de erros, travamento, falta de energia, etc.
Uma coleção de bancos de dados e objetos SQL globais, e seus metadados estáticos e dinâmicos comuns. Às vezes referido apenas como agrupamento (cluster).
No PostgreSQL, o termo agrupamento é também, às vezes, usado para se referir a uma instância. (Esse termo não deve ser confundido com o comando SQL CLUSTER.)
O processo de coletar estatísticas de dados em tabelas e outras relações, para auxiliar o planejador de consultas a tomar decisões sobre como executar as consultas.
(Esse termo não deve ser confundido com a opção ANALYZE
do comando EXPLAIN.)
Para obter mais informações, veja o comando ANALYZE.
Os arquivos de registro contêm linhas de texto legíveis por humanos sobre eventos. Os exemplos incluem falhas de conexão, consultas com execução demorada, etc.
Para obter mais informações, veja Manutenção do arquivo de log.
Propriedade de uma transação, onde todas as suas operações são concluídas como uma única unidade, ou nenhuma delas é concluída. Além disso, se ocorrer uma falha do sistema durante a execução de uma transação, nenhum resultado parcial será visível após a recuperação. Essa é uma das propriedades ACID.
Em referência a datum: o fato do valor não poder ser dividido em componentes menores.
Em referência a transação de banco de dados: veja atomicidade.
Conjunto de processos em segundo plano que rotineiramente executam as operações vacuum e analyze.
Para obter mais informações, veja O daemon autovacuum.
Uma coleção com nome de objetos SQL locais.
Para obter mais informações, veja Overview.
Mecanismo que permite um processo limitar ou impedir o acesso simultâneo a um recurso.
O padrão SQL usa este termo para indicar o que é chamado de banco de dados na terminologia do PostgreSQL.
(Esse termo não deve ser confundido com catálogo do sistema).
Para obter mais informações, veja Overview.
Coleção de tabelas
que descrevem a estrutura de todos os
objetos SQL
da instância.
O catálogo do sistema reside no esquema pg_catalog
.
Essas tabelas contêm dados em representação interna, e normalmente
não são consideradas úteis para serem examinadas pelo usuário; também
estão presentes visões
amigáveis no esquema pg_catalog
,
que oferecem acesso mais conveniente a algumas dessas informações.
Também existem tabelas e visões adicionais no esquema
information_schema
, mostrando algumas das mesmas
informações, e outras adicionais, conforme exigido pelo
padrão SQL
(veja O esquema de informações).
Para obter mais informações, veja Esquemas.
Maneira de identificar uma linha de uma tabela, ou de outra relação, pelos valores contidos em um ou mais atributos da relação.
Tipo de restrição definida em uma ou mais colunas de uma tabela, requerendo que os valores nessas colunas identifiquem zero ou uma linha em outra (ou, com menos frequência, na mesma) tabela.
Caso especial de restrição de unicidade (unique constraint), definida em uma tabela ou outra relação, que também garante que todos os atributos da chave primária também não tenham valores nulos. Como o nome indica, pode haver apenas uma chave primária por tabela, embora seja possível ter várias restrições de unicidade que também não tenham atributos que possam ser nulos.
Processo especializado responsável pela execução de pontos de verificação.
Ver Relação.
Qualquer processo, possivelmente remoto, que estabeleça uma sessão se conectando a uma instância para interagir com um banco de dados.
Processo que coleta informações estatísticas sobre as atividades da instância.
Para obter mais informações, veja O coletor de estatísticas.
Conceito de que múltiplas operações independentes acontecem no banco de dados ao mesmo tempo. No PostgreSQL, a concorrência é controlada pelo mecanismo de controle de concorrência multiversão (MVCC).
Linha de comunicação estabelecida entre um processo do cliente e um processo servidor, geralmente através de uma rede, dando suporte a uma sessão. Esse termo às vezes é usado como sinônimo de sessão.
Para obter mais informações, veja Conexões e autenticação.
Relação
transmitida do
processo servidor
para o cliente
após a conclusão do comando SQL, geralmente um
SELECT, mas pode ser um comando
INSERT, UPDATE, ou
DELETE, se for especificada a cláusula
RETURNING
.
O fato do conjunto de resultados ser uma relação, significa que uma consulta pode ser utilizada na definição de outra consulta, tornando-se uma subconsulta.
Propriedade que os dados no banco de dados estão sempre em acordo com as restrições de integridade. As transações podem violar algumas das restrições transitoriamente antes de serem efetivadas, mas se essas violações não estiverem resolvidas no momento da efetivação, essa transação será automaticamente desfeita (rolled back). Essa é uma das propriedades ACID.
Solicitação enviada pelo cliente ao processo servidor, geralmente para retornar resultados, ou para modificar dados no banco de dados.
Capacidade de lidar com partes da execução de uma consulta, para tirar vantagem dos processos paralelos em servidores com várias CPUs.
Mecanismo projetado para permitir que várias transações estejam lendo e escrevendo as mesmas linhas, sem que um processo cause a interrupção de outros processos. No PostgreSQL, o MVCC é implementado criando cópias (versões) das tuplas enquanto elas vão sendo modificados; depois que as transações que podem ver as versões antigas terminam, essas versões antigas precisam ser removidas.
Conversão do datum de seu tipo de dados corrente para outro tipo de dados.
Para obter mais informações, veja o comando CREATE CAST.
Cópia binária de todo os arquivos do agrupamento de bancos de dados. É gerado pela ferramenta pg_basebackup. Juntamente com arquivos do WAL, pode ser usado como ponto de partida para recuperação, envio de log, ou replicação por fluxo (streaming).
Representação interna do valor de um tipo de dados SQL.
Comando SQL que remove linhas de uma tabela ou relação.
Para obter mais informações, veja o comando DELETE.
Diretório base no sistema de arquivos do
servidor,
que contém todos os arquivos de dados e subdiretórios associados ao
agrupamento de bancos de dados
(com exceção dos
espaços de tabelas
(tablespaces) e, opcionalmente, do
WAL).
A variável de ambiente PGDATA
é comumente usada
para fazer referência ao diretório de dados.
O espaço de armazenamento do agrupamento de bancos de dados engloba o diretório de dados, mais quaisquer espaços de tabelas adicionais.
Para obter mais informações, veja Organização dos arquivos de banco de dados.
Garantia de que uma vez que a transação tenha sido efetivada (committed), as alterações permanecerão mesmo após uma falha ou travamento do sistema. Essa é uma das propriedades ACID.
O ato de finalizar uma transação no banco de dados, tornando-a visível para as demais transações, e garantindo a sua durabilidade.
Para obter mais informações, veja o comando COMMIT.
Meio de representar dados que não estão contidos no banco de dados local, de tal forma que pareça como se estivesse nas tabelas locais. Com um empacotador de dados estrangeiros, é possível definir um servidor estrangeiro (foreign server), e tabelas estrangeiras (foreign tables).
Para obter mais informações, veja o comando CREATE FOREIGN DATA WRAPPER.
Ver ID de transação.
Local com nome no sistema de arquivos do servidor. Todos os
objetos SQL
que requerem armazenamento além de sua definição no
catálogo do sistema,
devem pertencer a um único espaço de tabelas.
Inicialmente, o agrupamento de bancos de dados contém um único
espaço de tabelas utilizável, usado como padrão para todos os
objetos SQL, chamado pg_default
.
Para obter mais informações, veja Espaços de tabelas.
Esquema é um espaço de nomes para objetos SQL, onde todos residem no mesmo banco de dados. Cada objeto SQL deve residir em exatamente um esquema.
Todos os objetos SQL definidos pelo sistema
residem no esquema pg_catalog
.
Mais genericamente, o termo esquema é usado significando todas as descrições de dados (definições de tabela, restrições, comentários, etc.) para um dado banco de dados, ou subconjunto do mesmo.
Para obter mais informações, veja Esquemas.
Pacote complementar de software, que pode ser instalado em uma instância para obter recursos extras.
Para obter mais informações, veja Empacotamento de objetos em uma extensão.
Cada um dos conjuntos de arquivos divididos em segmentos nos quais a relação é armazenada. O segmento principal (main fork) é onde os dados reais estão. Também existem dois segmentos (forks) secundários para metadados: o mapa de espaço livre e o mapa de visibilidade. As relações UNLOGGED também possuem um segmento inicial.
Espaço em páginas de dados que não contém versões de linha correntes, como espaço não utilizado (livre), ou versões de linha desatualizadas.
Tipo de rotina que recebe zero ou mais argumentos, retorna zero ou mais valores de saída, sendo limitada a ser executada em uma transação. As funções são chamadas como parte de uma consulta, por exemplo, através do comando SELECT. Certas funções podem retornar conjuntos; essas funções são chamadas de funções retornando conjunto.
As funções também podem ser usadas por gatilhos.
Para obter mais informações, veja o comando CREATE FUNCTION.
Função que combina (agrega) vários valores de entrada, por exemplo, contando, calculando a média ou somando, produzindo um único valor de saída.
Para obter mais informações, veja Funções de agregação.
Coleção de privilégios de acesso à instância. As próprias funções de banco de dados são um privilégio que pode ser concedido a outras funções de banco de dados. Isso é geralmente feito por conveniência, ou para garantir a integridade quando vários usuários precisam dos mesmos privilégios.
Para obter mais informações, veja o comando CREATE ROLE.
Tipo de função usada em uma consulta, que se aplica a uma partição do conjunto de resultados da consulta; o resultado da função se baseia nos valores encontrados nas linhas da mesma partição ou quadro.
Todas as funções de agregação podem ser usadas como funções de janela, mas funções de janela também podem ser usadas para, por exemplo, classificar cada uma das linhas na partição. Também são conhecidas como funções analíticas.
Para obter mais informações, veja Funções de janela.
Função que pode ser definida para ser executada sempre que uma determinada operação (INSERT, UPDATE, DELETE, TRUNCATE) é aplicada a uma relação. O gatilho executa dentro da mesma transação que a instrução que o chamou e, se a função falhar, a instrução que a chamou também falhará.
Para obter mais informações, veja o comando CREATE TRIGGER.
Comando SQL usado para permitir um usuário (user), ou uma função de banco de dados (role), acessar objetos específicos no banco de dados.
Para obter mais informações, veja o comando GRANT.
Contém os valores dos atributos da linha (ou seja, os dados) de uma relação. O heap é estruturado dentro de um ou mais segmentos de arquivo no segmento principal da relação.
Computador que se comunica com outros computadores em uma rede. Às vezes é usado como sinônimo de servidor. Também é usado para se referir a um computador onde um processo cliente executa.
Identificador numérico, único e atribuído sequencialmente, para que
cada transação receba um quando causa uma modificação no banco de dados.
Frequentemente abreviado como xid.
Quando armazenados em disco, os xids
têm apenas
32 bits de comprimento, portanto, apenas aproximadamente quatro
bilhões de identificadores de transação podem ser gerados;
para permitir que o sistema funcione por mais tempo, são usadas
épocas (epochs),
também com 32 bits de comprimento.
Quando o contador atinge o valor de xid
máximo,
ele recomeça em 3
(valores abaixo desse são
reservados), e o valor da época é incrementado em um.
Em alguns contextos, os valores de época e xid
são considerados juntos como um único valor de 64 bits.
Para obter mais informações, veja Tipos de dados de identificador de objeto.
Uma relação que contém dados derivados de uma tabela ou visão materializada. Sua estrutura interna apoia a recuperação rápida e acesso aos dados originais.
Para obter mais informações, veja o comando CREATE INDEX.
Comando SQL usado para adicionar dados a uma tabela.
Para obter mais informações, veja o comando INSERT.
Um grupo de processos servidores e auxiliares que se comunicam usando uma área de memória compartilhada comum. O processo postmaster gerencia a instância; uma instância gerencia exatamente um agrupamento de bancos de dados com todos os seus bancos de dados. Podem ser executadas várias instâncias no mesmo servidor, desde que suas portas TCP não entrem em conflito.
A instância lida com todas as principais funcionalidades de um SGBD: acesso de leitura e escrita a arquivos e memória compartilhada, garantia das propriedades ACID, conexões com os processos cliente, verificação de privilégios, recuperação de falhas, replicação, etc.
Um meio de restringir os dados em uma relação através de uma chave estrangeira, de modo que deva ter dados correspondentes em outra relação.
A propriedade de que os efeitos de uma transação não são visíveis para as transações concorrentes, antes que esta seja efetivada (commit). Essa é uma das propriedades ACID.
Para obter mais informações, veja Isolamento de transação.
Uma operação e palavra-chave do SQL usada em consultas, para combinar dados de várias relações.
Ver Tupla.
Se ativo, esse processo escreve informações sobre eventos do banco de dados no arquivo de registro (log file) corrente. Ao atingir determinados critérios dependentes de tempo ou volume, um novo arquivo de registro é criado. Também é chamado de syslogger.
Para obter mais informações, veja Relatório e registro de erros.
Estrutura de armazenamento que mantém metadados sobre cada página de dados do segmento principal (main fork) da tabela. A entrada do mapa de espaço livre para cada página armazena a quantidade de espaço livre que está disponível para tuplas futuras, sendo estruturada para ser procurada com eficiência pelo espaço disponível para uma nova tupla de um determinado tamanho.
Para obter mais informações, veja Mapa de espaço livre.
Estrutura de armazenamento que mantém metadados sobre cada página
de dados do segmento principal
(main fork) da tabela.
A entrada do mapa de visibilidade para cada página armazena dois bits:
o primeiro (all-visible
/tudo-visível), indica que
todas as tuplas na página são visíveis para todas as transações;
o segundo (all-frozen
/tudo-congelado), indica que
todas as tuplas na página estão marcadas como congeladas.
Tradução das credenciais de login no banco de dados local, em credenciais em um sistema de dados remoto definido por um empacotador de dados estrangeiros.
Para obter mais informações, veja o comando CREATE USER MAPPING.
Ver Primário (servidor).
A propriedade de que algumas informações foram pré-computadas e armazenadas para uso posterior, em vez de serem computadas novamente.
Esse termo é usado na visão materializada, significando que os dados derivados da visão da consulta estão armazenados em disco em separado das fontes desses dados.
Esse termo também é usado para se referir a algumas consultas de várias etapas, significando que os dados resultantes da execução de uma determinada etapa são armazenados na memória (com a possibilidade de serem descarregados para o disco), para poderem ser lidos várias vezes por outra etapa.
Memória RAM usada pelos processos comuns a uma instância. Espelha partes dos arquivos do banco de dados, mantendo uma área transitória para os registros do WAL, e armazenando informações comuns adicionais. Note que a memória compartilhada pertence à instância inteira, e não a um único banco de dados.
A maior parte da memória compartilhada é conhecida como buffers compartilhados, usados para espelhar parte dos arquivos de dados, organizados em páginas. Quando uma página é modificada, ela é chamada de página suja até que seja escrita de volta no sistema de arquivos.
Para obter mais informações, veja Memória.
Conceito de inexistência, que é um princípio central da teoria de banco de dados relacional. Representa a ausência de um valor definido.
Qualquer objeto que pode ser criado com um comando
CREATE
.
A maioria dos objetos são específicos de um banco de dados, sendo
comumente conhecidos como objetos locais.
A maioria dos objetos locais reside em um esquema específico em seu banco de dados contenedor, como relações (todos os tipos), rotinas (todos os tipos), tipos de dados, etc. Os nomes dos objetos de mesmo tipo no mesmo esquema são obrigatoriamente distintos.
Também existem objetos locais que não residem em esquemas; alguns exemplos são: extensões; conversões de tipo de dados; e empacotadores de dados estrangeiros. Os nomes desses objetos do mesmo tipo são obrigatoriamente distintos no banco de dados.
Outros tipos de objetos, como funções de banco de dados, espaços de tabelas, origens de replicação, subscrições para replicação lógica, e os próprios bancos de dados, não são objetos SQL locais, porque existem inteiramente fora de qualquer banco de dados específico; são chamados de objetos globais. Os nomes de tais objetos são obrigatoriamente distintos em todo o agrupamento de bancos de dados.
Para obter mais informações, veja Overview.
Série de documentos que definem a linguagem SQL.
Estrutura básica usada para armazenar os dados da relação. Todas as páginas são do mesmo tamanho. As páginas de dados são normalmente armazenadas em disco, cada uma em um arquivo específico, podendo ser lidas para a área de memória compartilhada (shared buffers) onde podem ser modificadas, tornando-se sujas. Elas se tornam limpas novamente quando são escritas no disco. As páginas novas, que inicialmente existem apenas na memória, também estão sujas até serem escritas no disco.
Um dos vários subconjuntos disjuntos (não sobrepostos) de um conjunto maior.
Em referência a tabela particionada: Uma das tabelas que contém parte dos dados da tabela particionada, que é considerada a mãe. A própria partição é uma tabela, portanto, também pode ser consultada diretamente; ao mesmo tempo, às vezes uma partição pode ser uma tabela particionada, permitindo a criação de hierarquias.
Em referência a função de janela em uma consulta, uma partição é um critério definido pelo usuário que identifica quais linhas vizinhas no conjunto de resultados da consulta devem ser consideradas pela função.
A parte do PostgreSQL que se dedica a determinar (planejar) a maneira mais eficiente de executar as consultas. Também conhecido como otimizador de consultas, otimizador, ou simplesmente planejador.
Marca especial na sequência de etapas de uma transação. As modificações feitas nos dados após este ponto podem ser desfeitas para o momento do ponto de salvamento.
Para obter mais informações, veja o comando SAVEPOINT.
O primeiro processo de uma instância, que inicia e gerencia os outros processos auxiliares, e cria os processos servidores sob demanda.
Para obter mais informações, veja Ativação do servidor de banco de dados.
Quando dois ou mais bancos de dados estão ligados por replicação, o servidor considerado fonte oficial da informação é chamado de primário, sendo também conhecido como mestre (master).
Tipo de rotina. Suas qualidades distintivas são não retornar valores, e poder fazer declarações transacionais como COMMIT e ROLLBACK. São chamados através do comando CALL.
Para obter mais informações, veja o comando CREATE PROCEDURE.
Processo que escreve no sistema de arquivos as páginas de dados modificadas na memoria compartilhada. Esse pŕocesso acorda periodicamente, funcionando apenas por um curto período, para distribuir sua custosa atividade de E/S ao longo do tempo, para evitar a geração de picos de E/S maiores que poderiam bloquear outros processos.
Para obter mais informações, veja Processo de escrita em segundo plano.
Processo de uma instância que age em nome de uma sessão cliente processando suas solicitações.
(Esse termo não deve ser confundido com os termos semelhantes processo trabalhador ou processo escritor).
Processo na instância, que executa o código fornecido pelo sistema ou pelo usuário. Serve como infraestrutura para diversos recursos do PostgreSQL, tais como replicação lógica e consultas paralelas. Além disso, as extensões podem adicionar processos trabalhadores personalizados.
Para obter mais informações, veja o Processos trabalhadores em segundo plano.
Ver Tupla.
Termo genérico para designar todos os objetos em um banco de dados possuidores de nome, e uma lista de atributos definidos em uma ordem específica. Tabelas, sequências, visões, tabelas estrangeiras, visões materializadas, tipos compostos e índices são todos relações.
Mais genericamente, uma relação é um conjunto de tuplas; por exemplo, o resultado de uma consulta também é uma relação.
No PostgreSQL, classe é um sinônimo arcaico para relação.
Ato de reproduzir dados de um servidor em outro servidor chamado de réplica. Pode tomar a forma de uma replicação física, onde todas as alterações de arquivo de um servidor são copiadas literalmente, ou uma replicação lógica, onde um subconjunto definido de alterações de dados é transmitido usando uma representação de nível mais alto.
Banco de dados emparelhado com um banco de dados primário, mantendo uma cópia de alguns ou todos os dados do banco de dados principal. As principais razões para fazer isso são permitir maior acesso a esses dados, e manter a disponibilidade dos dados no caso do servidor primário se tornar indisponível.
Restrição nos valores dos dados permitidos numa tabela, ou em atributos de um domínio.
Para obter mais informações, veja Restrições.
Tipo de restrição definida em uma relação, que restringe os valores permitidos em uma, ou em uma combinação de colunas, para que cada valor, ou combinação de valores, apareça apenas uma vez na relação — ou seja, nenhuma outra linha na relação pode conter esses valores em duplicidade.
Como os valores nulos não são considerados iguais entre si, podem existir várias linhas com valores nulos sem violar a restrição de unicidade.
Um tipo de restrição definida em uma relação que restringe os valores permitidos em um ou mais atributos. A restrição de verificação pode fazer referência a qualquer atributo da mesma linha na relação, mas não pode fazer referência a outras linhas da mesma relação, ou a outras relações.
Para obter mais informações, veja Restrições.
Comando para impedir acesso a um conjunto de objetos com nome no banco de dados, para uma lista com nome de funções de banco de dados (roles).
Para obter mais informações, veja o comando REVOKE.
Comando para desfazer todas as operações realizadas desde o início da transação.
Para obter mais informações, veja o comando ROLLBACK.
Conjunto definido de instruções armazenadas no sistema de banco de dados, que podem ser chamados para execução. As rotinas podem ser escritas em várias linguagens de programação. As rotinas podem ser funções (incluindo funções que retornam conjuntos e funções de gatilho), funções de agregação, e procedimentos.
Muitas rotinas se encontram definidas dentro do próprio PostgreSQL, e também podem ser adicionadas rotinas definidas pelo usuário.
Arquivo físico que armazena dados para uma determinada relação. Os segmentos de arquivo são limitados em tamanho por um valor de configuração (normalmente 1 gigabyte), portanto, se uma relação exceder esse tamanho, será dividida em vários segmentos.
Para obter mais informações, veja Organização dos arquivos de banco de dados.
(Esse termo não deve ser confundido com o termo semelhante segmento do WAL).
Comando SQL usado para requisitar dados do
banco de dados.
Geralmente, não se espera que os comandos SELECT
modifiquem o
banco de dados
de alguma maneira, mas é possível que as
funções chamadas
na consulta tenham efeitos colaterais que modificam os dados.
Para obter mais informações, veja o comando SELECT.
Tipo de relação usada para gerar valores. Normalmente, os valores gerados são números sequenciais não repetidos. São comumente usadas para gerar os valores da chave primária.
Computador onde as instâncias do PostgreSQL executam. O termo servidor denota um hardware real, um contenedor, ou uma máquina virtual.
Às vezes, esse termo é usado para se referir a uma instância ou a um hospedeiro.
Ver Instância.
Ver Réplica (servidor).
Uma coleção com nome de tabelas estrangeiras, onde todas usam o mesmo empacotador de dados estrangeiros, e possuem outros valores de configuração em comum.
Para obter mais informações, veja o comando CREATE SERVER.
Estado que permite que um cliente e um processo servidor interajam, comunicando-se através de uma conexão.
Coleção de tuplas tendo uma estrutura de dados comum (o mesmo número de atributos, na mesma ordem, tendo o mesmo nome e tipo de dados por posição). A tabela é a forma mais comum de relação no PostgreSQL.
Para obter mais informações, veja o comando CREATE TABLE.
Relação que parece ter linhas e colunas semelhantes a uma tabela comum, mas que encaminha as solicitações de dados por meio de seu empacotador de dados estrangeiros, que retorna conjuntos de resultado estruturados de acordo com a definição da tabela estrangeira.
Para obter mais informações, veja o comando CREATE FOREIGN TABLE.
Uma relação que é em termos semânticos o mesmo que uma tabela, mas cujo armazenamento está distribuído entre várias partições.
Tabela que existe durante o tempo de vida de uma sessão ou de uma transação, conforme especificado no momento da criação. Os dados das tabelas temporárias não são visíveis para outras sessões, e não são registrados. As tabelas temporárias são frequentemente usadas para armazenar dados intermediários para uma operação de várias etapas.
Para obter mais informações, veja o comando CREATE TABLE.
A técnica de armazenamento de atributos superdimensionados (The Oversized-Attribute Storage Technique)
Mecanismo pelo qual atributos grandes de linhas da tabela são divididos e armazenados em uma tabela secundária, chamada de tabela TOAST. Cada relação com atributos grandes tem sua própria tabela TOAST.
Para obter mais informações, veja TOAST.
Combinação de comandos que devem atuar como um único comando atômico: todos os comandos são bem sucedidos, ou todos falham, como uma única unidade, e seus efeitos não são visíveis para as outras sessões até que a transação seja concluída, e possivelmente até mais tarde, dependendo do nível de isolamento.
Para obter mais informações, veja Isolamento de transação.
Número médio de transações executadas por segundo, totalizado em todas as sessões ativas para uma execução medida. É usado como medida das características de desempenho de uma instância.
Coleção de atributos em uma ordem fixa. Essa ordem pode ser definida pela tabela (ou outra relação) onde a tupla está contida, caso em que a tupla é geralmente chamada de linha. Também pode ser definida pela estrutura de um conjunto de resultados, caso em que às vezes é chamada de registro.
Comando SQL usado para modificar linhas que já devem existir em uma determinada tabela. Não pode criar ou remover linhas.
Para obter mais informações, veja o comando UPDATE.
Processo de remoção de versões de tuplas desatualizadas, de tabelas ou visões materializadas, e outros processamentos estreitamente relacionados, exigidos pela implementação do MVCC do PostgreSQL. Pode ser iniciado através do uso do comando VACUUM, mas também pode ser tratado automaticamente através dos processos de autovacuum.
Para obter mais informações, veja Limpeza de rotina.
Relação definida por um comando SELECT, mas que não possui armazenamento próprio. Sempre que uma consulta faz referência a uma visão, a definição da visão é substituída na consulta, como se o usuário a tivesse digitado como uma subconsulta, em vez do nome da visão.
Para obter mais informações, veja o comando CREATE VIEW.
Relação
definida por uma instrução SELECT
(como uma visão),
mas que armazena os dados da mesma maneira que uma
tabela o faz.
Não pode ser modificada através das operações
INSERT, UPDATE, ou
DELETE.
Para obter mais informações, veja o comando CREATE MATERIALIZED VIEW.
WAL – Registro de transação
Processo que salva cópias dos arquivos do WAL, com a finalidade de criar cópias de segurança, ou manter as réplicas atualizadas.
Para obter mais informações, veja Arquivamento contínuo e recuperação para um ponto-no-tempo (PITR).
Também conhecido como segmento do WAL, ou arquivo de segmento do WAL. Cada um dos arquivos numerados sequencialmente que fornecem espaço de armazenamento para o WAL. Os arquivos são todos do mesmo tamanho predefinido, escritos em ordem sequencial, intercalando as alterações à medida que ocorrem em várias sessões simultâneas. Se o sistema travar, os arquivos são lidos em ordem, e cada uma das alterações é repetida para restaurar o sistema ao estado em que se encontrava antes da falha.
Cada arquivo do WAL pode ser liberado após um ponto de verificação escrever todas as alterações nele nos arquivos de dados correspondentes. A liberação do arquivo pode ser feita tanto excluindo-o, quanto alterando seu nome para poder ser utilizado futuramente, o que é chamado de reciclagem.
Para obter mais informações, veja Estrutura interna do WAL.
Processo que escreve os registros do WAL na memória compartilhada para os arquivos do WAL.
Para obter mais informações, veja Write Ahead Log (WAL).
Ponto na sequência do WAL, no qual é garantido que os arquivos de dados do heap e de índice foram atualizados com todas as informações da memória compartilhada modificada antes desse ponto de verificação; um registro de ponto de verificação é escrito e descarregado para o WAL para marcar esse ponto.
O ponto de verificação também é o ato de realizar todas as ações necessárias para chegar a um ponto de verificação conforme definido acima. Esse processo é iniciado quando condições predefinidas são atendidas, como um determinado período de tempo, ou um determinado volume de registros foi escrito; ou pode ser chamado pelo usuário com o comando CHECKPOINT.
Para obter mais informações, veja Configuração do WAL.
Ver Arquivo do WAL.
Uma tabela é considerada LOGGED se suas alterações são enviadas para o WAL. Por padrão, todas as tabelas regulares têm registro de transações. Uma tabela pode ser especificada como UNLOGGED no momento da criação, ou através do comando ALTER TABLE.
Descrição de baixo nível de uma alteração de dados individual. Contém informações suficientes para que a alteração de dados seja reproduzida (repetida), caso uma falha do sistema cause a perda da alteração. Os registros do WAL usam um formato binário não imprimível.
Para obter mais informações, veja Estrutura interna do WAL.
Ver Arquivo do WAL.
Propriedade de certas relações, nas quais as alterações ocorridas não são escritas no WAL, desativando a replicação e a recuperação de falhas para essas relações.
O uso principal das tabelas sem registro de transações é armazenar dados de trabalho transitórios, compartilhados entre processos.
As tabelas temporárias são sempre sem registro de transações (unlogged).
Registro que acompanha as mudanças no agrupamento de bancos de dados (instância), à medida que ocorrem as operações realizadas pelos usuários e pelo sistema. É composto por muitos registros do WAL individuais, escritos sequencialmente nos arquivos do WAL.