El modelo de datos relacional. Introducción El modelo e-r se considera un modelo conceptual ya que permite a un nivel alto el ver con claridad la información.

Slides:



Advertisements
Presentaciones similares
Sesión no. 3 Modelación de datos, casos prácticos
Advertisements

IBD Clase 13.
Diseño de Bases de Datos
Unidad II Modelo Entidad-Relación
Rocío Contreras Águila Primer Semestre 2010
Access Bases de datos.
Elementos para Interpretar el Modelo Conceptual de Datos
MODELO RELACIONAL.
LLAVES EN BASES DE DATOS
¿QUÉ SON LAS BASES DE DATOS?
Teoría de Bases de Datos
MODELO RELACIONAL.
Modelo Relacional Base de Datos I.
Modelo Relacional Base de Datos I.
UNIDAD I Conceptos Básicos.
BASE DE DATOS I Clase # 1.
Bases de Datos Modelamiento.
Métrica v2.1 Técnicas: Modelado de datos (Parte 2)
MODELADO DE DATOS (PARTE 2) Viviana Poblete L. Modelo de Datos I.
Normalización en una base de datos
DISEÑO DE BASES DE DATOS
Tema 2: Base de datos relacionales
APLICACIÓN DE NUEVAS TECNOLOGÍAS EN LA CONSERVACIÓN Y ANÁLISIS DEL PATRIMONIO CULTURAL Pensar Relacionalmente: Bases de Datos Relacionales (una visión.
DISEÑO DE BASES DE DATOS
PASO DEL ESQUEMA E-R AL MODELO RELACIONAL
Para pasar a tablas todos los datos sin dejar nada y que las tablas tengan sentido por si solas se tiene que seguir unos pasos: 1.Toda entidad se transforma.
Bases de Datos Modelo Relacional.
INTERFAZ DE ACCESS  Access es un sistema gestor de bases de datos relacionales (SGBD). Una base de datos suele definirse como un conjunto de información.
 El modelo relacional se considera un modelo conceptual ya que permite a un nivel alto el ver con claridad la información utilizada en algún problema.
M ODELO DE DATOS DE ENTIDAD - VÍNCULO El modelo de entidad-vínculo es un modelo de datos conceptual de uso muy extendido. Este modelo, y sus variantes,
Sistemas de Información I
INTRODUCCIÓN A LAS BASES DE DATOS Revisión de Conceptos.
Accesibilidad web. ¿Qué es la accesibilidad web? Hablar de Accesibilidad Web es hablar de un acceso universal a la Web, independientemente del tipo de.
MATERIAL EDUCATIVO PARA EL «ROE» COMBINAR CORRESPONDENCIA PROFRA. Guadalupe Hernández Ramírez MATRÍCULA PLANTEL 12 Nezahualcóyotl FECHA. 21 de.
Sesión 07 Modelo Relacional Sistems y Comercio Universidad del Valle.
Universidad Tecnológica de Aguascalientes Dirección de Tecnologías de Información y Comunicación Carrera: Técnico Superior Universitario en Tecnologías.
1 UNIDAD II. MODELO ENTIDAD – RELACIÓN (E-R) Objetivo: El alumno realizará el modelo E-R y el modelo Entidad Relación Extendido (EE-R) para diseñar un.
Base de Datos I – Ing. Mary Carlota Bernal J. BASE DE DATOS I Diseño conceptual de Base de Datos Modelo Entidad - Relación.
Base de Datos I – Ing. Mary Carlota Bernal J.
Modelo entidad-relación extendido EER L.I. José de Jesús Eduardo Barrientos Avalos.
 Modelo de Datos MD  Conjunto de conceptos que permiten describir, a distintos niveles de abstracción, la estructura de una B.D. Que llamaremos ESQUEMA.
Modelo de Entidad-Relación (Modelo Conceptual) Ing. Linda Masias Morales INTEGRACION DE LAS TECNOLOGIAS DE INFORMACION Y COMUNICACION.
ADMINISTRACIÓN DE INFORMACIÓN DIGITAL BRAHAM MOSQUERA LEICY YULIANA MARTINEZ CARDONA ANDRES GRADO­ 10-T Docente Edy Gómez INSTITUCIÓN EDUCATIVA GABRIEL.
Bases de Datos I UNIVERSIDAD DEL VALLE. Contenido 5. Diseño de Sistemas de Bases de Datos  Diseño relacional  Formas normales  Proceso de creación.
Tecnología e Informática Keily Dahiana Gómez Montoya Jorse Hernández Baños Docente: Edy Gómez Grado: 10° Técnico I. E. Gabriel García Márquez
Modelo entidad/interrlación Tema 2. Parte 2. Modelo E/IR Utiliza un conjunto de símbolos y reglas para representar los datos y las relaciones entre ellos.
Tema 7: Ingeniería del software Definición de software El software es: 1. instrucciones (programas de computadora) que cuando se ejecutan proporcionan.
Inecuaciones lineales o inecuaciones de primer grado
TRABAJO PRESENTADO POR JUAN CARLOS PAOMINO JAVIER CAMACHO GEOVANNY GUERRA JEISLER CABRERAS GRUPO 108 UNIDAD A TRABAJAR 5.
Diagrama de clases Silvia Herzovich Rodrigo Aronas Matias Silversteyn.
Clase II Estructuras dinámicas (TAD) Listas Enlazadas. ¿A que llamamos estructuras dinámicas? ¿Por qué son necesarias? Ventajas y Desventajas que tendremos.
Base de Datos I – Ing. Mary Carlota Bernal J. BASE DE DATOS I Normalización.
Programación SISTEMAS NUMERICOS PROGRAMACION I INFO 012.
Diagramas UML Richard Mora Republica Bolivariana de Venezuela Ministerio del poder popular para la educación I.U.T. Antonio José de Sucre Barquisimeto,
This y static. This Normalmente, dentro del cuerpo de un método de un objeto se puede referir directamente a las variables miembros del objeto. Sin embargo,
Es una representación gráfica del significado que nos muestra cómo está organizado el conocimiento.
Una base de datos, a fin de ordenar la información de manera lógica, posee un orden que debe ser cumplido para acceder a la información de manera coherente.
Normalización es un proceso que clasifica relaciones, objetos, formas de relación y demás elementos en grupos, en base a las características que cada.
Base de Datos I – Ing. Mary Carlota Bernal J. BASE DE DATOS I Conversión del Modelo Entidad – Relación a Relacional.
Modelo entidad-relación (continuación) L.I. Eduardo Barrientos Avalos.
Análisis De La estructura dramática
Modelo del Proceso de Negocio Francisco Valdés Souto 2 al 6 de marzo 2009 © Avantare Consultores S. A. de C. V. – Derechos.
CLASIFICACIÓN DE LOS MEDIOS DE CONTROL. Las operaciones de control son técnicas especializadas. Se mencionaran los diversos campos y las técnicas más.
Bases de datos II Universidad del Cauca Ing. Wilson Ortega.
Curso: Metodología de la Investigación – Semana 6.
Por José R. Rodríguez Ríos PROG2300. gráfica Una gráfica es una manera de representar información que relaciona datos cuantitativos y/o cualitativos mediante.
1.2 Obtención y análisis de requerimientos Requerimiento Atributo o característica que describe el comportamiento de un sistema. Los requerimientos especifican.
LOGO Muestreo Pedro Godoy G.. LOGO Inferencia estadística La Inferencia Estadística es aquella rama de la Estadística mediante la cual se trata de sacar.
MODELO RELACIONAL.
Modelo Relacional Base de Datos I.
Transcripción de la presentación:

El modelo de datos relacional

Introducción El modelo e-r se considera un modelo conceptual ya que permite a un nivel alto el ver con claridad la información utilizada en algún problema o negocio. En este tema nos concentraremos en desarrollar un buen modelo "lógico" que se conoce como "esquema de la base de datos" (database schema) a partir del cual se podrá realizar el modelado físico en el DBMS, es importante mencionar que es un paso necesario, no se puede partir de un modelo conceptual para realizar un físico.

Por qué "modelo relacional" ? Puede resultar confuso el concepto de modelo entidad-relación vs modelo relacional, quizás porque ambos comparten casi las mismas palabras. Como se mencionó en la sección anterior, el objetivo del modelo relacional es crear un "esquema" (schema), lo cual como se mencionará posteriormente consiste de un conjunto de "tablas" que representan "relaciones", relaciones entre los datos.

Estas tablas, pueden ser construidas de diversas maneras: Creando un conjunto de tablas iniciales y aplicar operaciones de normalización hasta conseguir el esquema más óptimo. Convertir el diagrama e-r a tablas y posteriormente aplicar también operaciones de normalización hasta conseguir el esquema óptimo.

La primer técnica fue de las primeras en existir y, como es de suponerse, la segunda al ser más reciente es mucho más conveniente en varios aspectos: El partir de un diagrama visual es muy útil para apreciar los detalles, de ahí que se llame modelo conceptual. El crear las tablas iniciales es mucho más simple a través de las reglas de conversión. Se podría pensar que es lo mismo porque finalmente hay que "normalizar" las tablas de todas formas, pero la ventaja de partir del modelo e-r es que la "normalización" es mínima por lo general. Lo anterior tiene otra ventaja, aún cuando se normalice de manera deficiente, se garantiza un esquema aceptable, en la primer técnica no es así.

Conceptos básicos Tablas Atributos Esquemas Tuplas Dominios Representaciones equivalentes de una relación

Tablas El modelo relacional proporciona un manera simple de representar los datos: una tabla bidimensional llamada relación. Relación Películas La relación Películas tiene la intención de manejar la información de las instancias en la entidad Películas, cada renglón corresponde a una entidad película y cada columna corresponde a uno de los atributos de la entidad. Sin embargo las relaciones pueden representar más que entidades, como se explicará más adelante. títuloañoduracióntipo Star Wars color Mighty Ducks color Wayne's World199295color

Atributos Los atributos son las columnas de una relación y describen características particulares de ella. títuloañoduracióntipo Star Wars color Mighty Ducks color Wayne's World199295color Atributos

Esquemas Es el nombre que se le da a una relación y el conjunto de atributos en ella. Películas (título, año, duración, tipo) En un modelo relación, un diseño consiste de uno o más esquemas, a este conjunto se le conoce como "esquema relacional de base de datos" (relational database schema) o simplemente "esquema de base de datos" (database schema)

Tuplas Cada uno de los renglones en una relación conteniendo valores para cada uno de los atributos. (Star Wars, 1977, 124, color)

Dominios “D” Un dominio D es un conjunto de valores atómicos. Por atómico queremos decir que cada valor del dominio es indivisible en lo tocante al modelo relacional.

Especificación de los dominios: 1.Especificar un tipo de datos al cual pertenecen los valores que constituyen el dominio. 2.Especificar un nombre para el dominio que ayude a interpretar sus valores.

Ejemplos de Dominios Numeros_telefonicos_de_EEUU: el conjunto de números validos de diez dígitos en los EU. (ddd)ddd-dddd Numeros_telefonicos_locales: el conjunto de números validos de siete dígitos dentro de un código de área en los EU. Numeros_de_seguridad_social: el conjuntos de números validos formados por 9 dígitos. Nombre: el conjunto de nombres de personas Edades_de_empleado: edades posibles de los empleados de una empresa que debe ser entre los 18 y 80 años de edad.

Representaciones equivalentes de una relación Las relaciones son un conjunto de Tuplas, no una lista de Tuplas. El orden en que aparecen las Tuplas es irrelevante. Así mismo el orden de los atributos tampoco es relevante Otra representación de la relación Películas añotítulotipoduración 1991Mighty Duckscolor Wayne's Worldcolor Star Warscolor124

Conversión del modelo e-r a un esquema de base de datos (Conversión a tablas) El modelo es una representación visual que gráficamente nos da una perspectiva de como se encuentran los datos involucrados en un proyecto u organización. Pero el modelo no nos presenta propiamente una instancia de los datos, un ejemplo que muestre con claridad algunos datos de muestra y como se relacionan en realidad. Por eso es conveniente crear un "esquema", el cual consiste de tablas las cuales en sus renglones (Tuplas) contienen instancias de los datos.

Conversión a tablas desde un modelo con relaciones (1-1,1-m,m-m) Reglas que se deben seguir para poder crear dicho esquema. Una tabla por cada conjunto de entidades –nombre de tabla = nombre de conjunto de entidades Una tabla por cada conjunto de relaciones m-m –nombre de tabla = nombre de conjunto de relaciones Definición de columnas para cada tabla –conjuntos fuertes de entidades columnas = nombre de atributos –conjuntos débiles de entidades columnas = llave_primaria (dominante) U atributos(subordinado) –conjunto de relaciones R (m-m) entre A, B columnas (R) = llave_primaria (A) U llave_primaria (B) U atributos(R) –conjunto de relaciones R (1-1) entre A y B columnas (A) = atribs(A) U llave primaria(B) U atributos(R) –conjunto de relaciones R (1-m) entre A y B columnas (B) = atribs(B) U llave primaria(A) U atributos(R)

El diagrama anterior se convertiría al siguiente esquema: Debil atribs_DebilLLP_Aatribs_rel_0 A LLP_Aatribs_A B1 LLP_B1atribs_B1 B2 LLP_B2atribs_B2LLP_Aattribs_rel_2 B3 LLP_B3atribs_B3LLP_Aatribs_rel_3 A_B1 LLP_ALLP_B1atribs_rel_1 donde: LLP_X es la llave primaria de la entidad X (un subconjunto de atribs_X)

Ejemplo

Para el ejemplo de la figura tendríamos el esquema: escuela idurlnombre departamento claveurlnombreid_escuela curso claveseccionnombreclave_depto profesor idnombreextension estudiante idnombrecarrera profesor_curso id_profclave_cursoseccion_curso estudiante_curso id_estudclave_cursoseccion_curso

Conversión a tablas desde un modelo con generalización Modelo e-r de generalización a tablas dos posibilidades: 1.crear una tabla para el conjunto de entidades A de mayor nivel columnas (A) = atributos(A) para cada conjunto de entidades B de menor nivel, crear una tabla tal que: columns (B) = atributos (B) U llave_primaria (A) 2. si A es un conjunto de entidades de mayor nivel para cada conjunto de entidades B de menor nivel, crear una tabla tal que: columnas (B) = atributos (B) U atributos (A)

Modelo Entidad - Relacion

La generalización se convertiría al siguiente esquema:

Es importante mencionar que a pesar de que existen 2 métodos para convertir una generalización a tablas, no hay una regla exacta de cual usar en determinado caso. A continuación se mencionan algunos consejos útiles para la determinación de cual método emplear: 1.Si la entidad de nivel superior está relacionada con otra(s) entidades puede sugerirse emplear el método (1) ya que de esa manera la tabla (A) será la única involucrada en la relación, de otra forma se tendrían tres tablas (B1,B2 y B3) formando parte de la relación. 2.Es importante tomar en cuenta la pertenencia de instancias, si se considera que hablamos de una generalización disjunta, donde no se puede pertenecer a varias entidades de nivel inferior, quizás sea recomendable el método (1), en otro caso se podría pensar en el método (2). 3.También es importante analizar ambos casos con respecto a las "consultas" que se deseen realizar ya que esto también determina en muchos casos el método a emplear.

Descubrimiento de llaves en las relaciones Las llaves resultantes en las relaciones de un esquema se pueden inferir de la siguiente manera: 1) Cada tabla que provenga de una entidad contiene por si misma una llave 2) Para las tablas resultado de una relación se toman las llaves primarias de ambas entidades y éstas conforman la nueva llave primaria, excepto en un caso como el que sigue:

