En esta sección se explica cómo configurar las extensiones de base de datos que admite Database Service.
Instalar una extensión
Las extensiones solo se pueden instalar en el clúster de base de datos principal. Una vez instalada, la extensión se replica en las instancias de espera.
La mayoría de las extensiones se pueden instalar directamente conectándose al clúster de bases de datos y ejecutando el comando CREATE EXTENSION.
Sin embargo, hay algunas extensiones que requieren una configuración adicional, por lo que los usuarios deben definir la marca de la base de datos, "dbs.enable_<extension-name>": "on"
conectarse al clúster de la base de datos y ejecutar el comando CREATE EXTENSION
.
Solo los usuarios de la base de datos que sean miembros del rol cloudsqlsuperuser
o alloydbsuperuser
pueden ejecutar el comando CREATE EXTENSION
. De forma predeterminada, se incluye el usuario dbsadmin
.
Soltar una extensión
Para eliminar una extensión, el usuario de la base de datos que lo intente debe ser el propietario de la extensión. Esto implica que solo el usuario de la base de datos que creó la extensión inicialmente tiene autoridad para eliminarla. Ningún otro usuario de la base de datos tiene la capacidad de eliminar la extensión, lo que garantiza una gestión controlada de las extensiones.
Extensiones de base de datos admitidas
En la siguiente tabla se enumeran todas las extensiones admitidas.
Extensión | Incluido con PostgreSQL | Incluido en AlloyDB Omni | Descripción |
---|---|---|---|
address_standardizer | Se usa para analizar una dirección en elementos constitutivos. Se usa generalmente para admitir el paso de normalización de direcciones de geocodificación. | ||
address_standardizer_data_us | Ejemplo de conjunto de datos de Address Standardizer de EE. UU. | ||
alloydb_ai_nl | Extensión de Google para AlloyDB AI y lenguaje natural | ||
amcheck | Proporciona funciones para verificar la coherencia lógica de la estructura de las relaciones, lo que permite que la aplicación pg_amcheck compruebe si hay daños. | ||
anon | Enmascara o sustituye la información personal identificable (IPI) o los datos sensibles de una base de datos PostgreSQL. | ||
autonic | Proporciona funciones para incrementar automáticamente los campos. | ||
bloom | Proporciona un método para acceder a los índices basados en filtros Bloom. Un filtro de Bloom es una estructura de datos que ocupa poco espacio y que puedes usar para comprobar si un elemento pertenece a un conjunto. | ||
btree_gin | Proporciona clases de operadores GIN de ejemplo que implementan un comportamiento equivalente al de un árbol B. | ||
btree_gist | Proporciona clases de operadores de índice GiST que implementan un comportamiento equivalente al de un árbol B. | ||
citext | Proporciona un tipo de cadena de caracteres que no distingue entre mayúsculas y minúsculas. | ||
cubo | Implementa un cubo de tipo de datos para representar cubos multidimensionales. | ||
dblink | Proporciona funciones para conectarse a bases de datos PostgreSQL desde una sesión de base de datos. | ||
dict_int | Una plantilla de diccionario complementaria para la búsqueda de texto completo que controla la indexación de números enteros. | ||
dict_xsyn | Plantilla de diccionario de búsqueda de texto para el procesamiento de sinónimos ampliado | ||
earthdistance | Proporciona dos métodos para calcular las distancias de círculo máximo en la superficie de la Tierra. | ||
fuzzystrmatch | Proporciona varias funciones para determinar las similitudes y la distancia entre cadenas. | ||
google_columnar_engine | Proporciona la función de motor de columnas de AlloyDB, que gestiona las cargas de trabajo de HTAP (procesamiento analítico transaccional híbrido) y OLAP (procesamiento analítico online) de forma muy eficiente. | ||
google_db_advisor | Proporciona la función de asesor de indexación de AlloyDB, que recomienda índices para acelerar el procesamiento de las consultas. | ||
google_ml_integration | Proporciona funciones que se usan para acceder a los endpoints de Vertex AI y obtener predicciones en SQL. | ||
postgresql-hll | Proporciona una estructura de datos HyperLogLog (HLL) que estima la cardinalidad de un conjunto. | ||
hstore | Implementa el tipo de datos hstore para almacenar conjuntos de pares clave/valor en un solo valor de PostgreSQL. | ||
hypopg | Proporciona compatibilidad con índices hipotéticos. | ||
insert_username | Proporciona funciones para almacenar el nombre del usuario actual en un campo de texto. Puedes usar esta función para hacer un seguimiento del usuario que modificó por última vez una fila de una tabla de una base de datos. | ||
intagg | Proporciona un agregador de números enteros y un enumerador. | ||
intarray | Proporciona un conjunto de funciones y operadores para manipular matrices de números enteros sin valores nulos y realizar búsquedas indexadas en ellas. | ||
ip4r | Proporciona tipos de datos para direcciones IPv4 e IPv6, así como intervalos de direcciones y compatibilidad con índices. | ||
isn | Proporciona tipos de datos para algunos estándares internacionales de numeración de productos. | ||
lo | Admite la gestión de objetos grandes (también llamados LOs o BLOBs). | ||
ltree | Implementa un tipo de datos ltree para representar etiquetas de datos almacenados en una estructura jerárquica en forma de árbol. | ||
moddatetime | Proporciona funciones para almacenar la hora actual en un campo timestamp . Puedes usarlo para registrar la última vez que se modificó una fila de una tabla de una base de datos. |
||
orafce | Proporciona funciones y operadores que emulan un subconjunto de funciones y paquetes de una base de datos de Oracle. Usa estas funciones para portar aplicaciones de Oracle a PostgreSQL. | ||
pageinspect | Inspecciona el contenido de las páginas de la base de datos a un nivel bajo. | ||
pg_bigm | Habilita la búsqueda en todo el texto y permite un índice de dos palabras (bigrama) para que la búsqueda en todo el texto sea más rápida. | ||
pg_buffercache | Proporciona un medio para examinar lo que ocurre en la caché de búfer compartida en tiempo real. | ||
pg_cron | Proporciona un programador de tareas basado en cron. Esta extensión permite usar la sintaxis cron para programar comandos de PostgreSQL directamente desde la base de datos. | ||
pg_freespacemap | Examina el mapa de espacio libre (FSM). | ||
pg_hint_plan | Te permite mejorar los planes de ejecución de PostgreSQL mediante sugerencias, que son descripciones en comentarios de SQL. | ||
pg_partman | Permite crear y gestionar conjuntos de particiones de tablas basadas en el tiempo y en series. | ||
pg_prewarm | Proporciona una forma cómoda de cargar datos de relaciones en la caché de búfer del sistema operativo o en la caché de búfer de PostgreSQL. | ||
pg_proctab | Te permite usar pg_top y generar informes a partir de la tabla de procesos del sistema operativo. | ||
pg_repack | Permite eliminar el espacio de almacenamiento adicional de las tablas y los índices. Opcional: permite realizar un CLUSTER online (ordenar las tablas por índice de clúster). | ||
pg_similarity | Proporciona compatibilidad con consultas de similitud en PostgreSQL. | ||
pg_squeeze | Elimina el espacio no utilizado de una tabla y, opcionalmente, usa un índice para ordenar los registros o las filas (tuplas) de la tabla. | ||
pg_stat_statements | Proporciona un medio para hacer un seguimiento de las estadísticas de ejecución de todas las instrucciones SQL ejecutadas. | ||
pg_trgm | Proporciona funciones y operadores para determinar la similitud de texto alfanumérico basado en la coincidencia de trigramas, así como clases de operadores de índice que admiten la búsqueda rápida de cadenas similares. | ||
pg_visibility | Proporciona una forma de examinar el mapa de visibilidad (VM) y la información de visibilidad a nivel de página de una tabla. | ||
pg_wait_sampling | Recoge estadísticas de muestreo de eventos de espera, lo que proporciona datos de eventos de espera de los procesos de los servidores. | ||
pgaudit | Proporciona registros de auditoría detallados de sesiones y objetos mediante la función de registro estándar que ofrece PostgreSQL. | ||
pgcrypto | Proporciona funciones criptográficas para PostgreSQL. | ||
pgfincore | Conjunto de funciones para gestionar páginas en la memoria caché de disco del sistema operativo desde PostgreSQL. | ||
pglogical | Proporciona replicación lógica para PostgreSQL. | ||
pgrouting | Amplía PostGIS, lo que permite el procesamiento geoespacial mediante el análisis y el enrutamiento de redes. | ||
pgrowlocks | Proporciona información sobre el bloqueo de filas de la tabla especificada. | ||
pgstattuple | Proporciona varias funciones para obtener estadísticas a nivel de tupla. | ||
pgtap | Proporciona un framework de pruebas unitarias para PostgreSQL, escrito en PL/pgSQL y PL/SQL. | ||
pgtt | Añade compatibilidad con tablas temporales globales a tus bases de datos. | ||
plpgsql | Un lenguaje de procedimientos que se puede cargar para crear funciones, procedimientos y activadores. También puedes usar este lenguaje para ejecutar código directamente en bloques DO. | ||
plproxy | Gestor de lenguaje de procedimiento que permite llamadas a procedimientos remotos entre bases de datos PostgreSQL, con fragmentación opcional. | ||
plv8 | Proporciona un lenguaje de procedimiento para habilitar JavaScript. | ||
postgis | Tipos y funciones espaciales de geometría y geografía de PostGIS | ||
postgres_ann | Búsqueda de ANN de PostgreSQL | ||
postgis_raster | Tipos y funciones ráster de PostGIS | ||
postgis_sfcgal | Funciones SFCGAL de PostGIS | ||
postgis_tiger_geocoder | Geocodificador y geocodificador inverso de TIGER de PostGIS | ||
postgis_topology | Tipos y funciones espaciales de topología de PostGIS | ||
postgres_fdw | Permite crear envoltorios de datos externos en instancias o entre instancias. | ||
prefijo | Proporciona coincidencias de prefijo, además de compatibilidad con índices. | ||
rdkit | Proporciona funciones para comparar, manipular e identificar estructuras moleculares. | ||
refint | Incluye funciones para comprobar las restricciones de clave externa, la tabla de referencia y la tabla a la que se hace referencia. | ||
sslinfo | Proporciona información sobre el certificado SSL que ha proporcionado el cliente actual al conectarse a la instancia. | ||
tablefunc | Incluye varias funciones que devuelven tablas (varias filas). | ||
tcn | Proporciona una función de activación que notifica a los listeners los cambios en el contenido de las tablas de la base de datos. | ||
temporal_tables | Ofrece compatibilidad con tablas temporales. Una tabla temporal registra el periodo durante el cual una fila es válida desde el punto de vista de la base de datos. | ||
tsm_system_rows | Proporciona el método de muestreo de tablas SYSTEM_ROWS , que se puede usar en la cláusula TABLESAMPLE de un comando SELECT . |
||
tsm_system_time | Proporciona el método de muestreo de tablas SYSTEM_TIME , que se puede usar en la cláusula TABLESAMPLE de un comando SELECT . |
||
unaccent | Un diccionario de búsqueda de texto que elimina las tildes (signos diacríticos) de los lexemas. | ||
uuid-ossp | Proporciona funciones para generar identificadores únicos universales (UUIDs) mediante uno de los varios algoritmos estándar. | ||
pgvector | Una extensión de código abierto para almacenar y buscar embeddings de vectores en bases de datos PostgreSQL. |