trabajo sobre base de datos

42
IFD CARAPEGUA TRABAJO SOBRE BASE DE DATOS Alumno: Julio César Fernández R. Año 2013

Upload: julio-fernandez

Post on 26-May-2015

217 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Trabajo sobre base de datos

IFD CARAPEGUA

TRABAJO SOBRE BASE DE DATOS

Alumno: Julio César Fernández R.

Año 2013

Page 2: Trabajo sobre base de datos

Modelamiento de Datos

El modelo de datos, como abstracción del mini-mundo en estudio, es el enfoque utilizado para la representación de las entidades y sus características dentro de la base de datos, y puede ser dividido en tres grandes tipos:

Modelos de Datos

Clasificacion Básica

Page 3: Trabajo sobre base de datos

Modelamiento de Datos

El modelo de datos, como abstracción del mini-mundo en estudio, es el enfoque utilizado para la representación de las entidades y sus características dentro de la base de datos, y puede ser dividido en tres grandes tipos:

Modelos de Datos

Clasificacion Básica

Page 4: Trabajo sobre base de datos

MODELO DE DATOS

Nociones de Modelamiento

El objetivo es producir una descripción estructurada de la organización y del negocio del cliente, en detalle suficiente para permitir construir un sistema basado en éste.

Para esto, mínimamente se requiere:

Un conjunto de técnicas específicas y complementarias, adecuadas cada una para describir distintos aspectos del negocio/sistema.

Conocimiento, normas y estándares que aseguren la correcta descripción y posterior interpretación usando estas técnicas.

Page 5: Trabajo sobre base de datos

MODELO DE DATOSNOCIONES DE MODELAMIENTO

Modelamiento Entidad - Relación

Modela las cosas acerca de las cuales el negocio mantiene o debe mantener información, y las asociaciones existentes entre éstas.

Page 6: Trabajo sobre base de datos

MODELO DE DATOSNOCIONES DE MODELAMIENTO

Modelamiento Funcional

Modela lo que el negocio hace o hará en el futuro para alcanzar sus objetivos.

Page 7: Trabajo sobre base de datos

MODELO DE DATOSNOCIONES DE MODELAMIENTO

Diagramas de Flujo de Datos

Modela el flujo de información dentro y fuera del negocio y las transformaciones que ésta sufre en el proceso

Page 8: Trabajo sobre base de datos

MODELO DE DATOSNOCIONES DE MODELAMIENTO

Matrices de Cruce

Muestra las asociaciones entre elementos de distintas clases.

Ayuda al control de calidad y a completar los modelos.

Page 9: Trabajo sobre base de datos

MODELO DE DATOSNOCIONES DE MODELAMIENTO

Panorama General

Page 10: Trabajo sobre base de datos

MODELO DE DATOS

Modelo de Datos

Un modelo de datos se define como la combinación de tres componentes :

- Una colección de tipos de objetos de información, los cuales son las unidades básicas para construir cualquier base de datos.

- Una colección de reglas generales de integridad, las cuales limitan el conjunto de los tipos de objetos que pueden aparecer en forma legal en cualquier base de datos.

- Una colección de operadores, aplicables a los objetos para obtener información y para otros propósitos.

Page 11: Trabajo sobre base de datos

MODELO DE DATOS

– La descripción de la estructura de una base de datos, es el modelo de datos, una colección de herramientas conceptuales para describir datos, relaciones de datos, semánticas y restricciones de datos.

– Los principales objetivos del proceso de modelamiento es saber identificar cual es el problema y encontrar la forma de representarlo en un sistema. Esto significa saber de los datos, saber quienes van a usarlos y como van a usarlos.

Page 12: Trabajo sobre base de datos

MODELO DE DATOS

Page 13: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Modelo Entidad - Relación

El objetivo es identificar y representar las cosas de importancia para el funcionamiento del negocio (entidades), sus propiedades (atributos), y la forma en que estas cosas se relacionan entre sí (relaciones).

Este modelo se desarrolló para facilitar el diseño de las bases de datos (presentado por Chen en 1976).

La idea de esta metodología de representación de la información es mostrar los datos que contendrá un sistema como un conjunto de objetos con atributos propios, los cuales son capaces de disminuir la redundancia presente en un sistema de archivos tradicionales y ocupar mejor la estructura presente en los datos a almacenar.

