NoSQL vs RBDMS

Forums: 

Saludos Amigos,

Tengo mis dudas sobre este tema

Cuales son las ventajas y desventajas?

Mas que nada porque soy fan de PostgreSQL y lei esto en la nota de lanzamiento:

[quote]Tras una gran discusión, me complace anunciar que el
Equipo de PostgreSQL central ha decidido que el tema principal de la 9.1
lanzamiento, en 2011, será "NoSQL".

Hay una tendencia creciente hacia la base de datos NoSQL, con los principales sitios
como Twitter y Facebook a utilizar ampliamente. NoSQL bases de datos
a menudo incluyen varios maestros de replicación, clustering y failover
características que han sido solicitados en PostgresSQL, pero han sido
extremadamente difícil de implementar con SQL, que nos ha impedido
avanzar Postgree en la forma en que nos gustaría.[/quote]

Espero sus comentarios y experiencias

Gracias

chente_davila wrote: creo que

Imagen de deathUser

[quote=chente_davila]creo que una buena practica de desarrollo es apuntar la programación del lado del servidor en la BD[/quote]
Eso hace a la aplicación dependiente de la base de datos, cosa que los amantes y defensores de las N capas odiarán, claro que la decisión dependerá de muchos factores, no solo de diseño o de arquitectura, mientras esté bien documentada y la solución sea elegante y eficiente creo que todo se vale :D

bye
;)

dependiendo de postgres

[quote]
deathUser wrote:
Eso hace a la aplicación dependiente de la base de datos, cosa que los amantes y defensores de las N capas odiarán, claro que la decisión dependerá de muchos factores, no solo de diseño o de arquitectura, mientras esté bien documentada y la solución sea elegante y eficiente creo que todo se vale
[/quote]

Solamente si la base no soporta el lenguaje SQL estándar lo que significa que estaras atado a una base de todos modos porque solo postgres se ajusta al estandar lo mas posible, el resto (especialmente las privativas) no quieren que tengas eleccion asi que soportan mil y un cosas que no son estandar.

ahora, si me voy a atar a una base mejor que sea postgres... de hecho estan potente que la mayor parte de las aplicaciones no requieren cambios al migrar de otras bases (excepto cuando si requieren cambios ;D)
pongamos por ejemplo a MS SQL SERVER las menos estandar de todas que usa el operador + para concatenar texto mientras el estandar dice que se debe usar ||... para mi es tan simple como crear el operador + en postgres usando un comando SQL muy simple:

CREATE OPERATOR + (
PROCEDURE = textcat,
LEFTARG = text,
RIGHTARG = text,
COMMUTATOR = +
);

Honestamente, si escojo una base como la "mejor" opción y aun así programo sin utilizarla al máximo porque así gano compatibilidad para migrar no me doy mucha confianza

Jaime Casanova
www.2ndQuadrant.com

en las aplicaciones que

Imagen de deathUser

en las aplicaciones que requieres portabilidad, hablando en términos de bases de datos, en general usas herramientas que abstraen el acceso a la base de datos como hibernate o ibatis (por hablar de java), las cuales se encargan de hablarle a la base de datos en su dialecto particular, aplicaciones como Alfresco generan toda la base de datos y cargan los datos mínimos iniciales en el momento del primer despliegue de la aplicación, podrían también realizar la generación de los stored procedures, funciones y demás cosas que requieran cada una de las bases de datos soportadas para mantener la compatibilidad, eso obviamente le complica la vida a los desarrolladores o complicaría el proceso de instalación de la aplicación, ahora que si no les importa la portabilidad en términos de bases de datos, pues no es problema ...

bye
;)

Páginas