24 de Junio- Base de datos no relacionales y relacionales
No relacionales
Es una base de datos que no incorpora el modelo
de clave/tabla que fomentan los sistemas de administración de bases de datos
relacionales (RDBMS). Estos tipos de bases de datos requieren técnicas y
procesos de manipulación diseñados para proporcionar soluciones para problemas
de Big Data que enfrentan las grandes compañías. La base de datos no relacional
emergente más popular se denomina NoSQL (no solo SQL).
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, por su funcionalidad y el rendimiento a escala.
Las bases de datos NoSQL utilizan una variedad
de modelos de datos para acceder y administrar datos. Estos tipos de bases de
datos están optimizados específicamente para aplicaciones que requieren grandes
volúmenes de datos, baja latencia y modelos de datos flexibles, lo que se logra
mediante la flexibilización de algunas de las restricciones de coherencia de
datos en otras bases de datos.
En una base de datos relacional, un registro de
libros a menudo se normaliza y se almacena en tablas separadas, y las
relaciones se definen mediante restricciones de claves primarias y externas.
Ejemplo: La tabla Libros tiene las
columnas ISBN, Título del libro y Número de edición, la
tabla Autores tiene las columnas IDAutor y Nombre de
autor y, finalmente, la tabla Autor e ISBN tiene las
columnas IDAutor e ISBN.
El modelo relacional está diseñado para
permitir que la base de datos aplique la integridad referencial entre tablas en
la base de datos, normalizada para reducir la redundancia y, generalmente, está
optimizada para el almacenamiento.
Ventajas de NoSQL
- Flexibilidad: las bases de datos NoSQL generalmente ofrecen esquemas flexibles que permiten un desarrollo más rápido e iterativo. El modelo de datos flexible hace que las bases de datos NoSQL sean ideales para datos semiestructurados y no estructurados.
- Escalabilidad: las bases de datos NoSQL generalmente están diseñadas para escalar usando clústeres distribuidos de hardware en lugar de escalar añadiendo servidores caros y sólidos. Algunos proveedores de la nube manejan estas operaciones en segundo plano, como un servicio completamente administrado.
- Alto rendimiento: la base de datos NoSQL está optimizada para modelos de datos especí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: las bases de datos NoSQL proporcionan API altamente funcionales y tipos de datos que están diseñados específicamente para cada uno de sus respectivos modelos de datos.
Relacionales
Es un conjunto colectivo de varios conjuntos de
datos organizados por tablas, registros y columnas. Las RDB establecen una
relación bien definida entre tablas de base de datos. Las tablas comunican y
comparten información, lo que facilita el informe, la organización y la
búsqueda de datos. Las RDB usan lenguaje de consulta estructurada (SQL), que es
una aplicación de usuario estándar que proporciona una interfaz de programación
fácil para la interacción de la base de datos.
Las tablas se utilizan para guardar información sobre los objetos que se van a representar en la base de datos. Cada columna de una tabla guarda un determinado tipo de datos y un campo almacena el valor real de un atributo. Las filas de la tabla representan una recopilación de valores relacionados de un objeto o una entidad. Cada fila de una tabla podría marcarse con un identificador único denominado clave principal, mientras que filas de varias tablas pueden relacionarse con claves extranjeras. Se puede obtener acceso a estos datos de muchas formas distintas sin reorganizar las propias tablas de la base de datos.
Estructura de base de datos relacional.
las estructuras lógicas de datos (las tablas de
datos, las vistas y los índices) están separadas de las estructuras físicas de
almacenamiento. Esta separación significa que los administradores de bases de
datos pueden administrar el almacenamiento físico de datos sin afectar el
acceso a esos datos como una estructura lógica. Por ejemplo, cambiar el nombre
de un archivo de base de datos no cambia el nombre de las tablas almacenadas en
él.
La distinción entre lógica y física también se
aplica a las operaciones de la base de datos, que son acciones claramente
definidas que permiten a las aplicaciones manipular los datos y las
estructuras de la base de datos. Las operaciones lógicas permiten que una
aplicación especifique el contenido que necesita, mientras que las operaciones
físicas determinan cómo se debe acceder a esos datos y luego realizan la tarea.
Propiedades
Las transacciones de bases de datos
relacionales se definen mediante cuatro propiedades cruciales: Atomicidad,
coherencia, aislamiento y durabilidad, conocidos como ACID.
- La atomicidad define todos los elementos que conforman una transacción completa en la base de datos.
- La consistencia define las reglas para mantener los puntos de datos en un estado correcto después de una transacción.
- El aislamiento mantiene el efecto de una transacción invisible para otros hasta que se comprometa, para evitar confusiones.
- La durabilidad garantiza que los cambios en los datos se vuelvan permanentes una vez que se confirma la transacción.
El acceso a los datos implica muchas acciones repetitivas. Por ejemplo, una consulta simple para obtener información de una tabla de datos puede necesitar repetirse cientos o miles de veces para producir el resultado deseado. Estas funciones de acceso a los datos requieren algún tipo de código
para acceder a la base de datos. Los desarrolladores de aplicaciones no desean escribir un código nuevo para estas funciones en cada aplicación nueva. Afortunadamente, las bases de datos relacionales permiten procedimientos almacenados, que son bloques de código a los que se puede acceder con una simple llamada de aplicación.


Comentarios
Publicar un comentario