Page 14: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Terminología básica

Entidad

Relación

Atributo

Identificador único

Subtipo y Supertipo

Dependencia de existencia

Entidades fuertes y débiles

Qué es una Entidad ?

Definiciones

Cualquier cosa de relevancia para el negocio acerca de la cual debe mantenerse información.

Algo con existencia real o conceptual.

Algo a lo que se le da nombre.

Cualquier cosa que se puede identificar claramente.

Un objeto que existe y es distinguible de otros objetos.

Page 15: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Cómo se identifican Entidades ?

A partir de la descripción del negocio:

Buscando SUSTANTIVOS de uso común en el negocio.

Buscando SINÓNIMOS, que representen conceptos generalizables.

A partir de los documentos del negocio:

Buscando agrupaciones de información contenida en éstos.

Buscando elementos de información cuyo origen puede estar en entidades no identificadas.

Page 16: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Entidades - Representación gráfica

Rectángulo de bordes redondeados. Nombre en singular y mayúsculas.

EMPLEADO PROYECTO

PERSONA SALA

PROVEEDORPRODUCTO

Page 17: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Atributos

Las entidades poseen cualidades o propiedades conocidas como atributos : una sala de clases tiene, un nombre (QO - QP - D310), una ubicación, un cupo, etc..

Definición

Dato específico, significativo para una entidad, que: La califica, o (ej.: color)

La identifica, o (ej.: RUT)

La clasifica, o (ej.: grupo)

La cuantifica, o (ej.: peso)

Expresa su estado (ej.: pagado, solicitado)

Deben llevar nombre en singular, único dentro de la entidad.

No deben incluir el nombre de la entidad.

Pueden ser opcionales u obligatorios.

Su formato, valores por defecto, rangos, validaciones, son comunes para todos los valores posibles del atributo.

Page 18: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Atributos - Representación gráfica

VEHICULO# Numero Motor Patente Tipo Marcao Modeloo Numero de puertaso Numero de asientos

Identificador Único

Atributos Obligatorios

Atributos Opcionales

Page 19: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Atributos

Cada atributos de una entidad posee un TIPO, el que corresponde al tipo de dato del atributo.

Ejemplo : RUT Número

NombreString.

Fecha Date.

Dominios

Dominio es un conjunto de reglas de validación, restricciones de formato, y otras propiedades que se aplican a un grupo de atributos.

Ejemplos : Listas de valores

Rangos

Los dominios estandarizan los atributos en las entidades del negocio.

Page 20: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Conversión de Atributos en Entidades

Esto ocurre cuando:

El atributo puede tener varios valores dada una ocurrencia de una entidad, o

El atributo puede tener a su vez atributos, o

Requerimos historia de cambios en los valores del atributo.

Relaciones

Definición

Una relación es una asociación significativa entre dos entidades.

Una relación es “una vinculación entre entidades ”, por ejemplo, la entidad libro puede estar relacionada con la entidad persona por medio de la relación “arrendar”.

Page 21: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Toda relación tiene un nombre, que expresa la asociación entre las entidades.

Tiene grado (o cardinalidad).

Tiene opcionalidad.

Formalmente, una relación R entre conjuntos de entidades {E1, E2, ... En} se representa mediante un conjunto de n-tuplas (e1, e2, ..., en) donde e1 Î E1, e2 Î E2, ..., en Î En.

Una relación también puede tener atributos, por ejemplo, en la relación “arrendar” el atributo fecha podría indicar la fecha en que se devuelve el libro.

Relaciones - Representación gráfica

Una relación se representa por una línea que une dos entidades.

La opcionalidad se representa por una línea punteada (opcional) o llena (obligatoria).

Page 22: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

El grado se representa por un extremo simple (uno) o “pata de gallo” (muchos).

El nombre se escribe en los extremos.

MODELO MARCAcorresponder a

tener

Muchos Uno(pata de gallo) (simple)

Obligatorio Opcional(línea llena) (punteado)

Page 23: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Relaciones - Lectura

La lectura debe expresar reglas del negocio Cada extremo se lee:

Cada (entidad) puede, o debe (nombre relación) una o más, o

una y solo una (entidad(es))

Ejemplo:

Cada MODELO debe corresponder a una y sólo una MARCA.

Cada MARCA puede tener uno o más MODELOS.

Relaciones Muchos a Muchos

