Configurar extensiones de bases de datos

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.