Los grandes dilemas de los desarrolladores (5): SQL o NoSQL

Fiabilidad o velocidad, SQL o NoSQL: Esta es una de las principales y más importantes decisiones a las que se enfrenta un desarrollador a la hora de crear su aplicación.

Los administradores de sistemas y desarrolladores de aplicaciones se enfrentan a una importante decisión cada vez que deben escoger entre la probada y fiable tecnología de bases de datos SQL o apostar por la creciente y atractiva tendencia hacia los desarrollos basados en NoSQL, que permiten gestiones de mayores y más variada cantidad de datos.

Las bases de datos NoSQL suenan, como todo lo nuevo, atractivas. Pueden ser mucho más rápidas que las actuales bases de datos, además de permitir una respuesta más rápida y exacta. Las bases NoSQL permiten así almacenar y encontrar cualquier elemento con una clave-valor, sin las limitaciones tradicionales, de tal forma que ese elemento vendrá devuelto de forma automática.

Pero si uno se fija mejor, las bases de datos NoSQL no son siempre tan maravillosas. En primer lugar, a menudo no ofrecen garantías de que los datos serán registrados correctamente. Probablemente estarán bien, pero no lo estarán si algo le sucede a un disco duro o a un equipo del clúster. Algunas de las opciones más recientes de bases NoSQL de proveedores como Oracle permiten solicitar una confirmación de la transacción, pero para ello se debe ejecutar un código que tarda lo mismo que si se hiciera con una base de datos SQL.

Hay además cuestiones más profundas. Muchos de los problemas de velocidad se produjeron porque los programadores no pensaron más allá de las posibilidades habituales que ofrecían los SQL Server. La forma de estructurar las tablas y consultas influye notablemente en el rendimiento. Enlazando varias tablas y obligando a la base de datos a unir toda la información era lo que de verdad ralentizaba las cosas. En definitiva, ambas opciones deben ser entendidas y utilizadas en su forma óptima o cualquiera de las dos puede suponer un auténtico quebradero de cabeza para la organización.

Este dilema, a diferencia de los demás, tiene una respuesta simple: Las aplicaciones que necesitan una mayor coherencia y fiabilidad deben confiar en las garantías de transacción de la mayor maquinaria de SQL. Por el contrario, las aplicaciones que necesitan velocidad y solo deben manejar unos pocos registros codificados pueden elegir los nuevos almacenes de datos NoSQL. Pero si usted necesita ambas cosas, velocidad y consistencia, su opción es tirarse de los pelos. 


Comenta este artículo en nuestros Twitter y Facebook
Cada día, una nueva entrega de este serial. Las próximas entregas las podréis ver
aquí

Revista Digital

Impresión profesional

Pymes

HP Impresion Móvil

Un estudio de IDC asegura que en 2015 el 37 por ciento de la fuerza laboral a nivel mundial será móvil. Una de las principales consecuencias, tal y como asegura el informe de IDC, es el incremento de la impresión móvil. Y es que la movilidad también beneficiará a otros sectores e impulsará su crecimiento.

Microsoft Evento cloud os 1 PUBLIRREPORTAJE

Microsoft muestra las posibilidades de la nube

Con la celebración del evento Disfrute de la experiencia Cloud OS, Microsoft ha mostrado su visión de la nube como una plataforma unificada para las empresas modernas que necesitan conciliar las principales tendencias tecnológicas que mueven el mercado TI actual, esto es, movilidad, Big Data y análisis de datos, aplicaciones y, por ...



$sitioweb.getBlueKaiTag()