Introducción a bases de datos

Nota: Todo lo que voy a escribir a continuación sobre base de datos, lo he sacado de los apuntes de mi profesor de Bases de Datos.

Lo subo a modo de manual para todos.



Índice

Elementos relacionados con un sistema de base de datos:

El SGBD debe permitir:

Niveles de abstracción de la información.

Uno de los objetivos de un sistema de bases de datos es proporcionar a los usuarios una visión abstracta de la información, ocultando ciertos detalles acerca de cómo se almacenan los datos, pero permitiendo una recuperación eficaz de la información.

Una de las arquitecturas más estandarizada es la especificada por la normativa ANSI/X3/SPARC. Según esta norma la arquitectura de una base de datos debe tener tres niveles de abstracción: externo, conceptual e interno.

El SGBD debe poder garantizar la transferencia de los datos desde el nivel interno al nivel externo, a este proceso se llama transformación de datos o mapeo (data mapping). Para ello existen dos niveles de correspondencia:

Los subesquemas, el esquema conceptual, el esquema interno y las correspondencias conceptual/interna y externa/conceptual, las describe el administrador de la base de datos y quedan almacenados dentro del diccionario de la BD para futuras consultas del SGBD. Cuando un usuario desea acceder a la base de datos, el SGBD examina el diccionario de datos para comprobar si la solicitud puede ser realizada y el modo de realizar las transformaciones pertinentes de los datos.

Todo ello permitirá una mayor independencia de los datos:

En el siguiente ejemplo de una base de datos se puede observar que se han obtenido dos subesquemas (esquemas externos) a partir del único esquema conceptual formado por las entidades: VENDEDORES, VENTAS y ARTICULOS. La estructura de cada subesquema obedece a las necesidades concretas del tipo de usuario que lo va a utilizar. Por ejemplo:

  1. Uno de los subesquemas será utilizado por un programa que totalizará ventas por departamento, por lo tanto la visión que le interesa tener de la base de datos es una relación de ventas ordenadas por departamentos.
  2. El otro subesquema lo utilizará un programa que listará una relación de empleados por departamento, por lo que sólo necesita conocer los nombres de todos los empleados y el departamento al que pertenecen.

SUBESQUEMAS

Esquema externo o subesquema para el programa “Ventas por departamento”

DEPARTAMENTOCONCEPTOIMPORTE
————–———-———

Esquema externo o subesquema para el programa “Relación de empleados por departamento”

DEPARTAMENTONOMBRE
————–——–

ESQUEMA CONCEPTUAL

Esquema conceptual de toda la base de datos, formado por los siguientes registros conceptuales:

ESQUEMA INTERNO

Esquema interno de toda la base de datos:

COD_VEND string(3)NOMBRE string(30)DEPART string(4)
——————–——————-——————

ARTICULOS

COD_ART string(4)CONCEPTO string(40)PVP float
——————-——————————–—–

Además se incluiría el tipo de organización, la secuencia física de los registros, modos de acceso, etc.

A continuación podemos observar algunas ocurrencias de los registros externos y conceptuales.

VISTAS EXTERNAS

VENTAS_POR_DEPARTAMENTO

DEPARTAMENTOCONCEPTOIMPORTE
AutomóvilAntirrobo3.450
AutomóvilParasol300
HogarJuego toallas6.500
HogarSábanas estampadas4.500

EMPLEADOS_POR_DEPARTAMENTO

DEPARTAMENTONOMBRE
————–——————-
AutomóvilJosé López García
HogarAna Ruiz Ramírez
HogarJulia Pérez Ramos

VISTA CONCEPTUAL

VENDEDORES

COD_VENDNOMBREDEPARTAMENTO
———-——————-————–
001José López GarcíaAutomóvil 

VENTAS

COD_VENDCOD_ARTCANTIDADFECHA
———-——————-———-
002H22101-10-98 

Funcionamiento de un SGBD

Para describir el funcionamiento de un SGBD supondremos el caso de un programa de aplicación, que lee un registro de una base de datos, para ello realiza una solicitud al SGBD, esencialmente la secuencia, mostrada en el esquema de la figura 1.2, es la siguiente:

  1. El programa de aplicación A pide al SGBD que lea un registro. Se proporciona la clave de acceso. El SGBD evalúa la capacidad del usuario para realizar la operación solicitada.
  2. El SGBD obtiene el subesquema que utiliza el programa de aplicación A. Si no encuentra los datos solicitados, rechaza la solicitud.
  3. El SGBD obtiene el esquema y determina qué tipo de datos lógicos necesita.
  4. El SGBD examina el esquema interno y determina qué registro físico debe leer.
  5. El SGBD ordena al S.O. que lea el registro pedido.
  6. El S.O. interacciona con el dispositivo físico en el que se encuentran los datos.
  7. Los datos pedidos se envían desde el dispositivo físico al buffer del sistema.
  8. El SGBD analiza el esquema, el subesquema y las correspondencias externa/conceptual para realizar las transformaciones necesarias de los datos.
  9. El SGBD transfiere los datos al área de trabajo del programa de aplicación A.
  10. El SGBD informa al programa del éxito o fracaso de la operación de E/S, incluyendo cualquier indicación de error.
  11. El programa puede ahora trabajar con los datos pedidos.

Lenguajes de un SGBD

Para comunicarnos con la base de datos necesitamos un lenguaje, este lenguaje nos permitirá realizar varios procedimientos:

Tipos de Bases de Datos

Según la estructura lógica, a nivel conceptual o a nivel externo, los SGBD se clasifican en:

Siguiente tema: Diseño de Bases de Datos ( I ) – Conceptos del Modelo Relacional