You are on page 1of 47

Carrera de Computacin e Informtica

Modelado de base de datos Semana 4


Profesor: Ing. Enrique Mancilla Ramrez mancilla.enrique@pucp.edu.pe

Modelado de bases de datos


HERRAMIENTAS CASE (DIAGRAMAS Y DISEO) DATA BASE MANAGEMENT SYSTEMS (DBMS)

Modelado de bases de datos


CLASIFICACION DE LOS MODELOS DE DATOS: Modelos de Datos Conceptuales Modelos de Datos Lgicos Modelos de Datos Fsicos

Modelado de bases de datos


Modelos de Datos Conceptuales

Se usan fundamentalmente durante la etapa de Anlisis de un problema dado y estn orientados a representar los elementos que intervienen en ese problema y sus relaciones. Basados en registros

Jerrquico: datos en registros, relacionados con apuntadores y organizados como colecciones de rboles Redes: datos en registros relacionados por apuntadores y organizados en grficas arbitrarias Relacional: datos en tablas relacionados por el contenido de ciertas columnas

El ejemplo ms tpico es el Modelo Entidad-Relacin

Modelado de bases de datos

Modelo Conceptual

Cualidades que debe poseer:

Expresividad (rico en conceptos->posibilita

una

representacin ms extensa de la realidad) Simplicidad (fciles de entender) Minimalidad (c/concepto tiene significado distinto. Ningn concepto puede expresarse mediante otros conceptos) Formalidad (c/concepto tiene una sola interpretacin, precisa y bien definida)

Modelado de bases de datos

Diseo Conceptual (representacin abstracta)

Propsito: describir el contenido de informacin

de la BD , ms que las estructuras de almacenamiento Esquema Conceptual: descripcin de alto nivel de la estructura de la BD, independiente del DBMS que la manipula. Modelo Conceptual: lenguaje usado para describir esquemas conceptuales Especificacin de Req + Diseo Conceptual Esquema Conceptual de la BD

Modelado de bases de datos


Modelos de Datos Lgicos:

Son orientados a las operaciones ms que a la descripcin de una realidad. Usualmente estn implementados en algn Manejador de Base de Datos El ejemplo ms tpico es el Modelo Relacional, que cuenta con la particularidad de contar tambin con buenas caractersticas conceptuales (Normalizacin de bases de datos)

Modelado de bases de datos

Diseo Lgico (representacin en computadora)

Esquema Conceptual + Diseo Lgico Esquema Lgico de la BD Esquema Lgico: descripcin de la estructura de la BD que puede procesar un DBMS Modelo Lgico: lenguaje usado para especificar

esquemas lgicos. Los mas usados: relacional, de redes, jerrquicos Depende de la clase de modelo de datos usado por el DBMS, pero no del DBMS usado (se efecta de igual forma para todos los DBMS relacionales, porque todos usan el modelo relacional)

Modelado de bases de datos


Modelos de Datos Fsicos Son estructuras de datos a bajo nivel implementadas dentro del propio manejador Ejemplos tpicos de estas estructuras son los rboles B+, las estructuras de Hash, etc.

Modelado de bases de datos

Diseo Fsico

Hay una retroalimentacin entre el diseo fsico y


el lgico (decisiones tomadas durante el diseo fsico para mejorar el rendimiento pueden afectar el esquema lgico)

Completo el diseo fsico, los esquemas lgico y


fsico se expresan usando el lenguaje de definicin de datos del DBMS nace la BD operacional

Modelado de bases de datos

Diseo Fsico (determinar estructuras de almacenamiento fsico) Describe las estructuras de almacenamiento y mtodos usados para tener acceso efectivo a los datos. Esquema Lgico + Diseo Fsico Esquema Fsico Esquema Fsico: descripcin de la implantacin de una BD en memoria secundaria. Se adapta a un DBMS especfico

Modelado de bases de datos

Mecanismos de abstraccin en el Diseo Conceptual

Clasificacin Agregacin Generalizacin

Modelado de bases de datos

