Configurar extensões de banco de dados

Esta seção contém informações sobre como configurar as extensões de banco de dados compatíveis com o Database Service.

Instalar uma extensão

As extensões só podem ser instaladas no DBCluster principal. Depois de instalada, a extensão é replicada para as instâncias em espera.

A maioria das extensões pode ser instalada diretamente conectando-se ao cluster de banco de dados e executando o comando CREATE EXTENSION.

No entanto, algumas extensões exigem configuração adicional. Por isso, os usuários precisam definir a flag do banco de dados, "dbs.enable_<extension-name>": "on", conectar-se ao cluster de banco de dados e executar o comando CREATE EXTENSION.

Somente os usuários do banco de dados que são membros da função cloudsqlsuperuser ou alloydbsuperuser podem executar o comando CREATE EXTENSION. Por padrão, isso inclui o usuário dbsadmin.

Soltar uma extensão

Para excluir uma extensão, o usuário do banco de dados que está tentando fazer isso precisa ser o proprietário dela. Isso significa que apenas o usuário do banco de dados que criou a extensão inicialmente tem autoridade para descartá-la. Nenhum outro usuário do banco de dados tem a capacidade de excluir a extensão, garantindo o gerenciamento controlado delas.

Extensões de banco de dados compatíveis

A tabela a seguir lista todas as extensões compatíveis.

