4.2 KiB
Bloque 2 Tema 5. Sistemas de gestión de bases de datos relacionales, orientados a objetos y NoSQL: características y componentes.
Introducción
Un sistema de gestión de bases de datos, abreviado como SGBD, es el software que permite crear, gestionar y administrar bases de datos.
En el examen TAI este tema se pregunta desde un punto de vista conceptual y comparativo, centrándose en los tipos de SGBD, sus características y sus componentes. No se pregunta SQL avanzado ni administración práctica.
1. Sistemas de gestión de bases de datos
Un sistema de gestión de bases de datos es el conjunto de programas que permiten definir bases de datos, crear y mantener datos, acceder y modificar información, y garantizar integridad, seguridad y concurrencia.
Importante para examen
Base de datos y sistema de gestión de bases de datos no son lo mismo.
Las funciones principales de un SGBD son las siguientes.
Definición de datos.
Manipulación de datos.
Control de accesos.
Gestión de transacciones.
Copias de seguridad y recuperación.
2. Componentes de un SGBD
Los componentes principales de un sistema de gestión de bases de datos son los siguientes.
El motor de la base de datos.
El diccionario de datos.
Los lenguajes de acceso.
El gestor de almacenamiento.
El gestor de transacciones.
Los usuarios y las aplicaciones.
El diccionario de datos contiene los metadatos, es decir, la definición de tablas, las restricciones, los usuarios y los permisos.
Importante para examen
El diccionario de datos describe los datos, no contiene los datos en sí mismos.
3. SGBD relacionales
Un sistema de gestión de bases de datos relacional organiza la información en tablas, también llamadas relaciones. Cada tabla está formada por filas, que son los registros, y columnas, que son los campos.
Se basa en el modelo relacional.
Sus características principales son el uso de tablas, las relaciones mediante claves, la integridad de los datos y el uso del lenguaje estándar SQL.
Las claves más importantes son dos. La clave primaria identifica de forma única un registro dentro de una tabla. La clave foránea referencia a la clave primaria de otra tabla.
Importante para examen
La clave foránea no identifica, referencia.
Los ejemplos más habituales de SGBD relacionales son Oracle, MySQL, PostgreSQL y SQL Server.
4. SGBD orientados a objetos
Un sistema de gestión de bases de datos orientado a objetos almacena la información en forma de objetos, similares a los que se usan en la programación orientada a objetos.
Sus características principales son el uso de objetos, la encapsulación, la herencia y los métodos asociados a los datos.
Sus ventajas son que permiten un modelado más natural para datos complejos y que se integran bien con lenguajes orientados a objetos.
Sus inconvenientes son la menor estandarización y su menor implantación en comparación con los sistemas relacionales.
5. SGBD NoSQL
Los sistemas de gestión de bases de datos NoSQL son sistemas no relacionales diseñados para manejar grandes volúmenes de datos con escalabilidad y alto rendimiento.
Sus características principales son las siguientes.
No usan tablas relacionales clásicas.
Permiten escalabilidad horizontal, es decir, añadir más servidores en lugar de mejorar uno solo.
Tienen esquema flexible.
Ofrecen alta disponibilidad.
Los tipos de bases de datos NoSQL más importantes son cuatro.
Las bases de datos de clave-valor almacenan pares de clave y valor.
Las bases de datos documentales almacenan documentos como JSON.
Las bases de datos de columnas organizan los datos por columnas en lugar de por filas.
Las bases de datos de grafos almacenan relaciones entre nodos.
Los ejemplos más habituales son MongoDB, Cassandra, Redis y Neo4j.
Importante para examen
NoSQL no significa sin SQL, sino no solo SQL.
Resumen final del tema
El sistema de gestión de bases de datos gestiona y administra las bases de datos.
Existen tres tipos principales: relacionales, orientados a objetos y NoSQL.
El modelo relacional usa tablas con claves primarias y foráneas.
SQL es el lenguaje estándar de los sistemas relacionales.
Los sistemas NoSQL priorizan la escalabilidad y la flexibilidad para grandes volúmenes de datos.