Abstraccin: proceso mental aplicado al seleccionar algunas caractersticas de un conj. de objetos y excluir otras Para ello, el modelamiento se basa en los diagramas entidad - relacin

Modelado de bases de datos


Modelo: es un lenguaje orientado a describir una Base de Datos Tpicamente un modelo de datos permite describir: Las estructuras de datos de la base: El tipo de los datos que hay en la base y la forma en que se relacionan. Las restricciones de integridad: Un conjunto de condiciones que deben cumplir los datos para reflejar correctamente la realidad deseada. Operaciones de manipulacin de los datos: tpicamente, agregado, borrado, modificacin y recuperacin de los datos de la base.

Modelado de bases de datos


Un modelo de datos es un lenguaje que, tpicamente, tiene dos sublenguajes: Un Lenguaje de Definicin de Datos o DDL (Data definition Language), orientado a describir de una forma abstracta las estructuras de datos y las restricciones de integridad. Un Lenguaje de Manipulacin de Datos o DML (Data Manipulation Language), orientado a describir las operaciones de manipulacin de los datos. A la parte del DML orientada a la recuperacin de datos, usualmente se le llama Lenguaje de Consulta o QL (Query Language).

Mas acerca de los diagrama Entidad - Relacin

Modelo de datos conceptual de alto nivel Propuesto por Peter P. Chen en 1976

Extensiones/aportaciones de muchos otros autores No existe un nico MER, sino una FAMILIA DE MODELOS

Es un modelo semntico, surge por la necesidad de tener un modelo ms cercano al usuario Describe el mundo real como un conjunto de ENTIDADES y de RELACIONES entre ellas Gran difusin

Muy extendido en los mtodos de diseo de bases de datos Soportado por herramientas software de diseo (CASE)
16

Esquema conceptual

Descripcin concisa de los requisitos de informacin de los usuarios

Descripciones detalladas de

TIPOS DE DATOS RELACIONES ENTRE DATOS RESTRICCIONES que los DATOS deben cumplir

Sin detalles de implementacin

Ms fcil de entender Comunicacin con el usuario no tcnico


17

Recordar: Conceptos bsicos del modelo

Entidad ( entity ) Atributo ( attribute ) Dominio ( values set ) Relacin ( relationship )

18

RECORDAR: ENTIDAD ES

Cosa u objeto del mundo real con existencia propia y distinguible del resto
Objeto con existencia...

fsica o real (una persona, un libro, un empleado) abstracta o conceptual (una asignatura, un viaje)

Persona, lugar, cosa, concepto o suceso, real o abstracto, de inters para la empresa (ANSI, 1977)
19

RECORDAR : ATRIBUTO ES

Propiedad o caracterstica de una entidad Una entidad particular es descrita por los valores de sus atributos:
p1 titulo = El alquimista impaciente genero = Thriller nacionalidad = Espaa aoestreno = 2002 ... dni = 87654321 nss = 1122334455 nombre = Cristina Aliaga Gil nacionalidad = Espaa ...

e1

20

TIPO DE ENTIDAD (entity set)

Define un conjunto de entidades que poseen los mismos atributos


PELICULA: titulo, genero, nacionalidad, aoestreno,numcopias EMPLEADO: dni, nss, nombre, fechanacim, direccion, telefono, altura, nacionalidad, edad

Notacin
EMPLEADO CLIENTE PELICULA LOCAL VIDEOCLUB DIRECTOR ACTOR
21

Instancia de un tipo de entidad

Tambin...

PELICULA titulo = El seor de los anillos genero = Fantasa nacionalidad = EEUU aoestreno = 2001 ... titulo = Amelie genero = Comedia nacionalidad = Francia aoestreno = 2001 ...
22

Ocurrencia Realizacin Ejemplar Entidad concreta o


individual

p2

p3

titulo = Amores perros genero = Drama nacionalidad = Mjico aoestreno = 1999 ...

p4

Intensin y Extensin

Un tipo de entidad describe el esquema o intensin para un conjunto de entidades que poseen la misma estructura
EMPLEADO: dni, nss, nombre, direccin, telefono, altura, fechanacim, nacionalidad, edad

