Mareos de un geek

Mens Geek in Corpore Insano

Menú Cerrar

MySQL o PostgreSQL,.. la gran duda

La semana pasada llegué un día al trabajo y mi jefe nos comento que teniamos que migrar las bases de datos en MySQL a PostgreSQL. Le pregunte por qué y bueno, la respuesta fue,.. porque sí xDDDDDD

Así que como no me convenció me he puesto a indagar, porque es cierto que últimamente generabamos todo sobre Postgres y las aplicaciones antiguas (las primeras de la migración Microsoft a Sotware Libre) estaban aún en MySQL.

La indagación ha dado sus frutos: MySQL vs PostgreSQL es una más de esas batallas interestelares de la informática, del tipo Windows vs Linux y PC vs Mac.

MySQL junto con PHP se utiliza en millones de servidores de Internet, según se comenta en todas partes, por su velocidad respecto a Postgres. (Es otro más de esos mitos en la informática)

La versión 4 de MySQL presentaba carencias y era complicado utilizar procedimientos almacenados y triggers. Personalmente y trabajando con él encontraba algunas pegas con su sintáxis SQL.

Cuando comenzamos a migrar BBDD a Postgres escuché que lo haciamos por fiabilidad, robustez y seguridad. Además de todo eso he de admitir que la velocidad no se ha visto mermada (en tiempo de respuesta de las aplicaciones) y hemos ganado con el cliente de acceso que usabamos para gestionar las BBDD desde Windows.

Con MySQL usabamos phpMyAdmin, un front-end programado en PHP que permite gestionar BBDD MySQL. El funcionamiento es muy sencillo, pero no me gustaba la forma que tenía para probar las consultas y las pegas que suele poner con la sintaxís SQL.

Por eso cuando lo instale en casa directamente a modo consola xDDDDDDD

Con Postgres puedes acceder desde pgAdmin, un programa cliente muy sencillo. Con una interfaz muy intuitiva, (aunque aparentemente mareé tener que navegar por el árbol de opciones) la última versión ha mejorado mucho y aunque sigue dando ciertos fallos, según la consistencia de los datos, (cuando no son consistentes se cierra sólo) es mucho más fácil utilizar un programa típico de ventanas que una página web para analizar datos y ejecutar las sentencias SQL.

Por supuesto permite implementar transacciones, triggers, etc. y acceder a todas las opciones de las BBDD de una manera rápida y sencilla. Existen versiones de este software para FreeBSD, Linux, Mac OSX, Solaris y Windows. Y al ser software libre siempre puedes bajar el código fuente y compilartelo tú mismo :P

Obviando el manejo y gestión, que básicamente dependen de uno mismo, es interesante leer este artículo. Se citan los mótivos que pueden llevar a una empresa a cambiar de MySQL a Postgres. Los más destacables: el uso de recursos de almacenamiento y el tiempo de carga. (¿No era MySQL más rápido?)

Y sobretodo una crítica a la robustez y seriedad de los dos desarrollos.

Con ello queda claro que si bien MySQL es un sistema muy válido, tal vez, empresas importantes y la administración pública (como es el caso del Consorcio) que tienen grandes cantidades de datos, deben plantearse utilizar Postgres, por ser un sistema más trabajado y fiable.

Por cierto y como punto final, en el foro de javaHispano se discutió en su momento de la diferencia de licencia de uno y otro sistema. (Aparte de las diferencias técnicas)