Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Si existe NoSQL ¿por qué utilizar SQL?

Estas en el tema de Si existe NoSQL ¿por qué utilizar SQL? en el foro de Bases de Datos General en Foros del Web. Leyendo varios artículos sobre NoSQL me ha venido esa pregunta a la cabeza. Si SQL no es factible en proyectos de grandes cantidades de datos ...
  #1 (permalink)  
Antiguo 28/07/2013, 01:17
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
Si existe NoSQL ¿por qué utilizar SQL?

Leyendo varios artículos sobre NoSQL me ha venido esa pregunta a la cabeza.

Si SQL no es factible en proyectos de grandes cantidades de datos y necesita de máquinas más poderosas para alcanzar la misma rapidez que BD's NoSQL

¿Existen motivos para no pasarse a NoSQL sin abandonar por completo SQL?

¿Para programadores nobeles como yo merece la pena aprender SQL teniendo NoSQL que ofrece una escalabilidad que asegura desde el principio poder ir metiendo datos y datos frente a SQL con la cual la escalabilidad vertical va a ir haciendo el mantenimiento y rapidez más complicados de encontrar?

Gracias de antemano por las respuestas.
  #2 (permalink)  
Antiguo 28/07/2013, 06:13
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Si existe NoSQL ¿por qué utilizar SQL?

Probablemente el día que trabajes para una empresa de dimensiones suficientemente grandes, te des cuenta de los enormes esfuerzos, y gigantescas complicaciones que implica migrar de sistemas para implementar ese tipo de cambios.
La idea puede parecer buena, pero no es tan simple como sacar uno y poner otro.
Además, ¿quien te asegura que no necesitarás, en sistemas complejos, los mismos o mayores recursos de hardware?
¿Crees que sólo "manejar" los datos es todo el problema'
Eso es una pequeñísima parte de lo que hay que modificar...

Hablando en términos un poco más técnicos, las ventajas de escalabilidad horizontal y rapidez de lectura/escritura que pueden aportar sistemas NoSQL, es insuficiente para requerimientos estrictamente comerciales, si no se aplica ACID y no se asegura la consistencia de datos, dos elementos clave para el uso de NoSQL en ambientes de alta criticidad comercial.
Para dar un ejemplo, el registro de transacciones de ventas de un agente (un leasing, p.e.), con las cuales se realiza la imputación de pagos y comisiones, debe ser absolutamente consistente, aún cuando ese agente facture a razón de 1.200 operaciones por segundo (lo he visto suceder)... Y eso es algo que todavía el NoSQL no termina de resolver, aunque haya buenos productos que integran soluciones para eso.
En otras palabras, no se abandona el modelo RDBMS, no porque sea bueno o malo, sino porque es bueno para los sistemas donde sus ventajas son necesarias y superan al NoSQL... y habitualmente esas ventajas están muy relacionadas con la consistencia, la integridad referencial y el dinero...
El NoSQL puede, en algún momento, ofrecer una opción válida, pero para eso debe ser capaz de reemplazar completa y eficazmente lo que se consigue con los RDMS. Tal vez ocurra, pero no veo en este momento a HSBC, BCE, Pepsico, Nokia o Motorola, confiar ciegamente en algo que aún no ha terminado de verse como alternativa a los RDMS.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 28/07/2013 a las 07:40
  #3 (permalink)  
Antiguo 28/07/2013, 08:14
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
Respuesta: Si existe NoSQL ¿por qué utilizar SQL?

Entiendo lo que me dices gnzsoloyo. La verdad es que como recién llegado al fascinante mundo de la programación web, las complicaciones que veo respecto a las bases de datos son una ínfima parte, de ahí mi pregunta.

Desconozco qué bases de datos utilizan esas grandes empresas, pero también es verdad que lo que utilicen grandes empresas no me termina de inspirar mucha confianza.

Tengo un amigo que trabaja para una importante entidad bancaria, y dicha entidad bancaria sigue utilizando por ejemplo ficheros .bat para transacciones bancarias con la excusa de que soportan tamaños numéricos muy grandes, de billones. Es dinero y no es una cantidad despreciable mover billones. Pero lo hacen con ficheros .bat, cuando me lo dijo no daba crédito, una gran empresa que siga utilizando semejante atraso.

Y continuó explicándome ciertas políticas del departamento de programadores que me dejaron claro que si es antiguo y funciona así se queda y los programadores vetaranos con empleos superiores impedirán que toques esa forma de trabajar, además de hacer trabajos manuales que con simples estructuras de control de flujo (for, while, etc.) se solucionaría.
pero no hay manera.

Entonces, que ellos no se hayan atrevido no significa para mi, que seguro que me equivoco, en que la tecnología NoSQL no esté lo suficientemente desarrollada.

Pero evidentemente me queda mucho por aprender y este juicio de valor es el de un mero principiante desconocedor del gran mundo de las BD.

Muchas gracias por tu respuesta.

Ansioso de más respuestas tuyas, que las tengo en muy alta estima, y el de otros usuarios :P

Saludos!!

Etiquetas: sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:20.