RDBMS o no? [Was: Re: MTA migration]

Horst von Brand vonbrand en inf.utfsm.cl
Lun Mar 14 17:22:11 CLT 2005


"Luis Sandoval" <zerox en systat.cl> dijo:
> "Horst von Brand" <vonbrand en inf.utfsm.cl> dijo:
> > "Rodrigo Cuevas A." <rcuevas en netbsd.cl> dijo:
> >> Horst von Brand writes:
> >> > "Victor H. Pasten V." <vpasten en bsdmail.org> dijo:
> >> >> te recomiendo toaster igual es un poco largo el proceso de instalación
> >> >> pero de una tendras un buen mta (qmail)+antivirus+antispam, webmail,
> >> >> auth. con mysql, etc.

> >> > qmail es la /peor/ opcion posible de MTA (revisa la licencia!). MySQL 
> >> > es un engendro que se hace pasar por RDBMS, curiosamente con exito
> >> > a pesar de lo muchisimo que le falta para siquiera acercarse.

> >> [sniped]

> >> De acuerdo con que Mysql no sea un RDBMS, pero el punto es si para
> >> todas las aplicaciones o necesidades, es necesario un RDBMS, a mi
> >> juicio no.

> > La experiencia que he recogido de varias fuentes es que /hoy/ te basta
> > MySQL y sus limitaciones no te molestan, /man~ana/ resultan fatales y 
> > tienes montones de cosas amarradas, con lo que la migracion se hace cara.
> > Ademas, el "mayor rendimiento" de MySQL lo pagas en mucho mayor
> > complejidad (y menor rendimiento) del resto de la aplicacion, con lo
> > que generalmente en resumen pierdes rendimiento (y siempre pierdes en
> > complejidad).

> Sera relativo al tipo de Aplicacion

No. Salvo que sea una cosa extremadamente trivial.

> Ud. mismo ha reconocido que MySQL es mucho mas rapida en ciertos casos. 

Para consultas _muy simples_ MySQL es mas rapido. Son contadisimas las
aplicaciones que (solo) hacen ese tipo de consultas (consultas sencillas,
sobre tablas que no cambian). Para cualquier otra cosa, andan cerca en
rendimiento, o simplemente /no se pueden hacer/ en MySQL. El "no se pueden
hacer" no es en el sentido de "hay que programarlo fuera", es que ni
siquiera programando fuera puedes lograrlo (de forma que sea correcta en
todos los casos, hay problemas de concurrencia aca).

> Entonces si lo que se quiere es usar MySQL para tener los password  y 
> usuarios de un MTA que Postfix creo que  MySQL es una buena alternativa si 
> lo que se quiere es rapidez, ya que no hablamos de una aplicacion muy 
> compleja. Y si la aplicacion  fuera mas compleja  es logico que se buscaria 
> una solucion que no sera MySQL.

El problema es que en cuanto existe la posibilidad de actualizaciones de la
base de datos, MySQL puede retornar resultados errados (o dan~arla).
Exactamente aplicaciones como password y afines no la usaria nunca, salvo
que las actualizaciones sean estrictamente off-line.

> >>                                                                    Podría
> >> acaso, la carencia de características, generar problemas desde el punto 
> >> de vista de la seguridad/integridad de los datos?

> > Las caracteristicas de RDBMS que le faltan a MySQL son precisamente las 
> > que tienen que ver con seguridad e integridad de los datos,
> > particularmente frente a operaciones un poquitin mas complejas (p.ej.
> > consultar y modificar 2 o mas tablas).

> que caracteristicas?
> Ud. hablo de  el ACID  al vez anterior

Exactamente eso. Si miras lo que significa, te daras cuenta que sin esas
garantias te da julepe tocar los datos... y MySQL /no/ las da.

>                                        y el ACID  se puede usar en MySQL
> 4.x

Mentira. O sea, si se puede, con tablas especiales (suerte si alguna de las
tablas en la consulta no es del tipo adecuado). Y la ventaja en rendimiento
se tranforma en fuerte desventaja (al menos eso indican datos anecdoticos).
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                     Fono: +56 32 654431
Universidad Tecnica Federico Santa Maria              +56 32 654239
Casilla 110-V, Valparaiso, Chile                Fax:  +56 32 797513


Más información sobre la lista de distribución BSD