Tecnología

NoSQL vs SQL: Principales diferencias y cuándo elegir cada una de ellas

noviembre 18, 2015

NoSQL vs SQL: Principales diferencias y cuándo elegir cada una de ellas

El post está disponible también en : Inglés

Hoy en día empieza a haber una tendencia alcista por la utilización de Bases de Datos No SQL. En este artículo queremos aclarar cuáles son las diferencias entre ambas bases de datos y en qué ocasiones debemos elegir un tipo u otro para nuestro proyecto. Si crees que puedes aportar más características o información a este artículo estaremos encantados en recibir tus comentarios.

Antes de proseguir, ¿Sabéis que significa NoSQL? Not Only SQL, es simplemente por aclararlo :)

La diferencia fundamental entre ambos tipos de bases de datos radica en que las bases de datos NoSQL no utilizan el modelo relacional.

Ventajas Base de Datos relacional

  • Está más adaptado su uso y los perfiles que los conocen son mayoritarios y más baratos.
  • Debido al largo tiempo que llevan en el mercado, estas herramientas tienen un mayor soporte y mejores suites de productos y add-ons para gestionar estas bases de datos.
  • La atomicidad de las operaciones en la base de datos. Esto es, que en estas bases de datos o se hace la operación entera o no se hace utilizando la famosa técnica del rollback.
  • Los datos deben cumplir requisitos de integridad tanto en tipo de dato como en compatibilidad.

Desventajas Bases de Datos relacionales

  • La atomicidad de las operaciones juegan un papel crucial en el rendimiento de las bases de datos.
  • Escalabilidad, que aunque probada en muchos entornos productivos suele, por norma, ser inferior a las bases de datos NoSQL.

Ventajas de una base de datos NoSQL

  • La escalabilidad y su carácter descentralizado. Soportan estructuras distribuidas.
  • Suelen ser bases de datos mucho más abiertos y flexibles. Permiten adaptarse a necesidades de proyectos mucho más fácilmente que los modelos de Entidad Relación.
  • Se pueden hacer cambios de los esquemas sin tener que parar bases de datos.
  • Escalabilidad horizontal: son capaces de crecer en número de máquinas, en lugar de tener que residir en grandes máquinas.
  • Se pueden ejecutar en máquinas con pocos recursos.
  • Optimización de consultas en base de datos para grandes cantidades de datos.

Desventajas de una base de datos NoSQL

  • No todas las bases de datos NoSQL contemplan la atomicidad de las instrucciones y la integridad de los datos. Soportan lo que se llama consistencia eventual.
  • Problemas de compatibilidad entre instrucciones SQL. Las nuevas bases de datos utilizan sus propias características en el lenguaje de consulta y no son 100% compatibles con el SQL de las bases de datos relacionales. El soporte a problemas con las queries de trabajo en una base de datos NoSQL es más complicado.
  • Falta de estandarización. Hay muchas bases de datos NoSQL y aún no hay un estándar como si lo hay en las bases de datos relacionales. Se presume un futuro incierto en estas bases de datos.
  • Soporte multiplataforma. Aún quedan muchas mejoras en algunos sistemas para que soporten sistemas operativos que no sean Linux.
  • Suelen tener herramientas de administración no muy usables o se accede por consola.

NoSQL vs SQL: Cuándo utilizar qué tipo de base de datos

  • Cuando los datos deben ser consistentes sin dar posibilidad al error utilizar una base de datos relacional. SQL.
  • Cuando nuestro presupuesto no se puede permitir grandes máquinas y debe destinarse a máquinas de menor rendimiento. NoSQL.
  • Cuando las estructuras de datos que manejamos son variables. NoSQL.
  • Análisis de grandes cantidades de datos en modo lectura. NoSQL
  • Captura y procesado de eventos. NoSQL
  • Tiendas online con motores de inteligencia complejos. NoSQL

Es muy importante en este punto insistir en que aunque parece que en estos momentos lo suyo es migrar a bases de datos NoSQL, debemos tener muy en cuenta antes de tomar esta decisión si las características de nuestra base de datos necesita una base de datos NoSQL o relacional.

Esperamos que os sea de utilidad este articulo de comparativa NOSQL vs SQL. ¿Tenéis alguna información que añadir o comentar? ¿Tenéis alguna experiencia que contarnos con bases de datos SQL y NoSQL?


    Written by:



    Leave a comment

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

    Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.