Introducción a las Bases de Datos y Almacenamiento
En la pirámide de memoria, los discos y cintas se denominan medios de almacenamiento masivo porque sirven para guardar información en grandes cantidades y de manera permanente.
Estructuras Fundamentales de Almacenamiento
Fichero
Un fichero es una estructura de almacenamiento de información de tamaño variable con las siguientes características:
- Tiene un nombre.
- Su tamaño es variable, no solamente en su creación, sino a lo largo de su vida, pudiendo ser ampliado o reducido.
Se divide en tres partes:
- La cabeza: Contiene la información administrativa (nombre, fecha de creación, autor, etc.).
- El cuerpo: Almacena la información como tal.
- La cola: Contiene la información del sistema operativo que permite comprobar su integridad.
Registro
Un registro es una estructura de datos repetitiva, de longitud fija, que representa elementos con la misma información. Se compone de campos. Cada campo es una sección, también de longitud fija, que contiene una parte de la información del registro. Los ficheros de registros son los más empleados en la gestión empresarial.
Tipos de Acceso a Ficheros
En función de la forma de acceder a ellos, los ficheros se dividen en los siguientes tipos:
Acceso Secuencial
En este tipo de ficheros, para llegar a un lugar concreto del mismo, hay que pasar forzosamente por los anteriores. Este tipo de acceso está ligado a cintas de ordenador y ficheros que llegan desde algún dispositivo de comunicación.
Acceso Directo
En los ficheros de acceso directo, es posible leer en cualquier parte del mismo consumiendo el mismo tiempo, con independencia de la posición leída. En el caso de ficheros de registros, se puede leer cualquiera de ellos con un tiempo de posicionamiento mínimo.
Acceso Indexado
Es una forma de acceso propia de los ficheros de registros. El fichero principal, o maestro, se complementa con otros ficheros, llamados de índices. Cada fichero de índice corresponde a un criterio de ordenación de los registros.
¿Qué es una Base de Datos?
Una base de datos es un conjunto de datos relacionados. Esta definición implica dos propiedades fundamentales:
Almacenamiento de la Información
Esto se refiere a la organización del espacio que compone la base de datos y el almacenamiento físico de la información. En la práctica, esto significa también aumentar o disminuir su tamaño en caso de inserción o borrado y el mantenimiento de índices.
Conocimiento del Significado de Cada Uno de sus Componentes
Es decir, la base de datos conoce el nombre, estructura y formato de cada una de las piezas individuales de información que almacena, así como las relaciones entre ellas.
Sistema de Gestión de Bases de Datos (SGBD)
Un Sistema de Gestión de Bases de Datos (SGBD) es un conjunto de programas que permiten al usuario crear, acceder y mantener una base de datos.
Lenguaje de Definición de Datos (DDL)
Sirve para crear y mantener la estructura de la base de datos.
Lenguaje de Recuperación de Datos (DML)
Sirve para buscar y alterar el contenido de la base de datos.
Arquitecturas de Bases de Datos
La arquitectura de una base de datos es su organización estructural. Se distinguen tres tipos principales:
Arquitectura Centralizada
Es el caso más común. Tanto la base de datos como el SGBD residen en un ordenador central y la información se distribuye entre los distintos usuarios que acceden al mismo, bien de forma centralizada (terminal) o distribuida (red).
Bases de Datos Federadas
En este caso, una serie de bases de datos y SGBD centralizados conocen la información que tienen las demás y la solicitan cuando lo necesitan, compartiéndola entre sí. Este concepto está de actualidad en el contexto de Internet.
Bases de Datos Distribuidas
En este último tipo de arquitectura, toda la base de datos está distribuida entre distintos ordenadores, y los SGBD se coordinan entre sí para mantenerla.
Modelos de Organización de Bases de Datos
Las bases de datos se clasifican según la forma de organización de los datos que contemplan. Estos modelos están asociados a diferentes complejidades de programación de los SGBD:
Modelo Jerárquico
En el modelo jerárquico, cada entidad es hija exactamente de una entidad padre, con la excepción de la entidad raíz (root). Este modelo se extendió durante los años 60 y actualmente está en desuso.
Modelo en Red
En el modelo en red, cualquier entidad puede tener varios conjuntos de hijos, de acuerdo con diferentes conceptos, y puede tener varios padres, cada uno correspondiente a un concepto. Este modelo está asociado a la normalización de bases de datos del grupo CODASYL, presentado en 1971.
Modelo Relacional
El modelo relacional fue creado para superar las limitaciones de los anteriores, rompiendo radicalmente con ellos. En este modelo, la información se almacena en tablas llamadas relaciones, en las que las filas son instancias o casos particulares de la relación y las columnas son los atributos, cada uno de los elementos que la componen. El modelo relacional se introdujo en 1970, aunque tardó 10 años en ser implementado eficientemente. Actualmente, el modelo relacional es el predominante.
Integridad de Datos en Bases de Datos
La integridad es la correcta composición de la información almacenada y de sus relaciones. La integridad de una base de datos se basa en una serie de reglas genéricas y otras que dependen de la definición específica de la base de datos (por ejemplo: en un sistema de gestión de centros de enseñanza, si un alumno puede estar matriculado en más de un curso o no).
Modelo Conceptual de Bases de Datos
El modelo conceptual de una base de datos es el diseño previo de la base de datos, con anterioridad a su implementación. Es un verdadero modelo del entorno de negocio sobre el que se quiere implantar un sistema de información.
Elementos del Modelo Conceptual
Entidad
Es algo del mundo real que es distinguible de los demás objetos.
Atributo
Es un elemento de información dentro de una entidad.
Clave
Es un conjunto de atributos que identifica de forma unívoca una instancia de una entidad.
Conceptos Clave en Bases de Datos Relacionales
Relación
Es un vínculo de información entre dos entidades. Una relación siempre tiene un nombre asociado.
Base de Datos Relacional
Es una aplicación que permite gestionar y operar bases de datos usando el modelo relacional.
Lenguaje SQL
Es un lenguaje que forma parte de los gestores de bases de datos relacionales. Tiene dos funciones básicas:
- Buscar y modificar datos en las bases de datos relacionales.
- Administrar dichas bases de datos.