Sei sulla pagina 1di 25

Bases de datos

Universidad de Extremadura
Escuela Politécnica
Dpto. de Ingeniería de Sistemas Informáticos y Telemáticos
Área de Lenguajes y Sistemas Informáticos

Introducción a los sistemas


de bases de datos
Módulo I

Bases de Datos

Miryam Salas Sánchez


1

Programa de BD

Módulos generales
Presentación

I. Introducción a los sistemas de bases de datos

II. Diseño conceptual de BD

III. Diseño de BD relacionales

IV. Sistemas de bases de datos

Módulo I 2

Modulo I. Introducción a los sistemas de BD. 1


Bases de datos

Módulo I. Objetivos
Proporcionar una visión global de la naturaleza y las ventajas de
los sistemas de bases de datos, incidiendo especialmente en la
independencia lógica y física de datos
Presentar las funciones de los SGBD, su estructura y
funcionamiento y la arquitectura de tres niveles
Identificar los distintos tipos de usuarios según su forma de
interactuar con el sistema
Introducir las herramientas conceptuales para el modelado de
datos y presentar una clasificación de los modelos de datos más
utilizados
Conocer las distintas fases de modelado en el diseño de bases de
datos y su situación en el ciclo de vida de una aplicación

Módulo I. Temario
Módulo Nº Temario teórico
Presentación
I 1 Conceptos fundamentales de BD
2 Sistemas gestores de BD
3 Modelos de datos
II 4 El modelo entidad/relación
III 5 El modelo relacional
6 Lenguajes relacionales
7 Diseño lógico de BD relacionales
IV 8 Construcción de aplicaciones con BD
9 El entorno de los sistemas de BD
10 Otros modelos, sistemas y aplicaciones
de bases de datos
Módulo I 4

Modulo I. Introducción a los sistemas de BD. 2


Bases de datos

Módulo I. Bibliografía
BÁSICA:
“Fundamentos de Sistemas de Bases de Datos”. Elmasri, R. y
Navathe, S. B. Addison-Wesley, 2007 (Quinta Edición).
“Tecnología y diseño de bases de datos”. M. Piattini, E. Marcos,
C. Calero, B. Vela. Ed. Ra-Ma, 2006 (Primera Edición).

COMPLEMENTARIA:
“Introducción a los sistemas de bases de datos”. C. J. Date.
Addison-Wesley Iberoamericana, 2006 (Séptima Edición)
“Fundamentos de Bases de Datos”. A. Silberschatz, H. F. Korth
y S. Sudarshan. Mc Graw-Hill, 2006 (Quinta Edición).

Módulo I 5

Universidad de Extremadura
Escuela Politécnica
Dpto. de Ingeniería de Sistemas Informáticos y Telemáticos
Área de Lenguajes y Sistemas Informáticos

Conceptos fundamentales
de bases de datos
Módulo I. Tema 1

Miryam Salas Sánchez

Modulo I. Introducción a los sistemas de BD. 3


Bases de datos

Tema 1. Conceptos fundamentales de BD

1. Introducción. De los ficheros tradicionales


a las bases de datos
2. Bases de datos, sistemas de bases de
datos, sistema gestor de bases de datos
3. Ventajas e inconvenientes de los
sistemas de bases de datos
4. Independencia lógica y física de datos

Módulo I. Tema 1 7

Introducción

• Las bases de datos son imprescindibles hoy en


día
• Cada día interactuamos sin saberlo con sistemas
de bases de datos
– Matriculación
– Consultas en biblioteca
– Operaciones bancarias
– Reservas de tren, hotel, avión
– Compras por internet ...

Módulo I. Tema 1 8

Modulo I. Introducción a los sistemas de BD. 4


Bases de datos

Introducción
DE LOS FICHEROS TRADICIONALES A LAS BD

Datos integrados Aparición de ficheros Sistemas de gestión


como constantes en como colección de de ficheros
los programas datos homogénea integrados en los SO

Ficheros asociados Diferenciación entre


a los programas estructura lógica y física

Todavía gran dependencia entre datos y programas