Son aquellas cuyo grado es múltiple en ambos extremos.

Se deben resolver buscando una entidad de intersección.

Page 24: Trabajo sobre base de datos

EJERCICIOS

Haga una lista de entidades y atributos para: Una distribuidora de combustibles.

Un Banco

Falabella

Page 25: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Relaciones N:M

Relaciones Uno a Uno

Son aquellas de grado singular en ambos extremos.

Se debe investigar la posibilidad de fusionar ambas entidades

A B A B

X

A B

Page 26: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Relaciones recursivas

Modelan jerarquías en entidades del mismo tipo, por ejemplo: parte - componente, jefe - subordinado.

Coloquialmente: “Oreja de chancho”

Relaciones excluyentes - Arcos

Modelan el caso en que las ocurrencias de una entidad están asociadas con sólo una de varias otras entidades.

Esta es una manera de modelar exclusividad. Otra posibilidad es usar subtipos.

A

Page 27: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Relaciones excluyentes - Lectura

Se leen todas las relaciones, uniéndolas por la partícula o bien Cada (entidad)

o bien (relación 1 - entidad 1)

o bien (relación 2 - entidad 2)

...

o bien (relación N - entidad N)

C

A B

Page 28: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Ejemplo : Cada TRABAJO o bien debe ser hecho por un

EMPLEADO o bien debe ser hecho por un

PROVEEDOR.

Relaciones excluyentes - Reglas

Toda relación en el arco debe tener la misma opcionalidad.

Toda relación en el arco debe ser de la misma entidad.

Una relación puede participar en a lo más un arco.

Identificador Único

Un conjunto de entidades es un conjunto de entidades del mismo tipo que poseen los mismos atributos. Una entidad se identifica dentro del conjunto, por los valores que adquieren sus atributos.

Page 29: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Ejemplo : El conjunto de todas las personas que

toman ramo en la escuela, puede definirse

como el conjunto de entidades alumno.

Definición

Para todo conjunto de entidades del mismo tipo, debe existir uno o más atributos, o una o más relaciones, o una combinación de éstos que permite identificar inequívocamente cada entidad en forma única. Este atributo o combinación de atributos se denomina identificador único.

Conjunto de atributos y/o relaciones cuya combinación de valores para una ocurrencia de una entidad es única en el universo de ocurrencias posibles de la entidad.

Si bien siempre debe ser posible encontrar un identificador único, es frecuente definir atributos artificiales que garanticen la unicidad.

Page 30: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Ejemplo : El N° de matrícula es una buen identificador

único para el conjunto de entidades alumno.

Pregunta : ¿ Es el Carnet de Identidad una buen identificador único ?

EMPLEADO# Emp_Id

PROYECTO# Codigo

ASIGNACION# Fecha

La barra señala que el UID de PROYECTOparticipa del UID de ASIGNACION

Page 31: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Observaciones

Una entidad puede tener más de un UID.

En casos complejos, puede usarse UID artificiales.

Nunca un atributo o relación opcional es parte de un UID.

Problema

Definir el modelo E-R que permite obtener los horarios y las salas de clases de los cursos dictados por la escuela. (resolver los alumnos, supuestos vistos en clase).

Page 32: Trabajo sobre base de datos

EJERCICIOS

Construir un modelo Entidad Relación que represente el funcionamiento de una bomba de bencina.

Su solución debe al menos contestar:

q       Quiénes son los clientes?

q       Qué productos compran los clientes?

q       Cuál es el monto total de venta diaria?

q       Cuál es la bomba que más vende?

q       Qué octanaje tiene más venta?

q       Construir las consultas sql para contestar las preguntas anteriores.

 

 

 

Construir un modelo Entidad Relación que represente un banco y los productos cuenta corriente y tarjeta de crédito.

Su solución debe al menos contestar:

q       Quiénes son los clientes?

q       Qué productos tiene cada cliente?

q       Cuál es el movimiento de cada producto?

q       Cuál es el saldo de cada producto?

q       Construir las consultas sql para contestar las preguntas anteriores.

Page 33: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Subtipos y Supertipos

Definición Un supertipo es una entidad que queda completamente

definida como la unión de dos o más entidades. A éstas últimas se les llama subtipos de la entidad supertipo.

Los subtipos modelan exclusividad.

Observaciones

