![](https://codideep.com/img/blogpost/imagenportada/202002230000001.png?x=2020-03-04_18-49-21)
¿Qué es una base de datos relacional (SQL)?
Un base de datos relacional se basa en el modelo relacional, es decir que, es una recopilación de datos relacionados entre ellos, estos datos se organizan como un conjunto de tablas con columnas y filas. Las tablas se utilizan para guardar información con un ID único llamado clave en la base de datos y cada columna de una tabla guarda un determinado tipo de dato.
Metodología de desarrollo de la base de datos no relacional.
- Diseño Conceptual: Es parte de las especificaciones de requisitos de usuario y su resultado es el esquema conceptual de la base de datos.
- El Diseño Lógico: Descripción de la estructura de la base que puede procesar el sistema gestor de base de datos.
- El Diseño Físico: Descripción de la implementación de una base de datos en memoria secundaria, describiendo las estructuras de almacenamiento y los métodos de acceso a esos datos.
Normalización de bases de datos relaciones
La normalización de bases de datos consiste en designar y aplicar una serie de reglas con el objetivo de minimizar la redundancia de datos.
- Primera forma normal (1FN)
- Segunda forma normal (2FN)
- Tercera forma normal (3NF)
- Forma normal de BoyceCodd (FNBC)
- Cuarta forma normal (4FN)
- Quinta forma normal (5FN)
A continuación algunos tipos de bases de datos relaciones.
- MySQL
- PostgreSQL
- Oracle
- DB2
- INFORMIX
- Interbase
- FireBird
- Sybase
- Microsoft SQL Server
¿Qué son las bases de datos no relacional (NoSQL)?
Las bases de datos NoSQL están diseñadas específicamente para modelos de datos específicos y tienen esquemas flexibles para crear aplicaciones modernas. Las bases de datos NoSQL son ampliamente reconocidas porque son fáciles de desarrollar, su funcionalidad y el rendimiento a escala. Usan una variedad de modelos de datos, que incluyen documentos, gráficos, clave valor, memoria y búsqueda. Por ejemplo, algunos que lo usan son: Facebook, Twitter y YouTube.
¿Por qué usar una base de datos NoSQL?
Las bases de datos NoSQL se adaptan perfectamente a muchas aplicaciones modernas, como dispositivos móviles, web y juegos, que requieren bases de datos flexibles, escalables y de alto rendimiento.
- Flexibilidad: Ofrecen esquemas flexibles que permite un desarrollo más rápido y más iterativo. El modelo de datos flexible hace que las bases de datos NoSQL sean ideales para datos semiestructurados y no estructurados.
- Escalabilidad: Diseñadas para escalar usando clústeres distribuidos de hardware en lugar de escalar añadiendo servidores caros y sólidos.
- Alto rendimiento: Optimizada para modelos de datos específicos (Como documentos, clave-valor y gráficos) y patrones de acceso que permiten un mayor rendimiento que el intento de lograr una funcionalidad similar con bases de datos relacionales.
- Altamente funcional: Proporcionan API altamente funcionales y tipos de datos que están diseñados específicamente para cada uno de sus respectivos modelos de datos.
Tipos de bases de datos NoSQL
- Gráficos: Es proporcionar la creación y la ejecución de aplicaciones conectadas, como motores de recomendaciones, detección de fraude y gráficos de conocimiento.
- Clave-valor: Almacena datos como un conjunto de pares clave-valor en los que una clave sirve como un identificador único del registro.
- Documentos: Representación de datos como un objeto o un documento de tipo JSON. Facilitan a los desarrolladores el almacenamiento y la consulta de datos.
- Memoria: Las aplicaciones de juegos y tecnología publicitaria tienen casos de uso como tablas de clasificación, tiendas de sesión y análisis en tiempo real que requieren tiempos de respuesta en microsegundos.
- Buscar: Aplicaciones que generan registros para ayudar a los desarrolladores a solucionar problemas. Como Amazon Elasticsearch Service proporciona visualizar y analizar los datos generados en tiempo real.
Veamos a continuación algunos tipos de bases de datos NoSQL más utilizadas actualmente.
- Cassandra
- Redis
- MongoDB
- CouchDB
CONCLUSIÓN
Cómo se pudo ver, contamos con dos modelos en los cuales intervienen muchos factores, la base de datos no relacional es la flexibilidad de almacenar los datos, si se requiere de un campo extra no es necesario cambiar la estructura de la base de datos como ocurre en la base de datos relacional, los datos no relaciones es un modelo no transaccional, por lo que, al momento de realizar consultas, su tiempo de respuesta disminuye considerablemente.
La base de datos relacional también provee herramientas para evitar la duplicidad de datos y normalización para contar con datos comprensibles y aplicable, así mismo, aunque no es tan eficaz en el tiempo de respusta (Comparado con una base de datos no relacional) asegura una mejor consistencia de datos y es transaccional, por lo que se prefiere mucho para almacenamiento de datos complejos y obtención de información bajo ciertos criterios de procesamiento de datos.
![](https://codideep.com/img/avatar/201705200000001-medium.png?x=2024-04-26_16-35-35)
- Debes estar logueado para realizar comentarios