y de ambos con respecto a la máquina
En las aplicaciones existe una gran cantidad de
ficheros con información duplicada, redundante y
no integrada
Módulo I. Tema 1 9

Introducción

CENTROS NOMINAS SECRETARIA

PROFESOR DESPACHOS PROFESOR CATEGORIAS PROFESOR ALUMNOS

Necesidad de compartición de datos y control centralizado de los datos

CENTROS NOMINAS SECRETARIA

Sistema centralizado

DESPACHOS PROFESOR CATEGORIAS ALUMNOS

Módulo I. Tema 1 10

Modulo I. Introducción a los sistemas de BD. 5


Bases de datos

Introducción
• Necesidad de diferenciación entre la representación de los
datos orientada hacia el problema (estructura lógica) y la
representación de los datos orientada hacia la máquina
(estructura física)
• Necesidad de las organizaciones de tener datos fiables y
correctos y de disponer de una representación de los
mismos
• Nuevos requerimientos de concurrencia, seguridad,
fiabilidad, mayor rendimiento, etc

SISTEMAS GESTORES DE BASES DE DATOS

Años 60-70 Modelos de datos

Módulo I. Tema 1 11

Tema 1. Conceptos fundamentales de BD

1. Introducción. De los ficheros tradicionales a


las bases de datos
2. Bases de datos, sistemas de bases de datos,
sistema gestor de bases de datos
3. Ventajas e inconvenientes de los sistemas de
bases de datos
4. Independencia lógica y física de datos

Módulo I. Tema 1 12

Modulo I. Introducción a los sistemas de BD. 6


Bases de datos

BD, SGBD y SBD

• ¿Qué es una base de datos (BD)?


Colección de datos relacionados
Representan aspectos de parte del mundo real
(minimundo o universo de discurso)
Cada dato almacenado tiene un significado
concreto
La información almacenada sirve para un
propósito específico

Módulo I. Tema 1 13

BD, SGBD y SBD

• ¿Qué es un sistema gestor de


bases de datos (SGBD)?
Software que permite a los usuarios crear,
mantener y acceder a una base de datos.
Software que proporciona el interfaz entre
los datos almacenados en la base de datos
y las operaciones realizadas por los
usuarios y los programas de aplicación.

Módulo I. Tema 1 14

Modulo I. Introducción a los sistemas de BD. 7


Bases de datos

BD, SGBD y SBD

• ¿Qué es un sistema de bases de datos


(SBD)?
La base de datos + el software que gestiona los
datos
La base de datos junto con los detalles que
permiten interpretar los datos almacenados

• Objetivo de un SBD
Proporcionar a la organización medios para la
gestión y el control centralizado de los datos

Módulo I. Tema 1 15

BD, SGBD y SBD


Usuarios /Programadores

SISTEMA DE
Queries/Programas de aplicación
BASE DE DATOS

S.G.B.D. Software para procesar


Queries/Programas de aplicación

Software para acceso


a los datos almacenados

Definición de la Datos
Base de datos Almacenados
(Catálogo)

Módulo I. Tema 1 16

Modulo I. Introducción a los sistemas de BD. 8


Bases de datos

Ventajas de los sistemas de BD

• Su naturaleza autodescriptiva (diccionario)


• Independencia entre programas y datos
• Soporte de múltiples vistas de usuario
• Control de redundancias y eliminación de
inconsistencias
• Compartición de datos y procesamiento de
transacciones multiusuario
• Se garantiza la seguridad de los datos
• Se garantiza la integridad de los datos
Módulo I. Tema 1 17

Otras ventajas

• Potencial para imponer normas o estándares


• Menor tiempo de creación de aplicaciones
• Flexibilidad
• Disponibilidad de información actualizada
• Optimización de recursos

Módulo I. Tema 1 18

Modulo I. Introducción a los sistemas de BD. 9


Bases de datos

Inconvenientes de los SBD


Hablando de grandes sistemas de BD:
– Instalación costosa (hw y sw)
– Necesidad de personal especializado
– Implantación larga y difícil
– Falta de rentabilidad a corto plazo
– Consumo de recursos para realizar funciones