Podemos observar que existe una relación m-m entre "actor" y "serie", demostrando que un actor puede actuar en muchas series y que muchas series tendrán a los mismos actores.

La tabla que se crearía sería: actor - serie id_actorid_serieid_personaje Joaquín PardavéGénesisAbel hermano bueno Evita Muñoz (Chachita)Qué bonita familiaDulce abuelita Joaquín PardavéGénesisCaín hermano malo Evita Muñoz (Chachita)Hermelinda lindaBruja Hermelinda Si se considera "id_actor, id_serie" como la llave primaria caemos en un problema porque esa combinación no identifica de manera única a la tupla, como es el caso de "Joaquín Pardavé, Génesis" ya que en la primer tupla tenemos que determina a "Abel hermano bueno" y en la tercera a "Caín hermano malo". La relación es correcta ya que un actor puede representar a varios personajes en la misma obra, pero entonces la llave "id_actor, id_serie" no es la correcta y en este caso lo más recomendable sería emplear los tres atributos de la relación "id_actor, id_serie, id_personaje"

Algoritmo de transformación ER-Modelo Relacional PASO 1: Por cada tipo de entidades normal E del esquema ER, se crea una relación R que contenga todos los atributos simples de E. Se incluyen sólo los atributos simples componentes de un atributo compuesto. Se elige uno de los atributos clave de E como clave primaria de R. Si la clave elegida es compuesta, el conjunto de atributos simples que la forma constituirá la clave primaria de R. PASO 2: Por cada tipo de entidad débil D del esquema ER con tipo de entidades propietarias E, se crea una relación R y se incluyen todos los atributos simples ( o componentes simples de los atributos compuestos) de D como atributos de R.

