Configurare le estensioni del database

Questa sezione contiene informazioni sulla configurazione delle estensioni del database supportate da Database Service.

Installare un'estensione

Le estensioni possono essere installate solo sul DBCluster principale. Una volta installata, l'estensione viene replicata nelle istanze di standby.

La maggior parte delle estensioni può essere installata direttamente connettendosi al cluster di database ed eseguendo il comando CREATE EXTENSION.

Tuttavia, alcune estensioni richiedono una configurazione aggiuntiva, pertanto gli utenti devono impostare il flag del database, "dbs.enable_<extension-name>": "on" quindi connettersi al cluster di database ed eseguire il comando CREATE EXTENSION.

Solo gli utenti del database che sono membri del ruolo cloudsqlsuperuser o alloydbsuperuser possono eseguire il comando CREATE EXTENSION. Per impostazione predefinita, è incluso l'utente dbsadmin.

Rilasciare un'estensione

Per eliminare un'estensione, l'utente del database che tenta di farlo deve essere il proprietario dell'estensione. Ciò implica che solo l'utente del database che ha creato inizialmente l'estensione ha l'autorità per eliminarla. Nessun altro utente del database ha la possibilità di eliminare l'estensione, garantendo una gestione controllata delle estensioni.

Estensioni del database supportate

La tabella seguente elenca tutte le estensioni supportate.