En algunos casos puede no ser


rentable usar un SGBD

Módulo I. Tema 1 19

Inconvenientes de los SBD

A pesar de las ventajas, ¿cuándo puede no


interesar el uso de un SGBD?
– Si la BD y las aplicaciones que la usarán son
simples, bien definidas y no se espera que
cambien
– Si tenemos unos requerimientos en coste y en
tiempo de respuesta que no se satisfacen con un
SGBD, en parte por los recursos que consume
– Si no se necesita acceso concurrente a los datos

Módulo I. Tema 1 20

Modulo I. Introducción a los sistemas de BD. 10


Bases de datos

Independencia de datos
Separación entre programas de aplicación y datos almacenados

Los cambios en los procesos no obligan a modificar el


diseño de la base de datos
Los cambios en la base de datos (lógicos o físicos) no
obligan a alterar los programas
– Independencia física: puede modificarse la forma de
almacenamiento y acceso a los datos sin que afecte a
las aplicaciones que los usan
– Independencia Lógica: puede modificarse la estructura
de los datos sin que ello afecte a las aplicaciones que
los usan

Módulo I. Tema 1 21

Independencia de datos
¿Cómo se consigue la independencia?

ABSTRACIÓN DE DATOS
Hay que realizar en sucesivas fases el camino que va
desde la percepción que la organización y los usuarios
tienen de los datos que hay que almacenar, hasta el
almacenamiento puramente físico de los mismos

En los SI tradicionales se usan dos niveles distintos para


representar los datos: lógico (vista del usuario) y físico
Los sistemas de bases de datos proponen un nuevo nivel
intermedio de abstracción: el conceptual ( o lógico global)

Módulo I. Tema 1 22

Modulo I. Introducción a los sistemas de BD. 11


Bases de datos

Abstracción de datos
Usuarios finales

Estructura
lógica de usuario
VISTA
EXTERNA
... VISTA
EXTERNA
NIVEL
EXTERNO

Estructura NIVEL
lógica global ESQUEMA CONCEPTUAL CONCEPTUAL

Estructura física NIVEL


ESQUEMA INTERNO
INTERNO

BD almacenada

Módulo I. Tema 1 23

Universidad de Extremadura
Escuela Politécnica
Dpto. de Ingeniería de Sistemas Informáticos y Telemáticos
Área de Lenguajes y Sistemas Informáticos

Sistemas gestores de
bases de datos
Módulo I. Tema 2

Miryam Salas Sánchez

24

Modulo I. Introducción a los sistemas de BD. 12


Bases de datos

Tema 2. Sistemas gestores de BD

1. Introducción
2. Facilidades ofrecidas por un SGBD
3. Tipos de usuarios de un SGBD
4. Estructura general y funcionamiento de un
SGBD
5. Clasificación de los SGBD
6. La arquitectura de tres niveles

Módulo I. Tema 2 25

Introducción
SGBD: sistema software de propósito general que
facilita los procesos de definición, construcción y
manipulación de los datos de la BD garantizando
su seguridad

• Definición: especificación de los tipos de datos, estructuras y


restricciones para los datos que se van a almacenar en la BD
• Construcción: el proceso de almacenar los datos concretos
sobre algún medio de almacenamiento controlado por el SGBD
• Manipulación: incluye funciones tales como consultar la base
de datos, actualizarla y generar informes a partir de los datos

Módulo I. Tema 2 26

Modulo I. Introducción a los sistemas de BD. 13


Bases de datos

Facilidades ofrecidas por un SGBD


• Proporciona el interfaz entre los datos almacenados y
los programas de aplicación o las consultas hechas al
sistema, facilitando
– Lenguaje de definición de datos (LDD)
– Lenguaje de manipulación de datos (LMD)

• Realiza el control de la seguridad e integridad


• Fiabilidad ante fallos hw y sw y proporciona medios
para llevar a cabo copias de seguridad y recuperación
• Garantiza la consistencia de los datos compartidos por
múltiples usuarios mediante el control de concurrencia
• Almacenamiento seguro y eficiente de los datos
interactuando con el gestor de ficheros del SO
Módulo I. Tema 2 27