Las instancias del tipo de entidad se agrupan en un conjunto de entidades o extensin

23

Tipos de atributos

Simples o Compuestos Almacenados o Derivados Monovalorados o Multivalorados Opcionales

24

Atributos Simples o Compuestos

Atributos compuestos
fechanacim
dia mes ao

Pueden dividirse en otros con significado propio


direccion
calle ciudad provincia codpostal

Valor compuesto = concatenacin de valores de


componentes

Atributos simples

No divisibles. Atmicos

genero
25

Atributos Almacenados o Derivados

Atributos derivados

Valor calculado a partir de otra informacin ya

existente (atributos, entidades relacionadas) Son informacin redundante... edad [de EMPLEADO], clculo a partir de fechanacim

atributo derivado del valor de otro atributo

numcopias [de una PELICULA], cuenta del nmero de

entidades COPIA relacionadas con cada pelcula concreta atributo derivado de entidades relacionadas

Atributos almacenados
fechanacim [de cada EMPLEADO] nacionalidad [de una PELICULA]
26

Atributos Monovalorados o Multivalorados

Atributos monovalorados (monovaluados)

slo un valor para cada entidad

fechanacim [de un EMPLEADO particular] aoestreno [de cada PELICULA concreta]

Atributos multivalorados (multivaluados)

ms de un valor para la misma entidad

nacionalidad [ PELICULA coproducida por varios pases ] telefono [ EMPLEADO con varios telfonos de contacto] pueden tener lmites superior e inferior del nmero de valores por entidad nacionalidad (1-2) 27 telefono (0-3)

Atributos Opcionales (nulos)

El nulo (null value) es usado cuando...

Se desconoce el valor de un atributo para cierta


entidad

El valor existe pero falta

No se sabe si el valor existe o no


telefono [de un EMPLEADO]

altura [de un EMPLEADO]

La entidad no tiene ningn valor aplicable para


el atributo:
fechaalquiler [PELICULA slo en vdeo-venta (no alquiler)]
28

Notacin para atributos


[EN2002]
ciudad calle fechanacim nombre nss dni direccin
(0,3)

provincia

codpostal
telefono
(0,1) (1,2)

EMPLEADO

altura

edad

nacionalidad

29

Atributos Clave

Atributo con valor distinto para cada instancia de un tipo de entidad


dni en EMPLEADO

Una clave identifica de forma nica cada entidad concreta atributo identificador Notacin
EMPLEADO dni

[EN2002]
30

Atributos Clave (ii)

Una clave puede estar formada por varios atributos clave compuesta
instancia

Combinacin de valores distinta para cada

Una clave compuesta debe ser mnima

(nombre, fechanacim) en el tipo de entidad EMPLEADO

Un tipo de entidad puede tener ms de una clave claves candidatas


Claves o Identificadores Candidatos de EMPLEADO:

dni nss (nombre, fechanacim)


31

Atributos Clave (iii)

Atributo identificador principal (IP)

Clave Principal Elegido (por el diseador) de entre los

identificadores candidatos (IC), para ser el medio principal de identificacin de las instancias del tipo de entidad dni en EMPLEADO

Atributos identificadores alternativos (IA)

Claves Alternativas El resto de ICs nss y (nombre, fechanacim) en EMPLEADO

32

Notacin para atributos clave


[EN2002]
calle fechanacim n-f ciudad provincia codpostal direccin EMPLEADO
(0,3) (0,1) (1,2)

telefono

altura

nombre

nss

IP

nacionalidad edad

dni

En el MER es obligatorio que todo tipo de entidad tenga un identificador


33

DOMINIO (values set)


Conjunto de valores Cada atributo simple est asociado a un dominio, que especifica sus valores vlidos
Atributo Dominio Descripcin Dominio cadenas de hasta 30 caracteres alfabticos nmeros reales entre 0 y 25 (metros) ...
nombre
telefono altura

nombre NOMBRES altura


... MEDIDAS ...

telefono TELEFONOS cadenas de hasta 9 caracteres numricos

No suele representarse, aunque una forma de hacerlo EMPLEADO sera:


[MPM1999]

NOMBRES
TELEFONOS MEDIDAS
34

RELACIN (relationship)

Tambin interrelacin Asociacin, vnculo o correspondencia entre instancias de entidades relacionadas de alguna manera en el mundo real

el director Alejandro Amenbar ha rodado la pelcula


Mar adentro el empleado 87654321 trabaja en el local de videoclub principal la pelcula El imperio contraataca es una continuacin de la pelcula La guerra de las galaxias
35

DIRECTOR

HA_RODADO
Instancia del tipo de relacin

PELICULA

Vacas
Tesis Belle Epoque Torrente Tierra Abre los ojos Los otros

J. Mdem
C. Saura F. Trueba S. Segura A. Amenbar

Tipo de Entidad: conjunto de instancias

Tipo de Relacin: conjunto de instancias


36

TIPO DE RELACIN (relationship set)

Estructura genrica o abstraccin del conjunto de relaciones existentes entre dos o ms tipos de entidad
un DIRECTOR ha rodado PELICULAs

Notacin
DIRECTOR

HA_RODADO

PELICULA

37

Grado de un tipo de relacin

Nmero de tipos de entidad que participan en el tipo de relacin

Binaria: grado 2 (el ms frecuente) Ternaria: grado 3 Reflexiva: (o recursiva): grado 1


ACTOR ACTUA_EN

PELICULA

CLIENTE CONTINUACION DE PELICULA

ALQUILA

PELICULA

LOCAL_VIDEOCLUB
38

Nombres de Rol (papel)

Todo tipo de entidad que participa en un tipo de relacin juega un papel especfico en la relacin
DIRECTOR
realizador HA_RODADO film PELICULA

Los nombres de rol se deben usar, sobre todo, en los tipos de relacin reflexivos, para evitar ambigedad
original VERSION_DE versin PELICULA
39

Restricciones estructurales sobre tipos de relacin

Limitan las posibles combinaciones de entidades que pueden participar en las relaciones Extradas de la situacin real que se modela
Una pelcula debe haber sido dirigida por uno y slo un director Un director ha dirigido al menos una pelcula y puede haber dirigido muchas

Clases de restricciones estructurales:

Razn de cardinalidad (o tipo de correspondencia) Razn de modalidad


40

Razn de Cardinalidad

Notacin [EN2002]

Nmero mximo de instancias de tipo de relacin en las que puede participar una misma instancia de tipo de entidad

la cardinalidad de HA_RODADO es 1 a N HA_RODADO es de tipo 1 a N etiqueta en la lnea que

DIRECTOR

Notacin

1
HA_RODADO

une entidad y relacin Ojo: da la sensacin de que se representa al revs

N
PELICULA

41

Razn de Cardinalidad (ii)

[EN2002]

Razones de cardinalidad ms comunes:

1:1 (uno a uno) 1:N (uno a muchos) M:N (muchos a muchos)


trabajador 1 EMPLEADO encargado 1 SUPERVISA sucursal N

ACTOR personaje M

TRABAJA_EN 1 lugar trabajo

ACTUA_EN
N film PELICULA
42

LOCAL_VIDEOCLUB

Modalidad

Mnimo de ocurrencias entre entidades

0:1 (Ocurre o no)


ACTOR personaje 1 ACTUA_EN 0 PELICULA

( Ocupado o no) ( Actor (es) actu en varias o ninguna pelcula)

43

Resumen
Principios de diseo del modelo de base de datos: Fidelidad Evitar redundancia Simple Escoger los elementos correctos Reconocer bien las reglas del negocio

Resumen

.Para ellos las tareas a realizar son las siguientes: Identificar las entidades. Identificar las relaciones. Identificar los atributos y asociarlos a entidades y relaciones. Determinar los dominios de los atributos. Determinar los identificadores. Determinar las jerarquas de generalizacin (si las hay). Dibujar el diagrama entidad-relacin. Revisar el esquema conceptual local con el usuario.

ACTIVIDAD PRACTICA
Revisin de la actividad N 3: Caso y revisin de la lectura enviada a sus correos

Fin de la clase