Además, se incluyen como atributos de clave externa de R los atributos de clave primaria de la relación o relaciones que corresponden al tipo o tipos de entidades propietarias; con esto damos cuenta del tipo de vínculo identificador de D. La clave primaria de R es la combinación de las claves primarias de las propietarias y la clave parcial de D, si existe.

PASO 3: Por cada tipo de vínculo binario 1:1 R del esquema ER, se identifican las relaciones S y T que corresponden a los tipos de entidades que participan en R. Se escoge una de las relaciones –digamos S- y se incluye como clave externa en S la clave primaria de T. Es mejor elegir un tipo de entidades con participación total en R en el papel de S. Se incluyen todos los atributos simples (o componentes simples de los atributos compuestos) del tipo de vínculo 1:1 R como atributos de S. Cabe señalar que puede establecerse una transformación alternativa de un tipo de vínculo 1:1 si combinamos los dos tipos de entidades y el vínculo en una sola relación. Esto resulta apropiado sobre todo cuando las dos participaciones son totales y cuando los tipos de entidades no participan en ningún otro tipo de vínculos.

PASO 4: Por cada tipo de vínculos normal (no débil) binario 1:N R, se identifica la relación S que representa el tipo de entidades participante del lado N del tipo de vínculos. Se incluye como clave externa en S la clave primaria de la relación T que representa al otro tipo de entidades que participa en R; la razón es que cada ejemplar de entidad del lado N está relacionado con un máximo de un ejemplar de entidad del lado 1. Se incluyen todos los atributos simples (o componentes simples de los atributos compuestos) del tipo de vínculos 1:N como atributos de S.