Tipos de usuarios de un SGBD


• Usuarios informáticos
– Administradores Se ocupa de la gestión y control centralizado
del SBD, incluyendo datos y programas y en
especial de la confidencialidad, disponibilidad e
– Diseñadores integridad de los datos
– Analistas y programadores

• Usuarios finales
– Simples (usuarios de aplicaciones)
– Ocasionales
– Avanzados o especializados

• Otros (Constructores de SGBD, constructores de


herramientas, operadores...)

Módulo I. Tema 2 28

Modulo I. Introducción a los sistemas de BD. 14


Bases de datos

Estructura y funcionamiento de un SGBD


Administrador Usuarios casuales Programadores Usuarios
Diseñador aplicaciones simples

Sentencias Comandos Consulta Programas


LDD privilegiados interactiva de aplicación

Compilador Compilador Compilador de


Precompilador
LDD de consultas lenguaje host

Optimizador Compilador Código de


de consultas LMD transacciones compilado

Comandos del administrador,


consultas y transacciones
Gestor
Procesador de BD
Catálogo/ de datos
en tiempo de ejecución
Diccionario Subsistemas de control almacenados
de datos de concurrencia,
copia de seguridad
y recuperación
Base de datos almacenada Entrada/salida de la base de datos

Módulo I. Tema 2 29

Estructura y funcionamiento de un SGBD

ESTRUCTURAS DE DATOS UTILIDADES DE AYUDA AL ABD


NECESARIAS
- Ficheros de datos e índices - Carga
- Catálogo o diccionario - Copia de seguridad
- Ficheros de control - Reorganizaciones de ficheros
- Ficheros de log (diario) - Creación de esquemas
- Control de rendimiento

• Otras herramientas relacionadas con SGBD


– Herramientas CASE de diseño de BD
– Entornos de desarrollo de aplicaciones
– Programa de control de comunicaciones
Módulo I. Tema 2 30

Modulo I. Introducción a los sistemas de BD. 15


Bases de datos

Clasificación de los SGBD


• Según el modelo de datos en el que se basa
– Relacional
– Orientado a objetos
– Objeto-relacional
– Jerárquico
– En red
– XML
• Según el número de usuarios soportado
– Monousuario
– Multiusuario
• Según el número de sitios
– Centralizado
– Distribuido (homogéneo, federado…)
• Otras clasificaciones (coste, métodos de almacenamiento,
de propósito especial o general, etc.)
Módulo I. Tema 2 31

La arquitectura de tres niveles

• También arquitectura de tres esquemas o


arquitectura ANSI/SPARC
• Objetivo: separar las aplicaciones del usuario y
la base de datos física
• Niveles incluidos
– Externo (incluye varios esquemas* externos)
– Conceptual (con un esquema* conceptual asociado)
– Interno (con un esquema* interno asociado)

* Los esquemas no son más que descripciones de los datos


Módulo I. Tema 2 32

Modulo I. Introducción a los sistemas de BD. 16


Bases de datos

La arquitectura de tres niveles


Usuarios finales

VISTA
EXTERNA
... VISTA
EXTERNA
NIVEL
EXTERNO
correspondencia
externo/conceptual
NIVEL
ESQUEMA CONCEPTUAL CONCEPTUAL
correspondencia
conceptual/interno
NIVEL
ESQUEMA INTERNO
INTERNO

BD almacenada

Módulo I. Tema 2 33

La arquitectura de tres niveles

• El esquema interno describe la estructura física


de almacenamiento de la BD (detalles de
almacenamiento y caminos de acceso)
• El esquema conceptual describe qué datos
deben almacenarse, las relaciones entre ellos y
sus restricciones. Es independiente de la máquina
y de la visión de cada grupo de usuarios particular
• El esquema externo describe cada visión
particular que tiene un grupo de usuarios de la
BD. Habrá tantos esquemas externos como
visiones diferentes haya.

Módulo I. Tema 2 34

Modulo I. Introducción a los sistemas de BD. 17


