Sistemas de Bases de Datos I José Pedro Rabinovich [email protected].
-
Upload
paloma-pina -
Category
Documents
-
view
221 -
download
0
Transcript of Sistemas de Bases de Datos I José Pedro Rabinovich [email protected].
Sistemas de Bases de Datos I
José Pedro [email protected]
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 2
Diseño Conceptual – Intro.1
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 3
Diseño Conceptual – Intro.2
Que es la Modelización conceptual Primer etapa en diseño de una BD. Sub-etapas:
Estudio del problema real. Especificación usando un lenguaje de muy alto
nivel. Resultado:
Esquema Conceptual Lenguajes usados:
Modelos Conceptuales. Nosotros usaremos el MER (Modelo Entidad-Relación)
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 4
Diseño Conceptual – Intro.3
Que son los modelos conceptuales? Modelos de datos de muy alto nivel. En general se concentran en
estructuras. Tienen una representación gráfica
asociada. Permiten representar el “mundo real” de
forma abstracta.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 5
Diseño Conceptual – Intro.4
Que son los modelos conceptuales? El E. C. asociado a un problema debe
representar todos los aspectos del mismo.
No debe incluir ningún elemento asociado a la implementación del esquema, así como ningún elemento orientado a la performance de la futura BD.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 6
Diseño Conceptual Modelo Entidad Relación
1 Modelo Conceptual más usado. Propuesto por Chen en 1976. Existe una gran variedad de
“dialectos” y variantes del Modelo Entidad Relación.
Se utiliza fundamentalmente para la definición de datos.
Se base en representar objetos (entidades) y relaciones entre ellos.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 7
Diseño Conceptual Modelo Entidad Relación
2 Permite declarar gran cantidad de
restricciones tanto sobre relaciones como sobre conjuntos de entidaddes.
Tiene DDL gráfico, no tiene DML. Conceptos básicos:
Entidad : objeto de la realidad. (Ej.: Estudiantes, Cursos, Docentes)
Relación : asociación entre objetos (Ej.: Cursa, Dicta)
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 8
Diseño Conceptual Modelo Entidad Relación
3Entidad: Una “cosa” de la realidad. Objeto con
existencia física o conceptual (persona, auto, casa, compañía, curso, puesto de trabajo).
Se representan gráficamente con un rectángulo, con el nombre.
Los nombres de entidad no pueden repetirse.
Empleado
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 9
Diseño Conceptual Modelo Entidad Relación
4
Atributos: Propiedades especificas de las
entidades (las describen).
CI
TeléfonoeMail
Fecha Nacimiento
Nombre
Empleado
Dirección
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 10
Diseño Conceptual Modelo Entidad Relación
5Tipos de Atributos: Atributos Compuestos
Se pueden dividir en componentes mas pequeños, que representan atributos másicos con su propio significado.
CI
TeléfonoeMail
Fecha Nacimiento
Nombre
Empleado
DirecciónCalleNumeroEsquina
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 11
Diseño Conceptual Modelo Entidad Relación
6Tipos de Atributos: Atributos Monovaluados o Monovalorados
Atributos con un solo valor para una entidad en particular. Por ej. CI
Atributos Multivaluados o Multivalorados Atributos que tienen un conjunto de valores Por
ej. Color de auto, teléfono. Los representamos con un asterizco.
CI
TeléfonoEmpleado
*
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 12
Diseño Conceptual Modelo Entidad Relación
7Atributos Clave de entidad: Atributo cuyo valor es distinto para cada
elemento de la entidad. Sirven para identificar de manera única
cada elemento de la entidad.
CI
TeléfonoeMail
Fecha Nacimiento
Nombre
Empleado
Dirección
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 13
Diseño Conceptual Modelo Entidad Relación
8
Dominios de los atributos. Conjunto de valores que puede tomar el
atributo. Especifica que valores es posible asignar
a un atributo. No se representan en los diagramas ER Por ejemplo el nombre de empleado es
una cadena de caracteres.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 14
Diseño Conceptual Modelo Entidad Relación
9Relaciones Una relación define un conjunto de
asociaciones entre entidades. Se representan gráficamente con un rombo
con el nombre. Cada relación tiene un nombre que la
describe. Cada ejemplar de vínculo de una relación R
es una asociación de entidades, donde la asociación incluye una y solo una entidad de cada tipo de entidades participante.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 15
Diseño Conceptual Modelo Entidad Relación 10
Relaciones Por ejemplo: Los empleados
pertenecen a departamentos.
Empleado Pertenece_A
DirecciónFecha nac
NombreCI
Departamento
Nombre
Numero
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 16
Diseño Conceptual Modelo Entidad Relación 11
RelacionesGrado de la relación: Es la cantidad entidades que
participan en la relación. En el ejemplo anterior el grado es 2. Llamaremos relaciones binarias a las
de grado 2 y ternarias a las de grado 3. (Por ahora nos centraremos en las binarias).
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 17
Diseño Conceptual Modelo Entidad Relación 12
RelacionesRestricciones sobre las relaciones: Distinguimos 2 tipos principales de
restricciones sobre relaciones: Cardinalidad Participación o totalidad.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 18
Diseño Conceptual Modelo Entidad Relación 13
Relaciones - Restricciones Cardinalidad 1:N
Especifica el numero de ejemplares de vínculos en los que puede participar una entidad en una relación.
Empleado Pertenece_A
Fecha nacNombre
CI
Departamento
Nombre
Numero
Dirección
N 1
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 19
Diseño Conceptual Modelo Entidad Relación 14
Relaciones - Restricciones Cardinalidad 1:N En el ejemplo tenemos que:
Cada departamento puede estar relacionado con muchos empleados N
Un empleado solo puede estar relacionado (pertenecer a) con un departamento 1
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 20
Diseño Conceptual Modelo Entidad Relación 15
Relaciones Papeles o Roles en las relaciones
Toda entidad que participe en una relación desempeña un papel específico en la misma.
En el ejemplo, para la relación PERTENECE_A EMPLEADO desempeña el rol de empleado o trabajador y DEPARTAMENTO el de patrón.
No son necesarios los roles en las relaciones en las que todas las entidades son diferentes.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 21
Diseño Conceptual Modelo Entidad Relación 15
Relaciones Papeles o Roles en las relaciones y
auto-relaciones. Cuando una entidad participa mas de
una vez en una relación desempeñando diferentes papeles. Debemos diferenciar los roles.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 22
Diseño Conceptual Modelo Entidad Relación 16
Relaciones Auto-relaciones (o relaciones
recursivas)
Empleado Supervisión
Fecha nacNombre
CI
1
N
Supervisado
Jefe
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 23
Diseño Conceptual Modelo Entidad Relación 17
Relaciones Restricción de cardinalidad 1:1
Empleado Dirige
Fecha nacNombre
CI
Departamento
Nombre
Numero
1 1
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 24
Diseño Conceptual Modelo Entidad Relación 18
Relaciones Restricción de cardinalidad N:M
Empleado Trabaja_en
Fecha nacNombre
CI
Proyecto
Nombre
Numero
N M
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 25
Diseño Conceptual Modelo Entidad Relación 19
Relaciones - Restricciones Participación o Totalidad
Especifica si la existencia de un ejemplar de entidad depende de que esté relacionada con otra entidad a través de la relación
Empleado Pertenece_A
Fecha nacNombre
CI
Departamento
Nombre
Numero
Dirección
N 1
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 26
Diseño Conceptual Modelo Entidad Relación 20
Relaciones - Restricciones Participación o Totalidad
En el ejemplo estamos representando en hecho de que todo empleado debe pertenecer a un departamento.
Se dice que la participación de empleado es TOTAL.
A veces recibe el nombre de “dependencia de existencia”.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 27
Diseño Conceptual Modelo Entidad Relación 21
Relaciones Atributos de Relaciones ¿Como represento la cantidad de
horas que un empleado dedica a un proyecto?
Empleado Trabaja_en
Fecha nacNombre
CI
Proyecto
Nombre
Numero
N M
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 28
Diseño Conceptual Modelo Entidad Relación 21
Relaciones Atributos de Relaciones ¿Es atributo del empleado? ¿Es atributo del proyecto?
Empleado Trabaja_en
Fecha nacNombre
CI
Proyecto
Nombre
Numero
N M
Horas
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 29
Diseño Conceptual Modelo Entidad Relación 22
Relaciones y atributos de relacionesEjercicio 1: Hay un conjunto de cines de los que se
conoce el nombre y la ciudad y se asume que la pareja nombre-ciudad identifica al cine. Existe también un conjunto de películas que se exhibe en los cines y de las que se conoce un código que la identifica y un nombre.
Una función, que se exhibe en un cine, queda determinada por su fecha y hora.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 30
Diseño Conceptual Modelo Entidad Relación 23
Relaciones y atributos de relacionesEjercicio 1 - solución:
Película Exhibe
NombreCod
Cine
Nombre
Ciudad
N M
Función
Fecha Hora
ID
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 31
Diseño Conceptual Modelo Entidad Relación 24
Ejercicio 2: Una empresa de construcción
realiza, a partir del diseño de sus proyectos, documentos de requerimientos de materiales. Todo requerimiento da origen a uno o mas pedidos de compras.
Modelar qué requerimientos originan qué pedidos de compras solicitando determinados materiales.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 32
Diseño Conceptual Modelo Entidad Relación 25
Ejercicio 2 – solución 1:
Materiales M-R-P Requerimientos? ?
Pedidos
?
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 33
Diseño Conceptual Modelo Entidad Relación 26Agregaciones Objetivos:
Representar asociaciones (Relaciones) entre elementos de Relaciones y otras Entidades.
Representar relaciones entre múltiples Entidades pero manteniendo relaciones binarias.
Constructor: Se “re interpreta” una relación como si
fuera una Entidad. La nueva Entidad se utiliza como cualquier
otra. Se represente enmarcando las 2 entidades
y la relación en cuestión.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 34
Diseño Conceptual Modelo Entidad Relación 27
Agregaciones Ejercicio 2 – solución 2:
Materiales M-R RequerimientosN N
Pedidos
N
M-R-P
N
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 35
Diseño Conceptual Modelo Entidad Relación 28
¿Cómo procedemos a aplicar el Modelo a una determinada realidad?
Identificar los objetos de nuestro problema.
Identificar las relaciones entre estos objetos.
Representar las propiedades que nos interesan de dichos objetos.
Determinar otras restricciones que deseamos imponer.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 36
Diseño Conceptual Modelo Entidad Relación 29
Ejercicio 3: Se desea guardar información sobre las
conferencias realizadas en una convención. Cada conferencia trata sobre uno o mas
temas. Cada conferencia es dictada por uno o mas
conferencistas, y tiene asociados uno o mas documentos.
Tales documentos son realizados por uno o mas autores, cada uno de los cuales pudo haber intervenido en mas de un documento.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 37
Diseño Conceptual Modelo Entidad Relación 30
Ejercicio 3
Solución 1
ConferencistaConferencia DictaN N
Trata
Tema
N
1
DocumentoN
1
Escrito_Por Autor
Tiene
N
N
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 38
Diseño Conceptual Modelo Entidad Relación 30
Ejercicio 3 Solución 2
ConferencistaDicta
1 N
Documento1
Escrito_Por
Tiene
Conferencia
Trata
TemaN
1
Autores
N N
N
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 39
Diseño Conceptual Modelo Entidad Relación 31
Ejercicio 4:Una empresa esta dividida en varios departamentos de
los que se conoce un nombre que los identifica.De los funcionarios se conoce su numero, nombre y
dirección. Si el funcionario es chofer, se conoce su nro. de libreta y # de accidentes que tuvo. Si es administrativo, los idiomas que habla. Si es técnico, las especialidades en las que puede trabajar.
La empresa tiene un cjto. de coches (conducidos por choferes) de los que se conoce matrícula y marca. A cualquier chofer se le puede asignar cualquier coche.
Además la empresa lleva adelante un conjunto de proyectos (identificados por un numero) en los que trabajan los empleados técnicos.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 40
Diseño Conceptual Modelo Entidad Relación 32
Especialización o categorización. Permiten representar
subagrupaciones de entidades. Se utiliza cuando dichas
subagrupaciones son significativas y es necesario representarlas en forma explícita por su importancia para la aplicación de base de datos.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 41
Diseño Conceptual Modelo Entidad Relación 33
Especialización o categorización.
Entidad
Subentidad1 Subentidad2
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 42
Diseño Conceptual Modelo Entidad Relación 34
Ejercicio 4Solución
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 43
Diseño Conceptual Modelo Entidad Relación 35
Entidad Débil.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 44
Diseño Conceptual Modelo Entidad Relación 36 Entidad Débil.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 45
Diseño Conceptual Modelo Entidad Relación 37 Entidad Débil.
21/04/23
Sistemas de Bs. de Ds. I 2do Año Jose Pedro
Rabinovich 46
Diseño Conceptual Modelo Entidad Relación 33
Especialización o categorización.
Funcionarios
choferes
Subentidad2
#fincNombre
direcciónConferencistaTrab
N 1
Nombre