PASO 5: Por cada tipo de vínculos binario M:N R, se crea una nueva relación S para representar R. Se incluyen como atributos de clave externa en S las claves primarias de las relaciones que representan los tipos de entidades participantes; su combinación constituirá la clave primaria de S. También se incluyen todos los atributos simples (o componentes simples de los atributos compuestos) del tipo de vínculos M:N como atributos de S. Cabe destacar que siempre es posible transformar los vínculos 1:1 o 1:N de una manera similar a como se hace con los vínculos M:N. Esta alternativa es útil sobre todo cuando hay pocos ejemplares del vínculo, a fin de evitar valores nulos en las claves externas. En este caso, la clave primaria de la relación vínculo será la clave externa de sólo una de las relaciones entidad participantes. En el caso de un vínculo 1:N, ésta será la relación entidad del lado N; en el caso de un vínculo 1:1, se elegirá la relación entidad con participación total (si existe).

PASO 6: Por cada atributo multivaluado A se crea una nueva relación R que contiene un atributo correspondiente a A más el atributo de clave primaria K (como clave externa en R) de la relación que representa el tipo de entidades o de vínculos que tienen a A como atributo. La clave primaria de R es la combinación de A y K. Si el atributo multivaluado es compuesto, se incluyen sus componentes simples. PASO 7: Por cada tipo de vínculos n-ario R, n > 2, se crea una nueva relación S que represente a R. Se incluyen como atributos de clave externa en S las claves primarias de las relaciones que representan los tipos de entidades participantes

