El Grupo Global de Desarrollo de PostgreSQL ha anunciado hoy el lanzamiento de PostgreSQL 14, la última versión de la base de datos de código abierto más avanzada del mundo.
PostgreSQL 14 introduce una variedad de características que ayudarán a desarrolladores y administradores a implementar sus aplicaciones para el manejo de datos. PostgreSQL sigue añadiendo innovaciones para tipos de datos complejos, que incluyen mayor facilidad de acceso a datos JSON y soporte para rangos de datos no contiguos. Esta última versión refuerza la tendencia de PostgreSQL hacia las mejoras para el alto rendimiento y las cargas de trabajo de datos distribuidos, presentando avances en la concurrencia de conexiones, cargas de trabajo con elevado nivel de escritura, paralelismo de consultas y replicación lógica.
"Esta última versión de PostgreSQL incrementa la capacidad de nuestros usuarios de administrar cargas de trabajo de datos a gran escala, mejora la observabilidad e incluye nuevas características que facilitan el trabajo de los desarrolladores de aplicaciones", dijo Magnus Hagander, miembro del Core Team de PostgreSQL. "PostgreSQL 14 constituye la prueba del compromiso de la comunidad global de PostgreSQL para analizar sugerencias y opiniones recibidas y continuar ofreciendo un software de base de datos innovador utilizado por organizaciones grandes y pequeñas."
PostgreSQL es un innovador sistema de gestión de datos conocido por su fiabilidad y solidez. Gracias a los más de 25 años de desarrollo de código abierto realizado por una comunidad mundial de desarrolladores, se ha convertido en la base de datos relacional de código abierto preferida por organizaciones de todos los tamaños.
PostgreSQL ha ofrecido soporte para la manipulación de datos JSON
desde el lanzamiento de su versión 9.2, aunque hasta ahora para obtener los valores se utilizaba una sintaxis única. Con PostgreSQL 14, en cambio, es posible acceder a datos JSON usando subíndices. Por ejemplo, ahora es posible realizar una consulta como SELECT ('{ "postgres": { "release": 14 }}'::jsonb)['postgres']['release'];
. Esto alinea a PostgreSQL con la sintaxis comúnmente reconocida para obtener información de datos JSON. El sistema de subíndices añadido a PostgreSQL 14 es generalmente extensible a otras estructuras de datos anidadas, y se aplica también al tipo de dato hstore
presente en esta versión.
Los tipos de rangos (que también fueron introducidos en PostgreSQL 9.2) ahora cuentan con el soporte para rangos no contiguos a través de la introducción del tipo de datos "multirango". Un rango múltiple consiste en una lista ordenada de rangos que no se superponen, lo cual permite a los desarrolladores escribir consultas más sencillas para manejar secuencias complejas de rangos. Los tipos de rango nativos de PostgreSQL (fechas, horas, números) soportan los rangos múltiples. Asimismo, es posible extender el soporte de rangos múltiples a otros tipos de datos.
PostgreSQL 14 ofrece un importante incremento de rendimiento en las cargas de trabajo con un alto número de conexiones. Algunas pruebas de rendimiento indican un aumento de velocidad equivalente al doble. Esta versión continúa con las recientes mejoras en la gestión de los índices B-tree, al reducir el sobredimensionamiento de los índices en aquellas tablas cuyos índices se actualizan con frecuencia.
PostgreSQL 14 introduce la posibilidad de canalizar consultas
hacia una base de datos, lo cual puede mejorar significativamente el rendimiento en las conexiones de alta latencia o para cargas de trabajo con un gran número de pequeñas operaciones de escritura (INSERT
/UPDATE
/DELETE
). Al tratarse de una característica del lado cliente, es posible utilizar el modo pipeline con cualquier base de datos PostgreSQL actual que cuente con la versión 14 del cliente o con un controlador de cliente creado con la versión 14 de libpq.
También las bases de datos PostgreSQL distribuidas se benefician de PostgreSQL 14. Al utilizar la replicación lógica, PostgreSQL puede ahora enviar las transacciones en curso a los suscriptores, con importantes ventajas de rendimiento cuando se aplican a los mismos transacciones de gran volumen. Además, PostgreSQL 14 añade otras mejoras de rendimiento al sistema de decodificación lógica, en el que se basa la replicación lógica.
Los conectores de datos externos, empleados para manejar cargas de trabajo federadas entre PostgreSQL y otras bases de datos, ahora pueden aprovechar el paralelismo de consultas que ofrece PostgreSQL 14. En esta versión se implementa dicha funcionalidad a través de postgres_fdw
,
el conector de datos externos que interactúa con otras bases de datos PostgreSQL.
Además de ofrecer soporte para el paralelismo de consultas, postgres_fdw
permite ahora la inserción masiva de datos en tablas foráneas y la importación de particiones de tablas a través de la directiva IMPORT FOREIGN SCHEMA
.
PostgreSQL 14 extiende sus incrementos de rendimiento al sistema de vacuum, incluyendo optimizaciones que reducen la sobrecarga de los B-Trees. Esta versión introduce también en vacuum una "modalidad de emergencia" diseñada para prevenir el wraparound del ID de transacción. Gracias a las mejoras de rendimiento realizadas en PostgreSQL 14, ANALYZE
(utilizado para recopilar estadísticas de la base de datos) ahora se ejecuta con mucha más rapidez.
Ahora es posible configurar
la compresión para el sistema TOAST de PostgreSQL, utilizado para almacenar datos de mayor tamaño como bloques de texto o geometrías. PostgreSQL 14 añade la compresión LZ4 para las columnas TOAST, conservando al mismo tiempo el soporte para la compresión pglz
.
PostgreSQL 14 incorpora varias características nuevas que facilitan el monitoreo y la observabilidad, incluyendo la posibilidad de dar seguimiento al progreso de los comandos COPY
,
la actividad del WAL (write-ahead-log),
y las estadísticas de los slots de replicación.
Al habilitar compute_query_id
es posible realizar el seguimiento único de una consulta a través de varias características de PostgreSQL, que incluyen
pg_stat_activity
,
EXPLAIN VERBOSE
, y más.
La planificación y ejecución de consultas se benefician de las mejoras introducidas en PostgreSQL 14. Esta versión incluye varias mejoras en el soporte al paralelismo de consultas de PostgreSQL. Entre ellas, un mejor desempeño de los escaneos secuenciales paralelos, la capacidad de
PL/pgSQL
de realizar consultas paralelas utilizando el comando RETURN QUERY
, y la posibilidad de permitirle a
REFRESH MATERIALIZED VIEW
ejecutar consultas paralelas. Adicionalmente, las consultas que usan nested loop joins pueden obtener beneficios de rendimiento a través del caché adicional que ha sido añadido en PostgreSQL 14.
Las estadísticas extendidas pueden ahora ser utilizadas en PostgreSQL 14 para las expresiones. Asimismo, las funciones de ventana deslizante pueden beneficiarse del ordenamiento incremental, característica introducida en PostgreSQL 13.
Los procedimientos almacenados,
que permiten controlar las transacciones en un bloque de código, pueden ahora devolver datos utilizando parámetros OUT
.
PostgreSQL 14 introduce la posibilidad de realizar un "bin", o alinear, los timestamps a un intervalo determinado utilizando la función date_bin
. En esta versión se añaden también las cláusulas
SEARCH
y CYCLE
(conformes al estándar SQL) que ayudan a ordenar y detectar la existencia de ciclos en las
expresiones recursivas de tablas comunes.
Gracias a los roles predefinidos pg_read_all_data
y
pg_write_all_data
, en PostgreSQL 14 es más fácil asignar a los usuarios privilegios de sólo lectura y sólo escritura para tablas, vistas y esquemas.
Además, a partir de esta versión, el sistema de gestión de contraseñas y autenticación, conforme con el estándar SCRAM-SHA-256
, será el predeterminado en todas las nuevas instancias de PostgreSQL.
PostgreSQL es la base de datos de código abierto más avanzada del mundo, que cuenta con una comunidad global de miles de usuarios, colaboradores, empresas y organizaciones. Basada en más de 30 años de ingeniería, que comenzaron en la Universidad de Berkeley en California, PostgreSQL ha continuado con un ritmo de desarrollo inigualable. El maduro conjunto de características de PostgreSQL no sólo iguala a los principales sistemas de bases de datos propietarios, sino que los supera en términos de características avanzadas, extensibilidad, seguridad y estabilidad.
PostgreSQL is the world's most advanced open source database, with a global community of thousands of users, contributors, companies and organizations. Built on over 30 years of engineering, starting at the University of California, Berkeley, PostgreSQL has continued with an unmatched pace of development. PostgreSQL's mature feature set not only matches top proprietary database systems, but exceeds them in advanced database features, extensibility, security, and stability.
Learn more about PostgreSQL and participate in our community at PostgreSQL.org.
For explanations of the above features and others, please see the following resources:
There are several ways you can download PostgreSQL 14, including:
Other tools and extensions are available on the PostgreSQL Extension Network.
PostgreSQL 14 comes with HTML documentation HTML documentation as well as man pages, and you can also browse the documentation online in both HTML and PDF formats.
PostgreSQL uses the PostgreSQL License, a BSD-like "permissive" license. This OSI-certified license is widely appreciated as flexible and business-friendly, since it does not restrict the use of PostgreSQL with commercial and proprietary applications. Together with multi-company support and public ownership of the code, our license makes PostgreSQL very popular with vendors wanting to embed a database in their own products without fear of fees, vendor lock-in, or changes in licensing terms.
Website
All logos are available for modification and redistribution under The PostgreSQL Licence. The PostgreSQL name and logo are trademarks of The PostgreSQL Community Association of Canada.
PostgreSQL enjoys the support of numerous companies, who sponsor developers, provide hosting resources, and give us financial support. See our sponsors page for some of these project supporters.
There is also a large community of companies offering PostgreSQL Support , from individual consultants to multinational companies.
If you wish to make a financial contribution to the PostgreSQL Global Development Group or one of the recognized community non-profit organizations, please visit our donations page.