Bases de datos

La arquitectura de tres niveles


Usuarios finales

VISTA
EXTERNA
... VISTA
EXTERNA
NIVEL
EXTERNO
INDEPENDENCIA
LÓGICA
NIVEL
ESQUEMA CONCEPTUAL CONCEPTUAL
INDEPENDENCIA
FÍSICA
NIVEL
ESQUEMA INTERNO
INTERNO

BD almacenada

Módulo I. Tema 2 35

La arquitectura de tres niveles

Objetivo de la arquitectura de tres niveles


Conseguir que el esquema conceptual sea
una descripción estable de los datos de la
organización e independiente de las vistas y
de la forma de almacenamiento de los
datos.

Módulo I. Tema 2 36

Modulo I. Introducción a los sistemas de BD. 18


Bases de datos

La arquitectura de tres niveles


Nivel
Visión NÓMINAS Visión CENTRO externo
PROFESOR PROFESOR
DNI NSS Nombre Sueldo DNI Nombre Departamento Puesto Despacho

PROFESOR
Nivel
DNI NSS Nombre Departamento Cargo Salario Despacho conceptual

-Especificación de cada tipo de dato en el almacenamiento físico


-Métodos de acceso: índice hashing sobre DNI, índice hashing sobre
Nivel
NSS, índice arbóreo sobre Nombre interno
- Especificación sobre la asignación de espacio de almacenamiento

Módulo I. Tema 2 37

Universidad de Extremadura
Escuela Politécnica
Dpto. de Ingeniería de Sistemas Informáticos y Telemáticos
Área de Lenguajes y Sistemas Informáticos

Modelos de datos

Módulo I. Tema 3

Miryam Salas Sánchez

38

Modulo I. Introducción a los sistemas de BD. 19


Bases de datos

Tema 3. Modelos de datos

1. Introducción
2. Definición de modelo de datos
3. Clasificación de los modelos de datos
4. Los modelos de datos en el diseño de
bases de datos

Módulo I. Tema 3 39

Introducción
• Hay que distinguir entre
– la descripción de la base de datos
– la base de datos propiamente dicha

Minimundo ABSTRACCIÓN ESQUEMA

MODELO DE DATOS

Instrumento que se aplica a los datos del mundo real para obtener el esquema

Módulo I. Tema 3 40

Modulo I. Introducción a los sistemas de BD. 20


Bases de datos

Definición de modelo de datos

Conjunto de herramientas conceptuales útiles


para describir los datos, las relaciones entre ellos,
la semántica asociada a los datos y las
operaciones que pueden hacerse sobre ellos

Objetos
Asociaciones entre objetos
ESTÁTICA Propiedades o características de los objetos
Dominios sobre los que se definen las propiedades
Restricciones semánticas

DINÁMICA Operaciones básicas

Módulo I. Tema 3 41

Definición de modelo de datos


DESPACHO
EJEMPLO
Nº Pabellón Capacidad max.

PROFESOR
DNI NSS Nombre Departamento Cargo Salario Despacho

Objetos: DESPACHO, PROFESOR


Asociación: Un profesor tiene asignado un despacho
Propiedades del objeto DESPACHO: nº, pabellón y capacidad máx.
Dominio de la propiedad capacidad máx.: numérico entre 1 y 4
Ejemplos de operaciones:
- añadir un nuevo profesor, borrar un profesor, actualizar su salario,
consultar a qué departamento pertenece
- añadir las propiedades fecha de nacimiento y estado civil al objeto
PROFESOR
Módulo I. Tema 3 42

Modulo I. Introducción a los sistemas de BD. 21


Bases de datos

Definición de modelo de datos


Restricciones semánticas = de integridad
ciertas reglas que deben cumplir los elementos que
queremos representar del mundo real
SEMÁNTICA
Significado de los datos, todo lo que conocemos sobre ellos
INTEGRIDAD
Corrección de los datos y su consistencia respecto al mundo
real del cual proceden
Ejemplos de restricciones semánticas:
- un NSS no se puede repetir para dos DNI distintos
- el despacho que tiene asignado un profesor debe existir en
DESPACHO
- un despacho de capacidad máxima n no puede estar asignado a
más de n profesores a la vez