Ejemplo de un diagrama ER EMPLEADODEPARTAMENTO PERTENECE_A DIRIGE SUPERVISIONTRABAJA_EN PROYECTO CONTROLA_A supervisadosupervisor Horas FechaInic FechaNac DEPENDIENTES_DE DEPENDIENTE Parentesco SexoNombre FechaN NSSNombre NomPila Paterno Materno Sexo Dirección Salario NumDeEmpleados Nombre Número Lugares Nombre Número Lugar trabajador empleado departamento- dirigido departamento departamento- controlador proyecto- controlado proyecto dependiente (1, 1) N1 11 N1M N N 1 N 1

Conversion a esquema NOMBREP EMPLEADO INICAPELLIDONSSFECHANDIRECCIÓNSEXOSALARIONSSSUPERND NOMBRED DEPARTAMENTO NÚMERODNSSGTEFECHAINICGTE LUGARES_DEPTOS NÚMEROD LUGARD NOMBREP PROYECTO NÚMEROPLUGARPNÚMEROD TRABAJA_EN NSSE NÚMP HORAS DEPENDIENTE SEXOFECHANPARENTESCO NSSE NOMBRE_DEPENDIENTE

Correspondencia entre los modelos ER y relacional Modelo ERModelo relacional tipo de entidadesrelación “entidad” tipo de vínculos 1:1 o 1:Nclave externa (o relación “vínculo”) tipo de vínculos M:N relación “vínculo” y dos claves externas tipo de vínculos n-ario relación “vínculo” y n claves externas atributo simplecampo atributo compuesto conjunto de campos componentes simples atributo multivaluadorelación y clave externa conjunto de valoresdominio atributo claveclave primaria (o secundaria)