martes, 21 de septiembre de 2010

PostgreSQL 9 lanzado

ACTUALIZACIÓN: 22 Sep 2010:  Corrección de alguno errores en la traducción.

Hace poco os dejaba un tutorial sobre la instalación de Postgres 8.4.4 en Ubuntu Server 10.04, pues bien, acaban de lanzar la versión 9 de este servidor de bases de datos libre. A continuación os dejo mi traducción de las nuevas características:

Esta nueva versión de PostgreSQL añade características que han sido demandadas durante años, como replicación sencilla, cambio de permisos de forma masiva y bloques de código anónimos.

Mientras que las anteriores versiones han sido conservadoras en cuanto al cambio de características, esta versión muestra un nuevo y fuerte deseo en proporcionar facilidades que tanto los nuevos usuarios como los usuarios existentes de PostgreSQL adoptarán. Sin embargo, esto ha provocado que hayan surgido algunas incompatibilidades.

Esta nueva versión 9 incluye:

  • Replicación basada en envío de logs. Este avance consiste en dos características: Replicación en flujo (replication streaming), que permite un archivado continuo (WAL) de ficheros en streaming a través de una conexión de red hacia servidores en estado de alerta (stand by) y Hot Standby permitiendo que los servidores en estado de alerta de archivado continuo de fichero ejecuten consultas de solo lectura. El efecto en la red es soportar un único servidor maestro y múltiples esclavos de solo lectura.
  • Gestión más sencilla de los permisos de objetos de la base de datos. GRANT/REVOKE IN SCHEMA soporta cambios masivos de permisos en los objetos existentes, mientra que ALTER DEFAULT PRIVILEGES permite el control de privilegios para objetos que se crearán en un futuro. Los objetos grandes como BLOBs, también soportan ahora la gestión de permisos.
  • En términos generales, soporte mejorado de procedimientos almacenados. La sentencia DO soporta los bloques de código "anonimo" o "ad-hoc". Ahora, las funciones pueden ser llamadas usando parámetros nombrados (identificados) PL/pgSQL ahora se instala por defecto y PL/Perl y PL/Python han sido mejorados de muchas maneras, incluyendo soporte para Python 3.
  • Soporte completo para Ms Windows de 64 bits.
  • Consultas de informes más avanzadas, incluyendo opciones adicionales de "windowing" (PRECEDING y FOLLOWING) y la capacidad de controlar el orden en el que los valores son introducidos en funciones (aggregate functions)
  • Nuevas características de disparadores (trigger) incluyendo disparadores por columna SQL-standard-compliant y ejecución de triggers condicional.
  • Restricciones (constraints) únicas diferibles. Ahora son posibles las actualizaciones masivas de claves únicas sin realizar trucos o artimañas.
  • Restricciones de Exclusión. Esto provee una versión generalizada de restricciones únicas, permitiendo el cumplimiento de condiciones complejas.
  • Características nuevas y mejoradas de seguridad, incluyendo autenticación mediante RADIUS, mejoras en la autenticación LDAP y un nuevo módulo "contrib", passwordcheck, para testeo de fortaleza de las contraseñas.
  • Una nueva implementación de alto rendimiento de la LISTEN/NOTIFY. Ahora, los eventos pendientes se almacenan en colas basadas en memoria en vez de en una tabla. Además, una cadena de "payload" puede ser enviada con cada evento en vez de transmitir solo un nombre de evento como antes.
  • Nueva implementación de VACUUM FULL. Ahora, este comando reescribe la tabla completa y los índices, en vez de mover filas individuales a un espacio compacto. Es sustancialmente más rápido en la mayoría de casos, y no más resultados más grandes de lo necesario en índices hinchados.
  • Nuevo módulo "contrib" pg_upgrade para soportar actualizaciones  "in-place" desde las versiones 8.3 o 8.4 a la versión 9.0
  • Mejoras múltiples del rendimiento para tipos específicos de consultas, incluyendo la eliminación de "joins" innecesarios. Esto ayuda a optimizar algunas consultas autogeneradas, como las que se producen por ORMs (object-relational mappers)
  • Mejoras en EXPLAIN. La salida está ahora disponible en formato JSON, XML o YAML e incluye la utilización de buffer y otros datos que no estaban disponibles previamente.
  • Mejoras en hstore, incluyendo nuevas funciones y mayor capacidad de datos.
Podemos ver una explicación (en inglés) más detallada en el siguiente enlace.
http://www.postgresql.org/docs/9.0/static/release-9-0.html

NOTA: También se ha lanzado la versión 1.12.0 de pgAdmin que soporta la versión 9 de PostgreSQL.
Related Posts with Thumbnails