Base de Datos: Conceptos Fundamentales
Una base de datos es una colección de datos relacionados entre sí que tienen un significado implícito.
Sistema Gestor de Bases de Datos (SGBD)
Un Sistema Gestor de Bases de Datos (SGBD) es una aplicación que permite a los usuarios definir, crear y mantener una base de datos, y proporciona acceso controlado a la misma. Este tipo de programas facilitan el almacenamiento y la consulta de datos.
Evolución Histórica de los Tipos de Bases de Datos
- Jerárquicos
- En red
- Relacionales
- Multidimensionales
- De objetos
Bases de Datos de Red
Una base de datos de red está formada por una serie de registros enlazados entre sí, creando una red. Estos registros son similares a los campos en las bases de datos relacionales y cada uno contiene un único atributo. Su objetivo es permitir almacenar y organizar la información de forma sencilla e incluir contenido tan variado como se desee.
Ventajas y Desventajas de las Bases de Datos de Red
Ventajas:
- Posibilidad de establecer relaciones de muchos a muchos.
Desventajas:
- La relación de muchos a muchos no se puede establecer entre instancias o registros de diferente nivel, a diferencia de las bases de datos relacionales.
Tipos de Soportes para Bases de Datos
Soportes de Acceso Directo a los Datos:
Son los más empleados. El acceso a los datos puede hacerse de forma directa, pudiendo colocarnos en la posición que nos interesa y leer a partir de ella.
Soportes de Acceso Secuencial:
Se suelen usar en copias de seguridad. Si deseamos leer un dato que está en la mitad de la cinta, tendremos que leer todo lo que hay hasta llegar a esa posición.
Elementos Constitutivos de una Base de Datos
- Dato: Hechos conocidos.
- Entidades: Objeto real o abstracto con características diferenciadoras de otros, del que se almacena información en la base de datos.
- Atributos: Son los datos que se almacenan de la entidad. Cualquier propiedad o característica de una entidad puede ser un atributo.
- Registros: Donde se almacena la información de cada entidad. Es un conjunto de atributos que contienen los datos que pertenecen a una misma repetición de entidad.
- Campos: Donde se almacenan los atributos de cada registro.
- Campo/s clave: Campo que identifica unívocamente a cada registro.
Servicios Proporcionados por un SGBD
- Permite la definición de la base de datos mediante el lenguaje de definición de datos (DDL). Este lenguaje permite especificar la estructura y el tipo de los datos, así como las restricciones sobre los datos. Todo esto se almacenará en la base de datos.
- Permite la inserción, actualización, eliminación y consulta de datos mediante el lenguaje de manejo o manipulación de datos (DML).
- Proporciona un acceso controlado a la base de datos mediante:
- Un sistema de seguridad, de modo que los usuarios no autorizados no puedan acceder a la base de datos, mediante el lenguaje de control de datos (DCL).
- Un sistema de integridad que mantiene la integridad y la consistencia de los datos.
- Un sistema de control de concurrencia que permite el acceso compartido a la base de datos.
- Un sistema de control de recuperación que restablece la base de datos después de que se produzca un fallo del hardware o del software.
- Un diccionario de datos o catálogo accesible por el usuario que contiene la descripción de los datos de la base de datos.
La principal herramienta de un SGBD es la interfaz de programación con el usuario. Esta interfaz consiste en un lenguaje muy sencillo mediante el cual el usuario interactúa con el servidor. Este lenguaje comúnmente se denomina SQL.
Tipos de SGBD por Capacidad
Los SGBD se pueden clasificar según las bases de datos que gestionan, pero como la mayoría de los SGBD integran muchas filosofías, los clasificaremos según su capacidad y potencia:
- SGBD Ofimáticos: Manipulan bases de datos pequeñas orientadas a almacenar datos domésticos o de pequeñas empresas.
- SGBD Corporativos: Tienen la capacidad de gestionar bases de datos enormes, de medianas o grandes empresas, con una carga de datos y transacciones que requieren de un servidor de gran capacidad.
Componentes del Motor de un SGBD
- Administrador de Almacenamiento: Controla el acceso a la información de la base de datos en el disco. Se encarga tanto de los buffers como de los archivos donde se almacenan todos los datos.
- Procesador de Consultas: Se encarga de recibir las peticiones de consultas y debe encontrar la manera más óptima de realizarlas a través de lo que se conoce como Plan de Ejecución. Emite órdenes al Administrador de Almacenamiento, puesto que es quien accede finalmente a los datos para proporcionarlos.
- Gestor de Transacciones: Asegura que se mantenga la integridad de la base de datos tras la ejecución de transacciones, sean o no fallidas.