Extensão Incluído no PostgreSQL Incluído no AlloyDB Omni Descrição
address_standardizer Usado para analisar um endereço em elementos constituintes. Geralmente usado para oferecer suporte à etapa de normalização de endereços de geocodificação.
address_standardizer_data_us Exemplo de conjunto de dados do Address Standardizer dos EUA
alloydb_ai_nl Extensão do Google para AlloyDB AI e linguagem natural
amcheck Fornece funções para verificar a consistência lógica da estrutura das relações, permitindo que o aplicativo pg_amcheck verifique se há corrupção.
anon Mascara ou substitui informações de identificação pessoal (PII) ou dados sensíveis de um banco de dados PostgreSQL.
autonic Fornece funções para campos de incremento automático
bloom Fornece um método para acessar índices com base em filtros de Bloom. Um filtro de Bloom é uma estrutura de dados com eficiência de espaço que pode ser usada para testar se um elemento faz parte de um conjunto.
btree_gin Fornece amostras de classes de operadores GIN que implementam o comportamento equivalente de B-tree.
btree_gist Fornece classes de operadores de índice GiST que implementam o comportamento equivalente de B-tree.
citext Fornece um tipo de string de caracteres citext indiferente a maiúsculas.
cube Implementa um tipo de dados de cubo para representar cubos multidimensionais.
dblink Fornece funções para se conectar a bancos de dados PostgreSQL de dentro de uma sessão de banco de dados.
dict_int Um complemento de modelo de dicionário para pesquisa de texto completo que controla a indexação de números inteiros.
dict_xsyn Modelo de dicionário de pesquisa de texto para processamento de sinônimos estendido
earthdistance Fornece duas abordagens para calcular distâncias grandes do círculo na superfície da Terra.
fuzzystrmatch Fornece várias funções para determinar semelhanças e distância entre as strings.
google_columnar_engine Fornece o recurso de mecanismo colunar do AlloyDB, que processa cargas de trabalho HTAP (processamento analítico transacional híbrido) e OLAP (processamento analítico on-line) com muita eficiência.
google_db_advisor Fornece o recurso de consultor de índice do AlloyDB, que recomenda índices para acelerar o processamento de consultas.
google_ml_integration Fornece funções usadas para acessar endpoints da Vertex AI e receber previsões em SQL.
postgresql-hll Fornece uma estrutura de dados do HyperLogLog (hll) que estima a cardinalidade de um conjunto.
hstore Implementa o tipo de dados hstore para armazenar conjuntos de pares de chave-valor em um único valor do PostgreSQL.
hypopg Oferece suporte a índices hipotéticos.
insert_username Fornece funções para armazenar o nome do usuário atual em um campo de texto. É possível usar essa função para rastrear qual usuário modificou pela última vez uma linha em uma tabela de banco de dados.
intagg Fornece um agregador inteiro e um enumerador.
intarray Oferece um conjunto de funções e operadores para manipulação de matrizes null-free de números inteiros e busca indexada.
ip4r (em inglês) Fornece tipos de dados para endereços IPv4/v6 e intervalos de endereços, além de suporte a índice.
isn Fornece tipos de dados para alguns padrões internacionais de numeração de produtos.
lo Suporte para o gerenciamento de grandes objetos (também chamados de LOs ou BLOBs).
ltree Implementa um tipo de dados ltree para representar rótulos de dados armazenados em uma estrutura hierárquica do tipo árvore.
moddatetime Fornece funções para armazenar o horário atual em um campo timestamp. É possível usar isso para rastrear a última vez que uma linha em uma tabela de banco de dados é modificada.
orafce Fornece funções e operadores que emulam um subconjunto de funções e pacotes de um banco de dados Oracle. Use essas funções para fazer a portabilidade de aplicativos Oracle para o PostgreSQL.
pageinspect Inspeciona o conteúdo das páginas do banco de dados em um nível baixo.
pg_bigm Ativa a pesquisa de texto completo e possibilita um índice de dois gramas (bigram) para uma pesquisa de texto completo mais rápida.
pg_buffercache Fornece um meio para examinar o que está acontecendo no cache de buffer compartilhado em tempo real.
pg_cron Fornece um programador de jobs baseado em cron. Essa extensão permite que a sintaxe cron programe comandos do PostgreSQL diretamente do banco de dados.
pg_freespacemap Examine o mapa de espaço livre (FSM, na sigla em inglês).
pg_hint_plan Permite melhorar os planos de execução do PostgreSQL usando dicas, que são descrições em comentários SQL.
pg_partman Permite criar e gerenciar conjuntos de partição de tabela baseados em tempo e em série.
pg_prewarm Oferece uma maneira conveniente de carregar dados relacionais no cache de buffer do sistema operacional ou no cache de buffer do PostgreSQL.
pg_proctab Permite usar o pg_top e gerar relatórios da tabela de processos do sistema operacional.
pg_repack Permite remover o inchaço de tabelas e índices. Opcionalmente, permite executar um CLUSTER on-line (ordenar tabelas por índice de cluster).
pg_similarity Oferece suporte a consultas de similaridade no PostgreSQL.
pg_squeeze Remove o espaço não utilizado de uma tabela e, opcionalmente, usa um índice para classificar registros ou linhas (tuplas) da tabela.
pg_stat_statements Oferece um meio para rastrear as estatísticas de execução de todas as instruções SQL executadas.
pg_trgm Fornece funções e operadores para determinar a semelhança de texto alfanumérico com base na correspondência trigrama, bem como classes de operadores de índice compatíveis com a busca rápida de strings semelhantes.
pg_visibility Fornece uma maneira de examinar o mapa de visibilidade (VM, na sigla em inglês) e as informações de visibilidade no nível da página de uma tabela.
pg_wait_sampling Coleta estatísticas de amostragem de eventos de espera, fornecendo dados de eventos de espera para processos em servidores.
pgaudit Fornece registros de auditoria detalhados de sessões e objetos usando o recurso de geração de registros padrão fornecido pelo PostgreSQL.
pgcrypto Fornece funções criptográficas para o PostgreSQL.
pgfincore Um conjunto de funções para gerenciar páginas na memória do cache de disco do sistema operacional do PostgreSQL.
pglogical Fornece replicação lógica para o PostgreSQL.
pgrouting Estende o PostGIS, permitindo o processamento geoespacial por meio de roteamento e análise de rede.
pgrowlocks Fornece informações de bloqueio de linha para a tabela especificada.
pgstattuple Fornece várias funções para estatísticas de nível de tupla.
pgtap Fornece um framework de teste de unidade para PostgreSQL, escrito em PL/pgSQL e PL/SQL.
pgtt Adiciona suporte a tabelas temporárias globais aos seus bancos de dados.
plpgsql Uma linguagem processual carregável para criar funções, procedimentos e acionadores. Também é possível usar essa linguagem para execução direta de código em blocos DO.
plproxy Manipulador de linguagem processual que permite chamadas de procedimento remoto entre bancos de dados do PostgreSQL, com fragmentação opcional.
plv8 Fornece uma linguagem processual para ativar o JavaScript.
postgis Funções e tipos espaciais de geometria e geografia do PostGIS
postgres_ann Pesquisa de ANN do PostgreSQL
postgis_raster Tipos e funções raster do PostGIS
postgis_sfcgal Funções do PostGIS SFCGAL
postgis_tiger_geocoder Geocodificador e geocodificador inverso do PostGIS tiger
postgis_topology Tipos e funções espaciais de topologia do PostGIS
postgres_fdw Permite que wrappers de dados externos sejam criados em instâncias ou entre instâncias.
prefix Fornece correspondência de prefixo e suporte a índice.
rdkit Fornece funções para comparar, manipular e identificar estruturas moleculares.
refint Inclui funções para verificar restrições chave externa, a tabela de referência e a tabela referenciada.
sslinfo Fornece informações sobre o certificado SSL que o cliente atual forneceu quando se conectou à instância.
tablefunc Inclui várias funções que retornam tabelas (várias linhas).
tcn Fornece uma função de gatilho que notifica os listeners sobre alterações no conteúdo das tabelas do banco de dados.
temporal_tables Oferece suporte a tabelas temporais. Uma tabela temporal registra o período em que uma linha é válida do ponto de vista de um banco de dados.
tsm_system_rows Fornece o método de amostragem de tabela SYSTEM_ROWS, que pode ser usado na cláusula TABLESAMPLE de um comando SELECT.
tsm_system_time Fornece o método de amostragem de tabela SYSTEM_TIME, que pode ser usado na cláusula TABLESAMPLE de um comando SELECT.
unaccent Um dicionário de pesquisa de texto que exclui acentos (sinais diacríticos) de lexemas.
uuid-ossp Fornece funções para gerar identificadores universalmente únicos (UUIDs, na sigla em inglês) usando um dos algoritmos padrão.
pgvector Uma extensão de código aberto para armazenar e pesquisar embeddings de vetores em bancos de dados do PostgreSQL.