Extensiones de PostgreSQL en Azure Cosmos DB for PostgreSQL
SE APLICA A: Azure Cosmos DB for PostgreSQL (con tecnología de la extensión de base de datos de Citus en PostgreSQL)
PostgreSQL amplía la funcionalidad de la base de datos mediante extensiones. Las extensiones permiten agrupar varios objetos SQL relacionados en un solo paquete que se puede cargar o quitar de la base de datos con un solo comando. Después de cargarse en la base de datos, las extensiones pueden funcionar como características integradas. Para más información sobre las extensiones de PostgreSQL, consulte Empaquetado de objetos relacionados en una extensión.
Uso de extensiones de PostgreSQL
Para poder usar las extensiones de PostgreSQL, es preciso que estén instaladas en su base de datos. Para instalar una extensión determinada, ejecute el comando CREATE EXTENSION desde la herramienta psql para cargar los objetos empaquetados en la base de datos.
Nota
Si se produce un error en CREATE EXTENSION
con un error de permiso denegado, pruebe la función create_extension()
en su lugar. Por ejemplo:
SELECT create_extension('postgis');
Para quitar una extensión instalada de esta manera, use drop_extension()
.
Azure Cosmos DB for PostgreSQL actualmente admite un subconjunto de extensiones de claves, como se enumeran aquí. No se admiten extensiones distintas de las que se incluyen. No puede crear su propia extensión con Azure Cosmos DB for PostgreSQL.
Extensiones admitidas por Azure Cosmos DB for PostgreSQL
En las siguientes tablas se enumeran las extensiones estándar de PostgreSQL que Azure Cosmos DB for PostgreSQL admite. Esta información también está disponible al ejecutar SELECT * FROM pg_available_extensions;
.
Las versiones de cada extensión instaladas en un clúster a veces difieren en función de la versión de PostgreSQL (11, 12, 13, 14, 15 o 16). En las tablas se muestran las versiones de extensión por versión de base de datos.
Extensión de Citus
Extensión | Descripción | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
citus | Base de datos distribuida de Citus. | 9.5 | 10.2 | 11.3 | 12.1 | 12.1 | 12.1 |
Extensiones de tipos de datos
Extensión | Descripción | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
citext | Proporciona un tipo de cadena de caracteres que no distingue entre mayúsculas y minúsculas. | 1.5 | 1.6 | 1.6 | 1.6 | 1.6 | 1.6 |
cube | Proporciona un tipo de datos para los cubos multidimensionales. | 1.4 | 1.4 | 1.4 | 1.5 | 1.5 | 1.5 |
hll | Proporciona una estructura de datos HyperLogLog. | 2,18 | 2,18 | 2,18 | 2,18 | 2,18 | 2,18 |
hstore | Proporciona un tipo de datos para almacenar conjuntos de pares clave-valor. | 1.5 | 1.6 | 1.7 | 1.8 | 1.8 | 1.8 |
isn | Proporciona tipos de datos para los estándares internacionales de numeración de productos. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
lo | Mantenimiento de objetos grandes. | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
ltree | Proporciona un tipo de datos para las estructuras de árbol jerárquicas. | 1.1 | 1.1 | 1,2 | 1.2 | 1.2 | 1.2 |
seg | Tipo de datos para representar los segmentos de línea o intervalos de punto flotante. | 1.3 | 1.3 | 1.3 | 1.4 | 1.4 | 1.4 |
tdigest | Tipo de datos para la acumulación en línea de estadísticas basadas en rangos, como cuantiles y medias truncadas | 1.4.1 | 1.4.1 | 1.4.1 | 1.4.1 | 1.4.1 | 1.4.1 |
topn | Tipo para JSONB de n principales. | 2.6.0 | 2.6.0 | 2.6.0 | 2.6.0 | 2.6.0 | 2.6.0 |
Extensiones de búsqueda de texto completo
Extensión | Descripción | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
dict_int | Proporciona una plantilla de diccionario de búsqueda de texto para números enteros. | 1.0 | 1,0 | 1,0 | 1,0 | 1,0 | 1.0 |
dict_xsyn | Plantilla de diccionario de búsqueda de texto para el procesamiento de sinónimos extendido. | 1.0 | 1,0 | 1,0 | 1,0 | 1,0 | 1.0 |
unaccent | Un diccionario de búsqueda de texto que quita los acentos (signos diacríticos) de lexemas. | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
Extensiones de funciones
Extensión | Descripción | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 15 |
---|---|---|---|---|---|---|---|
autoinc | Funciones para campos de incremento automático. | 1.0 | 1,0 | 1,0 | 1,0 | 1,0 | 1.0 |
earthdistance | Proporciona un medio para calcular distancias de círculo máximo en la superficie de la Tierra. | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
fuzzystrmatch | Proporciona varias funciones para determinar las similitudes y la distancia entre las cadenas. | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1,2 |
insert_username | Funciones para el seguimiento de quién cambió una tabla. | 1.0 | 1,0 | 1,0 | 1,0 | 1,0 | 1.0 |
intagg | El agregador y enumerador de enteros (obsoleto). | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
intarray | Proporciona funciones y operadores para manipular matrices de enteros sin valores nulos. | 1.2 | 1.2 | 1.3 | 1.5 | 1.5 | 1.5 |
moddatetime | Funciones para el seguimiento de la hora de última modificación. | 1.0 | 1,0 | 1,0 | 1,0 | 1,0 | 1,0 |
orafce | Funciones y operadores que emulan un subconjunto de funciones y paquetes desde Oracle RDBMS. | 4,9 | 4,9 | 4,9 | |||
pg_partman | Administra las tablas con particiones por hora o identificador. | 4.7.4 | 4.7.4 | 4.7.4 | 5.1.0 | 5.1.0 | 5.1.0 |
pg_surgery | Funciones para realizar una cirugía en una relación dañada. | 1.0 | 1,0 | 1.0 | |||
pg_trgm | Proporciona funciones y operadores para determinar la similitud del texto alfanumérico basado en la coincidencia de trigrama. | 1.4 | 1.4 | 1.5 | 1.6 | 1.6 | 1.6 |
pgcrypto | Proporciona funciones de cifrado. | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 |
refint | Funciones para implementar la integridad referencial (obsoleto). | 1.0 | 1,0 | 1,0 | 1,0 | 1,0 | 1.0 |
tablefunc | Proporciona funciones que manipulan la totalidad del contenido de las tablas, incluidas tablas de referencias cruzadas. | 1.0 | 1,0 | 1,0 | 1,0 | 1,0 | 1.0 |
tcn | Desencadenó notificaciones de cambio. | 1.0 | 1,0 | 1,0 | 1,0 | 1,0 | 1.0 |
timetravel | Funciones para implementar el viaje en el tiempo. | 1,0 | |||||
uuid-ossp | Genera identificadores únicos universales (UUID). | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
Extensiones de tipos de índices
Extensión | Descripción | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
bloom | Método de acceso de bloom: índice basado en archivos de firma. | 1.0 | 1,0 | 1,0 | 1,0 | 1,0 | 1.0 |
btree_gin | Proporciona clases de operador GIN de ejemplo que implementan el comportamiento similar al del árbol B para determinados tipos de datos. | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 |
btree_gist | Proporciona clases de operador de índice de GiST que implementan el árbol B. | 1.5 | 1.5 | 1.5 | 1.6 | 1.7 | 1.7 |
Extensiones de lenguaje
Extensión | Descripción | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
plpgsql | Lenguaje de procedimientos que puede cargar PL/pgSQL. | 1.0 | 1,0 | 1,0 | 1,0 | 1,0 | 1.0 |
Extensiones variadas
Extensión | Descripción | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
amcheck | Funciones de comprobación de la integridad de la relación. | 1,1 | 1,2 | 1.2 | 1.3 | 1.3 | 1.3 |
dblink | Módulo que admite conexiones a otras bases de datos de PostgreSQL desde una sesión de base de datos. Consulte la sección "dblink y postgres_fdw" para información sobre esta extensión. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
old_snapshot | Permite la inspección del estado del servidor que se usa para implementar old_snapshot_threshold. | 1.0 | 1,0 | 1.0 | |||
pageinspect | Inspeccione el contenido de páginas de bases de datos a un nivel bajo. | 1.7 | 1.7 | 1.8 | 1,9 | 1.11 | 1.12 |
pg_azure_storage | Integración de Azure para PostgreSQL. | 1.3 | 1.3 | 1.3 | 1.3 | ||
pg_buffercache | Proporciona un medio para examinar lo que sucede en la caché del búfer compartido en tiempo real. | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 | 1.4 |
pg_cron | Programador de trabajos para PostgreSQL. | 1.5 | 1.6 | 1.6 | 1.6 | 1.6 | 1.6 |
pg_freespacemap | Examine la asignación de espacio libre (FSM). | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
pg_prewarm | Proporciona una manera de cargar datos de relación en la caché del búfer. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
pg_stat_statements | Proporciona un medio para realizar el seguimiento de las estadísticas de ejecución de todas las instrucciones SQL ejecutadas por un servidor. Consulte la sección "pg_stat_statements" para información sobre esta extensión. | 1.6 | 1.7 | 1.8 | 1,9 | 1.10 | 1.10 |
pg_visibility | Permite examinar el mapa de visibilidad y la información de visibilidad de nivel de página. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
pgrowlocks | Proporciona un medio para mostrar información de bloqueo a nivel de fila. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
pgstattuple | Proporciona un medio para mostrar estadísticas de nivel de tupla. | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 |
postgres_fdw | Se trata de un contenedor de datos externo utilizado para tener acceso a los datos almacenados en los servidores externos de PostgreSQL. Consulte la sección "dblink y postgres_fdw" para información sobre esta extensión. | 1.0 | 1,0 | 1.0 | 1.1 | 1.1 | 1.1 |
sslinfo | Información sobre los certificados TLS/SSL. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
tsm_system_rows | Método TABLESAMPLE que acepta el número de filas como un límite. | 1.0 | 1,0 | 1,0 | 1,0 | 1,0 | 1.0 |
tsm_system_time | Método TABLESAMPLE que acepta el tiempo en milisegundos como un límite. | 1.0 | 1,0 | 1,0 | 1,0 | 1,0 | 1.0 |
xml2 | Consulta de XPath y XSLT. | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
Extensión pgvector
Extensión | Descripción | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
pgvector | Búsqueda de similitud de vectores de código abierto para Postgres | 0.5.1 | 0.7.0 | 0.7.0 | 0.7.0 | 0.7.0 | 0.7.0 |
Extensiones de PostGIS
Extensión | Descripción | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
---|---|---|---|---|---|---|---|
PostGIS | Objetos espaciales y geográficos para PostgreSQL. | 3.3.4 | 3.4.1 | 3.4.1 | 3.4.1 | 3.4.1 | 3.4.1 |
address_standardizer | Se utilizan para analizar una dirección en los elementos que la componen. Se utilizan para admitir el paso de normalización de la dirección de geocodificación. | 3.3.4 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 |
postgis_sfcgal | Funciones de PostGIS SFCGAL. | 3.3.4 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 |
postgis_topology | Funciones y tipos espaciales de topología PostGIS. | 3.3.4 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 |
pg_stat_statements
La extensión pg_stat_statements está cargada previamente en cada servidor de Azure Cosmos DB for PostgreSQL para proporcionarle un medio de seguimiento de las estadísticas de ejecución de las instrucciones SQL.
El valor pg_stat_statements.track
controla qué instrucciones cuenta la extensión. El valor predeterminado es top
, lo que significa que se realiza el seguimiento de todas las instrucciones emitidas directamente por los clientes. Los otros dos niveles de seguimiento son none
y all
.
Hay un equilibrio entre la información de ejecución de consulta que proporciona pg_stat_statements y el efecto en el rendimiento del servidor al registrar cada instrucción SQL. Si no está usando activamente la extensión pg_stat_statements, le recomendamos que establezca pg_stat_statements.track
en none
. Tenga en cuenta que algunos servicios de supervisión de terceros pueden basarse en pg_stat_statements para entregar información de rendimiento de consultas, por lo que debe confirmar si es su caso o no.
dblink y postgres_fdw
Puede usar dblink y postgres_fdw para conectarse desde un servidor PostgreSQL a otro, o a otra base de datos en el mismo servidor. El servidor de recepción debe permitir conexiones del servidor de envío a través de su firewall. Para utilizar estas extensiones para conectarse entre clústeres de Azure Cosmos DB for PostgreSQL con acceso público, active la opción Permitir que los servicios y recursos de Azure accedan a este clúster (o servidor). También debe activar este valor si desea usar las extensiones para volver en bucle al mismo servidor. La opción Permitir que los servicios y recursos de Azure accedan a este clúster se encuentra en la página Azure Portal del clúster en Redes. Actualmente, no se admiten conexiones salientes desde Azure Cosmos DB for PostgreSQL.
extensión orafce
Las funciones utl_file están deshabilitadas en la extensión orafce.
Pasos siguientes
- Conozca las versiones de PostgreSQL admitidas.