Estensione Incluso in PostgreSQL Incluso in AlloyDB Omni Descrizione
address_standardizer Utilizzato per analizzare un indirizzo in elementi costitutivi. Generalmente utilizzato per supportare il passaggio di normalizzazione dell'indirizzo di geocodifica.
address_standardizer_data_us Esempio di set di dati di normalizzazione degli indirizzi per gli Stati Uniti
alloydb_ai_nl Estensione Google per AlloyDB AI e linguaggio naturale
amcheck Fornisce funzioni per verificare la coerenza logica della struttura delle relazioni, consentendo all'applicazione pg_amcheck di verificare la presenza di danneggiamenti.
anon Maschera o sostituisce le informazioni che consentono l'identificazione personale (PII) o i dati sensibili di un database PostgreSQL.
autonic Fornisce funzioni per i campi di incremento automatico
bloom Fornisce un metodo per accedere agli indici in base ai filtri Bloom. Un filtro Bloom è una struttura di dati efficiente in termini di spazio che puoi utilizzare per verificare se un elemento fa parte di un insieme.
btree_gin Fornisce classi di operatori GIN di esempio che implementano un comportamento equivalente all'albero B.
btree_gist Fornisce classi di operatori di indice GiST che implementano un comportamento equivalente all'albero B.
citext Fornisce un tipo di stringa di caratteri senza distinzione tra maiuscole e minuscole citext.
cubo Implementa un cubo di tipi di dati per rappresentare i cubi multidimensionali.
dblink Fornisce funzioni per connettersi ai database PostgreSQL dall'interno di una sessione di database
dict_int Un modello di dizionario aggiuntivo per la ricerca a testo intero che controlla l'indicizzazione dei numeri interi.
dict_xsyn Modello di dizionario per la ricerca di testo per l'elaborazione estesa dei sinonimi
earthdistance Fornisce due approcci per calcolare le distanze ortodromiche sulla superficie della Terra.
fuzzystrmatch Fornisce diverse funzioni per determinare le somiglianze e la distanza tra le stringhe.
google_columnar_engine Fornisce la funzionalità del motore colonnare di AlloyDB, che gestisce in modo molto efficiente i carichi di lavoro HTAP (elaborazione transazionale ibrida e analitica) e OLAP (elaborazione analitica online).
google_db_advisor Fornisce la funzionalità di suggerimenti sull'indicizzazione di AlloyDB, che consiglia gli indici per accelerare l'elaborazione delle query.
google_ml_integration Fornisce le funzioni che utilizzi per accedere agli endpoint Vertex AI per ottenere previsioni in SQL.
postgresql-hll Fornisce una struttura di dati HyperLogLog (hll) che stima la cardinalità di un insieme.
hstore Implementa il tipo di dati hstore per archiviare insiemi di coppie chiave/valore all'interno di un singolo valore PostgreSQL.
hypopg Fornisce il supporto per gli indici ipotetici.
insert_username Fornisce funzioni per memorizzare il nome dell'utente corrente in un campo di testo. Puoi utilizzare questa funzione per monitorare l'ultimo utente che ha modificato una riga in una tabella del database.
intagg Fornisce un aggregatore di numeri interi e un enumeratore.
intarray Fornisce un insieme di funzioni e operatori per manipolare array di numeri interi senza valori null e per eseguire ricerche indicizzate.
ip4r Fornisce tipi di dati per indirizzi IPv4/v6 e intervalli di indirizzi, oltre al supporto dell'indice.
isn Fornisce tipi di dati per alcuni standard internazionali di numerazione dei prodotti.
lo Supporto per la gestione di oggetti di grandi dimensioni (chiamati anche LO o BLOB).
ltree Implementa un tipo di dati ltree per rappresentare le etichette dei dati archiviati in una struttura gerarchica ad albero.
moddatetime Fornisce funzioni per memorizzare l'ora corrente in un campo timestamp. Puoi utilizzarlo per monitorare l'ultima modifica di una riga in una tabella di database.
orafce Fornisce funzioni e operatori che emulano un sottoinsieme di funzioni e pacchetti di un database Oracle. Utilizza queste funzioni per trasferire le applicazioni Oracle a PostgreSQL.
pageinspect Ispeziona i contenuti delle pagine del database a un livello basso.
pg_bigm Abilita la ricerca a testo intero e consente un indice di due grammi (bigramma) per una ricerca a testo intero più rapida.
pg_buffercache Fornisce un mezzo per esaminare in tempo reale ciò che accade nella cache del buffer condivisa.
pg_cron Fornisce uno scheduler di job basato su cron. Questa estensione consente di utilizzare la sintassi cron per pianificare i comandi PostgreSQL direttamente dal database.
pg_freespacemap Esamina la mappa dello spazio libero (FSM).
pg_hint_plan Consente di migliorare i piani di esecuzione di PostgreSQL utilizzando gli hint, ovvero descrizioni nei commenti SQL.
pg_partman Consente di creare e gestire set di partizioni di tabelle basati su tempo e numeri di serie.
pg_prewarm Fornisce un modo conveniente per caricare i dati delle relazioni nella cache del buffer del sistema operativo o nella cache del buffer PostgreSQL.
pg_proctab Consente di utilizzare pg_top e generare report dalla tabella dei processi del sistema operativo.
pg_repack Consente di rimuovere il bloat da tabelle e indici. Facoltativamente, consente di eseguire un CLUSTER online (ordina le tabelle in base all'indice del cluster).
pg_similarity Fornisce il supporto per le query di similarità su PostgreSQL.
pg_squeeze Rimuove lo spazio inutilizzato da una tabella e, facoltativamente, utilizza un indice per ordinare i record o le righe (tuple) della tabella.
pg_stat_statements Fornisce un mezzo per monitorare le statistiche di esecuzione di tutte le istruzioni SQL eseguite.
pg_trgm Fornisce funzioni e operatori per determinare la somiglianza del testo alfanumerico in base alla corrispondenza dei trigrammi, nonché classi di operatori di indice che supportano la ricerca rapida di stringhe simili.
pg_visibility Fornisce un modo per esaminare la mappa della visibilità (VM) e le informazioni sulla visibilità a livello di pagina di una tabella.
pg_wait_sampling Raccoglie statistiche di campionamento degli eventi di attesa, fornendo dati sugli eventi di attesa per i processi sui server.
pgaudit Fornisce la registrazione dettagliata del controllo di sessioni e oggetti utilizzando la funzionalità di logging standard fornita da PostgreSQL.
pgcrypto Fornisce funzioni crittografiche per PostgreSQL.
pgfincore Un insieme di funzioni per gestire le pagine nella memoria della cache del disco del sistema operativo da PostgreSQL.
pglogical Fornisce la replica logica per PostgreSQL.
pgrouting Estende PostGIS, consentendo l'elaborazione geospaziale tramite il routing e l'analisi di rete.
pgrowlocks Fornisce informazioni sul blocco delle righe per la tabella specificata.
pgstattuple Fornisce varie funzioni per ottenere statistiche a livello di tupla.
pgtap Fornisce un framework di unit test per PostgreSQL, scritto in PL/pgSQL e PL/SQL.
pgtt Aggiunge il supporto per le tabelle temporanee globali ai tuoi database.
plpgsql Un linguaggio procedurale caricabile per creare funzioni, procedure e trigger. Puoi anche utilizzare questo linguaggio per l'esecuzione diretta del codice nei blocchi DO.
plproxy Gestore di linguaggi procedurali che consente chiamate di procedure remote tra database PostgreSQL, con sharding facoltativo.
plv8 Fornisce un linguaggio procedurale per l'attivazione di JavaScript.
postgis Tipi e funzioni spaziali di geometria e geografia PostGIS
postgres_ann Ricerca ANN PostgreSQL
postgis_raster Tipi e funzioni raster PostGIS
postgis_sfcgal Funzioni SFCGAL di PostGIS
postgis_tiger_geocoder Geocodificatore e geocodificatore inverso PostGIS tiger
postgis_topology Tipi e funzioni spaziali della topologia PostGIS
postgres_fdw Consente di creare wrapper di dati esterni all'interno delle istanze o tra le istanze.
prefix Fornisce la corrispondenza dei prefissi, oltre al supporto dell'indice.
rdkit Fornisce funzioni per confrontare, manipolare e identificare le strutture molecolari.
refint Include funzioni per controllare i vincoli di chiave esterna, la tabella di riferimento e la tabella a cui viene fatto riferimento.
sslinfo Fornisce informazioni sul certificato SSL fornito dal client corrente quando si è connesso all'istanza.
tablefunc Include varie funzioni che restituiscono tabelle (più righe).
tcn Fornisce una funzione di trigger che notifica agli ascoltatori le modifiche ai contenuti delle tabelle del database.
temporal_tables Fornisce supporto per le tabelle temporali. Una tabella temporale registra il periodo di tempo in cui una riga è valida dal punto di vista del database.
tsm_system_rows Fornisce il metodo di campionamento della tabella SYSTEM_ROWS, che può essere utilizzato nella clausola TABLESAMPLE di un comando SELECT.
tsm_system_time Fornisce il metodo di campionamento della tabella SYSTEM_TIME, che può essere utilizzato nella clausola TABLESAMPLE di un comando SELECT.
unaccent Un dizionario di ricerca di testo che rimuove gli accenti (segni diacritici) dai lessemi.
uuid-ossp Fornisce funzioni per generare identificatori univoci universali (UUID) utilizzando uno dei diversi algoritmi standard.
pgvector Un'estensione open source per archiviare e cercare vector embedding nei database PostgreSQL.