Las aplicaciones se han hecho indispensables en nuestro día a día y por consiguiente las Bases de Datos (aunque no las podamos ver), siendo estas una parte importantísima de una aplicación, ya que en ella se almacena información de la misma aplicación, pero primero definamos qué es una Base de datos.

¿Qué es una base de datos?

Una base de datos es una colección organizada de datos estructurados con el fin de que sea accesible, administrable y actualizable, siendo estas son controladas por un Sistema de Gestión de Bases de Datos (SGBD) o Database Manager System (DBMS).

Las bases de datos nos ayudan con: Integridad, Consistencia, Análisis, Toma de desiciones, Seguridad, Etc. De la información, de las cuales existen dos tipos de bases de datos SQL y NoSQL explicadas a continuación.

SQL

Una base de datos SQL es aquella base de datos que esta creada en el lenguaje SQL  (Structured Query Language o Lenguaje de Consulta Estructurada), que almacena información que se relacione entre si y que se organizan en un conjunto de tablas columnas y filas, contando con un identificador único denominado clave principal por cada fila de la tabla (registro), que a su vez estos identificadores se pueden relacionar con otros identificadores de otras tablas llamado clave foránea. 

Pros Contras
Estandarización Dificultad para escalar
Integridad de la información Dificultad con grandes volúmenes de información
Fácil acceso a la información Complejidad estructural conforme más crece
Herramientas de informes más robustas Problemáticas en entornos de desarrollo ágil
Es una tecnología madura Costo

Los motores de bases datos relaciones más conocidos son:

  • Amazon Aurora
  • MySQL
  • Microsoft SQL Server
  • Maria DB
  • Oracle
  • PostgresSQL

NoSQL 

Las bases de datos NoSQL (Not only SQL o No sólo SQL) es una base de datos no relacional, que tienen como principal objetivo el manejo de grandes volúmenes de información no estructurados que cambian con rapidez de forma diferente a una base de datos relacional (SQL) con filas y tablas.

Pros Contras
Manejo de grandes volúmenes de información Limitación en consultas
Rendimiento Baja estandarización
Flexibilidad Es tecnología Joven
Escalabilidad No se puede hacer Joins
Funcional Poco fiable para transacciones complejas

Los motores de bases datos no relaciones más conocidos son:

  • Cansadora
  • Couch DB
  • Mongo DB
  • Redis

¿Entonces Relacional o no relacional?

Cuando usar SQL (Relacional)

Las bases de datos relacionales o SQL serán la mejor opción cuando requieren relación entre un conjunto de datos que esta bien definida, integridad de la información que se están ocupando (ACID o Atomicity, Consistency, Isolation y Durability) y en el momento que no está experimentando un crecimiento masivo que requeriría más servidores. 

Cuando usar NoSQL (No relacional)

NoSQL es la mejor opción cuando se manejan grandes cantidades de datos o conjunto de datos en constantes cambios, así mismo es mejor usarlo cuando tiene modelos de datos flexibles y si no estas trabajando con datos estructurados.

Conclusión 

La selección del tipo de base de datos será una responsabilidad importante para el creador de la base de datos y dependerá mucho del uso al que se le dará la información, rendimiento y tipo de actividad de la misma, para elegir la mejor opción para cada proyecto.

Published On: agosto 10, 2021 / Categories: Desarrollo de Software /

Recibir publicaciones por correo electrónico

¡Genial!, estás suscrito.
Hubo un error al intentar enviar su mensaje. Por favor, inténtelo de nuevo más tarde.