Módulo I. Tema 3 43

Clasificación de los modelos de datos

• De alto nivel o lógicos


Se usan para la construcción de los esquemas
externos y conceptual
Conceptuales o de diseño
Convencionales o de representación

• De bajo nivel o físicos


Se usan para la construcción del esquema interno
o físico

Módulo I. Tema 3 44

Modulo I. Introducción a los sistemas de BD. 22


Bases de datos

Clasificación de los modelos de datos

CONCEPTUALES o CONVENCIONALES o
DE DISEÑO DE REPRESENTACIÓN
-No suelen estar implementados - Implementados en SGBD
en SGBD comerciales
- Independientes del SGBD - Dependen del SGBD
- Mayor nivel de abstracción - Más próximos al ordenador
- Mayor capacidad semántica - Más enfocados a la implementación
- Muy enfocados al diseño de alto - Enfocados al diseño de alto nivel –
nivel – sirven de interfaz sirven de Interfaz informático/sistema
usuario/informático

¡¡Ambos tipos se usan para el diseño del esquema


conceptual pero en dos aproximaciones diferentes!!

Módulo I. Tema 3 45

MD conceptuales o de diseño
• No nos aportan información sobre qué tipos de
estructuras se utilizarán para almacenar los datos,
qué tipos de operaciones pueden realizarse sobre
los mismos, etc.
• Estos modelos no pueden implementarse
directamente en los sistemas comerciales
conocidos, deben transformarse previamente en un
modelo de representación.
DNI
Nº NSS
• Ejemplo pabellón
1:N
nombre
capacidad departamento...

modelo E/R DESPACHO asignado a PROFESOR

Otros:
modelos binario, semántico de datos, infológico, UML…
Módulo I. Tema 3 46

Modulo I. Introducción a los sistemas de BD. 23


Bases de datos

MD convencionales o de representación
• Pueden implementarse en sistemas comerciales ya
que aportan las estructuras necesarias para
almacenar los datos y proporcionan tipos de
operaciones y forma de llevarlas a cabo
• Diferentes modelos llevan asociados diferentes
lenguajes para la definición de las estructuras de
datos y la manipulación de los mismos
• Ejemplo : Modelo Relacional Otros:
DESPACHO modelo jerárquico,
Nº Pabellón Capacidad max. modelo en red

PROFESOR
DNI NSS Nombre Departamento Cargo Salario Despacho

Módulo I. Tema 3 47

MD convencionales o de representación
Los modelos orientados a objeto se consideran
modelos de datos de representación pero mucho más
próximos a los modelos conceptuales o de diseño

SGBD según el modelo:


- Relacional: Oracle, DB2, Ingres, Informix, PostgreSQL,
MySQL, ACCESS, etc.
- Orientado a objetos: ObjectStore, O2
- Jerárquico: IMS, MARK IV y SYSTEM 2000
- En red: DMS 1100, IDS II, DBMS 10, TOTAL
- XML: Tamino, eXist, BaseX, Sedna

La mayoría de los SGBD actuales son relacionales


extendidos (es decir, son relacionales pero incluyen
funcionalidades de orientación a objetos, XML, etc.)
48

Modulo I. Introducción a los sistemas de BD. 24


Bases de datos

Los MD en el diseño de BD
Minimundo

REQUERIMIENTOS

Funcionales Datos

ANÁLISIS FUNCIONAL DISEÑO CONCEPTUAL

Especificación de Esquema conceptual


procesos modelo E/R
Independiente del S.G.B.D
DISEÑO LÓGICO
Dependiente del S.G.B.D

Esquema conceptual (lógico)


adaptado al S.G.B.D.

DISEÑO DE PROGRAMAS
DE APLICACIÓN
DISEÑO FÍSICO

IMPLEMENTACIÓN Esquema interno


PROGRAMAS

Programas de aplicación
Módulo I. Tema 3 49

Modulo I. Introducción a los sistemas de BD. 25

Potrebbero piacerti anche