2010/2/25 Fernando Parra <[email protected]>:
> Se que esto no está relacionado directamente a Ruby, pero creo que es de
> interés para la mayoría.
> Actualmente estoy leyendo mucho sobre la movida NoSQL y opino que es un
> paradigma muy necesario considerando los volúmenes de datos y las
> necesidades que los sistemas de información presentan.
> Ahora, me parece muy lindo el concepto, pero hay un caso que no me queda
> claro de todas las explicaciones que he escuchado, y me hace sospechar que
> por ahí las bases de datos relacionales siguen estando vigentes (dado que
> hay muchos fanáticos que proponen desecharlas completamente).
> El tema es el siguiente: supongamos un sistema comercial en el cual tendría
> miles de datos en tablas maestras con información como: roles, países y
> ciudades, códigos de productos, etc. Es muy probable (y sobre todo al
> principio) que no se hayan realizado por ej, ventas de cierto producto, o no
> se hayan asignado roles a ciertos usuarios, lo que se traduce en que un
> registro de una tabla aún no se ha relacionado con otra al menos una vez.
> En NoSQL se propicia la utilización de algoritmos Map Reduce del cual se
> podría extraer de un set los datos que corresponden a valores únicos (por
> ejemplo, los países que integran los usuarios de nuestro sitio), pero al
> hacer esto no estaríamos tomando en cuenta todo el set posible. Nada me
> suena mejor que un OUTER LEFT JOIN si estuviera utilizando SQL.
> Si para solucionar esto agregáramos una colección conteniendo los datos de
> lookup, estaríamos simulando una situación típica de una base relacional y
> me parece que nadie lo recomendaría.
> Me imagino esta situación en un sistema transaccional todo el tiempo.
> Cual es la mejor aproximación???
> He leído por ahí que muchos mezclan bases relacionales con no relacionales,
> lo cual me parece correcto, por que se estaría utilizando la mejor
> herramienta para cada dominio. Pero, aún así, he leído de algunos
> evangelistas NoSQL que no sería una buena práctica. Entonces?

Está bueno el planteo. Te parece pasarlo a código y vemos cuál sería
la equivalencia? Si podés armate un ejemplo de cómo serían las tablas,
el resultado que querés obtener y cómo lo obtendrías con SQL.

Saludos,

--
Michel
_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar

Responder a