Cada ocurrencia de la entidad supertipo debe ser parte de una y sólo una entidad subtipo. Los subtipos son excluyentes.

Puede haber anidamiento: un subtipo de una entidad puede ser el supertipo de otras

Page 34: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Subtipos y Supertipos

Generalización y Especialización

Generalización es el proceso de definir supertipos a partir de varias entidades con atributos comunes.

Especificación es el proceso de definir subtipos de una entidad base.

La generalización se usa para obtener un conjunto de entidades de alto nivel a partir de un conjunto entidades de bajo nivel.

La generalización se usa para hacer resaltar los parecidos entre tipos de entidades de nivel más bajo y ocultar sus diferencias.

La generalización ayuda a la modularidad permitiendo que atributos comunes de conjuntos de entidades similares sean representados una sola vez en un diagrama E-R.

Page 35: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Subtipos y Supertipos

La especificación es el proceso inverso, pueden haber entidades en el conjunto de alto nivel que no estén asociadas a entidades en un conjunto de bajo nivel.

Representación gráficaPERSONA

JURÍDICA

NATURAL

Regla descrita:

Toda PERSONA es o bien jurídicao bien natural.

Page 36: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Dependencia de Existencia

Definición

La entidad X depende de la entidad Y, si para que exista X debe existir Y.

Ejemplo : Para que exista una entidad Vendedor debe existir

una entidad Empleado asociada.

Para que exista una orden de compra debe existir algún cliente que la ordena. Si se elimina un cliente se debe eliminar también sus órdenes de compra. El conjunto de entidades Clientes es el dominante y Orden es el subordinado.

Entidades fuertes y débiles

Es posible que una entidad no tenga suficientes atributos para formar un identificador único y deba ser formado usando la relación. Entidades así se llaman entidades débiles.

Page 37: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Una entidad débil es aquella cuya existencia depende de otra entidad, en el sentido de que no puede existir si no existe también esa otra entidad.

En el ejemplo (visto en clases), la entidad sección es débil por que no puede existir si no existe la entidad curso.

Una entidad fuerte es una entidad que no es débil.

Problema

Definir el modelo E-R de los “Mundiales de Fútbol”, que considere a los países participantes y jugadores de cada selección, indicando edad y posición en que juega. Un jugador puede participar en más de un mundial y lo puede hacer cada vez en una posición distinta. Un jugador siempre juega por un mismo país. Los partidos del mundial deben indicar los países que jugaron y el marcador obtenido. Los países se clasifican en etapas : final, semifinal, cuartos de final , etc.

Page 38: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Temas al cierre

Modelo Entidad - Relación y Formas Normales 1ra F.N. : Todo atributo debe tener valor único en una

ocurrencia de la entidad. 2da F.N.: Todo atributo debe depender de la totalidad

del UID de la entidad. 3ra F.N. : Ningún atributo que no sea parte del UID de la

entidad puede depender de otro atributo que tampoco sea parte del UID.

Mapeo (elemental) de Modelo E-R a Modelo Relacional

Entidades se mapean a Tablas Atributos se mapean a Columnas UIDs se mapean a LLaves Primarias Relaciones se mapean a Llaves Foráneas

Page 39: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Mapeo (elemental) de Modelo E-R a Modelo Relacional

Arcos pueden ser diseñados de dos maneras: Explícitos:Cada relación se mapea a una llave

foránea.

Implícitos: Todas las relaciones se mapean a una columna de llave foránea más una bandera para el tipo.

Subtipos pueden ser diseñados de tres maneras: Cada subtipo se mapea a una tabla.

Todos los subtipos se mapean a una única tabla, y se agrega una columna de tipo.

El diseño de subtipos se rehace en términos de relaciones con arcos.

Page 40: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Ejercicios

Discutir la validez de estos casos

A A B

X

A B

Page 41: Trabajo sobre base de datos

MODELO DE DATOSMODELO ENTIDAD - RELACIÓN

Ejercicios Indicar qué y qué no es implicado por el siguiente

diagrama :

A1 puede ser Y para A2 A1 no puede ser Y para A1 mismo Si A1 es Y para A2, entonces A2 no puede

ser Y para A1 El número de niveles es limitado No más de tres A1 pueden ser Y para A2

A

ser Xde

ser Y para

Page 42: Trabajo sobre base de datos

referencia: www.slideshare.net