Algo de bases de datos en Linux...
Aldrin Gonzalo Martoq Ahumada
amartoq en dcc.uchile.cl
Mie Ago 1 14:36:52 CLT 2007
On 7/31/07, Alvaro Herrera <alvherre en alvh.no-ip.org> wrote:
> Aldrin Gonzalo Martoq Ahumada escribió:
> > Interesante, yo tambien tengo la sensacion que los RDBM's debieran ser
> > reemplazados por otra cosa.
> > Por ejemplo, los filesystem actuales estan integrando tecnologia de
> > base de datos (journaling)... Creo que el tipo de reiserfs decia "el
> > filesystem ES la base de datos". el SCM git fue creado por Torvalds
> > porque conocia muy bien como funciona ext2/3, asi que el repositorio
> > es nuevamente el filesystem.
> Yo creo que es mala idea. Cuando se trata de almacenar llave/valor
> puede tener sentido, pero la gracia de un RDBMS es que te permite
> expresar mucho mas que eso, y construir consultas muy complejas con los
> datos permitiendo que el motor optimice los accesos.
>
> No hay que olvidar que el modelo que SQL implementa esta inspirado en el
> modelo relacional, el cual a su vez esta basado en calculo relacional y
> algebra relacional que son herramientas matematicas muy complejas y
> potentes.
>
> Tratar de implementar todo eso en el sistema operativo es tan absurdo
> como tratar de implementar funcionalidad del sistema operativo en la
> base de datos (como un sistema de archivos por ej.) Se puede, pero es
> un gasto monumental de recursos con un retorno muy bajo.
>
> A menudo uno no desea datos que puedan expresarse de forma relacional.
> En ese caso obviamente usar una base de datos relacional no es una idea
> brillante. Pero cuando pueden expresarse de forma relacional, es tonto
> desperdiciar la oportunidad de aprovechar las herramientas que una BD
> relacional te entrega.
Bueno, todo depende del uso. Lo que digo en primeria instancia es que
cada vez mas los sistemas de archivos utilizan tecnologia de base de
datos. Ergo, para mi una evolucion natural seria que el sistema de
archivos sea la base de datos, como alguien planteaba (Reiser creo que
era). De hecho, un RDBMS re-implementa muchas cosas propias de los
sistemas operativos (autorizacion y autenticacion por ejemplo).
Se eliminarian un monton de capaz tontas que no tienen sentido (ej: el
lenguaje SQL). Y todo lo que tienen los RDBMS (transacciones,
integridad, etc) tambien puede ser implementado al nivel del sistema
operativo.
No tiene porque estar en el kernel, pero si tiene que ser parte del
sistema operativo. Asi como libc y el kernel de linux. No les parece?
--
Aldrin Martoq
Más información sobre la lista de distribución Linux