3

5 características increíbles de PostgreSQL

2059Puntos

hace 9 años

PostgreSQL se ha convertido en la mejor alternativa cuando hablamos de bases de datos relacionales de código abierto. Esto es gracias a que posee un  conjunto muy amplio de características que le otorgan gran flexibilidad y nos permiten "afinar" nuestro modelo de datos a nuestras necesidades. En este artículo detallaré algunas de las que considero más interesantes:

1 - Hot Standby

Esta característica permite que los clientes puedan conectarse al servidor y ejecutar búsquedas en la base de datos mientras éste se encuentra en modo de recuperación o stand by. También le permite pasar de este modo a modo normal sin parar el flujo de búsquedas de los usuarios y manteniendo las conexiones abiertas. Es importante mencionar que todo este proceso ocurre mientras la base de datos se encuentra en modo de solo-lectura.

2 - JSON(B)

El punto débil de las bases de datos relacionales es que no son eficientes en el manejo de objetos en formato JSON. Sin embargo, PostgreSQL posee excelentes funciones con las que puedes indexar elementos y hacer búsquedas avanzadas en este formato. Es importante señalar que no es conveniente tener toda la base de datos en JSON. Es mejor usarlo para guardar la información de un solo elemento e indexar alguna de sus propiedades.

3 - Notificaciones Real-time

PostgreSQL no está diseñada para ser una base de datos que trabaja al 100% en tiempo real. Pero nos ofrece las funciones LISTEN, UNLISTENy NOTIFYque nos facilitan el envío de notificaciones asíncronas a todos los procesos conectados a la base de datos. Esto es muy útil cuando tienes, por ejemplo, un servidor para los clientes conectados por web y otro para los clientes conectados por celular. De esta manera, sería posible enviar notificaciones cuando se hacen cambios específicos en la base de datos. Además, tendríamos la opción de incluir los detalles del cambio en forma de texto (y los clientes pueden aplicarlos a su copia local) o simplemente usarlo para informar a las aplicaciones cliente que deben volver a descargar cierto elemento de la base de datos. Gracias a estas funciones podemos crear un sistema de datos que se mantiene sincronizado en todos nuestros clientes de forma asíncrona y nos da un gran control sobre el proceso.

4 - Point In Time Recovery (PITR)

Una característica muy interesante de PostgreSQL es que registra cada transacción en el write-ahead-log(WAL). Este nos permite restaurar nuestra base de datos a cualquier punto en el tiempo replicando la lista de cambios desde el checkpoint más cercano. Esto es particularmente útil cuando estamos trabajando con bases de datos muy grandes en las que no es práctico hacer respaldos completos de forma frecuente.

5 - Streaming Replication

PostgreSQL nos ofrece varios servicios que son útiles al escalar nuestra base de datos. Por ejemplo, Streaming replicationenvía constantemente el estado del WAL a nuestros servidores de respaldo. Estos aplican los cambios para mantener actualizadas las copias que tienen almacenadas y son los encargados de la funcionalidad Hot Standby. Ahora que ya sabes todo esto, ¿qué más necesitas para usar esta base de datos en tu próximo proyecto? Si la respuesta es aprender más, no te pierdas el Curso de PostgreSQL que iniciará pronto en Platzi. Te invito a que estés pendiente de los artículos que seguiremos publicando, ya que te permitirán estar preparado para sacar el máximo provecho de las clases. Y no dudes en dejar tus preguntas, sugerencias, solicitudes y comentarios abajo.
Cesar
Cesar
reicek

2059Puntos

hace 9 años

Todas sus entradas
Escribe tu comentario
+ 2