Modelo de Datos de Red Conceptos Básicos Una base de datos de red se compone por una colección de registros que se conectan entre si por medio de ligas. Un registro equivale a una entidad y un campo a un atributo del modelo entidad relación. Los campos contienen exclusivamente valores atómicos. Una liga es una relación que se establece solamente entre dos registros; es decir; debe utilizarse una liga para cada relación entre una pareja de registros. Ejemplo: CLIENTES CUENTAS Ana xxx x 221528 25 180000 Angel xxx x 423374 30 50000 Mario xxx x 856490 50 20000 Diagrama de Estructuras de Datos (DED) Permiten mostrar gráficamente el esquema de una base de datos en el modelo de red. Sus componentes principales son: - Cajas o cuadros: representan registros. - Líneas: representan ligas. MODELO ENTIDAD - RELACIÓN Nombre Dirección Teléfono (0,n) CLIENTE (1,n) tiene Nro_cue nta CUENTA Saldo MODELO DE RED CLIENTE NOM CUENTA DIR TEL NC SALDO El caso anterior muestra la conversión del modelo entidad relación al modelo de red para una relación simple donde no existen atributos descriptivos en la relación. CASOS ESPECIALES a) LA RELACIÓN TIENE ATRIBUTOS DESCRIPTIVOS E-R fecha Nombre Dirección Teléfono CLIENTE(0,n) (1,n) tiene Nro_cuenta CUENTA S aldo ___________________________________________________________________________________________________ Bases de Datos Mariella Gutiérrez Valenzuela Facultad de Ingeniería - UCSC D. E. D. RED NOM DIR TEL NC Liga FECHA-CLIENTE SALDO Liga FECHA-CUENTA FECHA 25 180000 30/09/1999 30 50000 01/03/2000 50 20000 Ana xxx x 221528 15/07/1999 Angel xxx x 423374 Mario xxx x 856490 b) La relación conecta a más de dos conjuntos de entidades. E-R fecha Nombre Dirección Teléfono (0,n) CLIENTE (1,n) Nro_cue nta CUENTA tiene Saldo (1,n) Numero Ciudad SUCURSAL D. E. D. RED CLIENTE CUENTA NOM DIR NUM CIUDAD TEL NC SALDO Liga SUCURSAL Liga CLIENTE Liga CUENTA FECHA INSTANCIA CLIENTE LIGA CUENTA SUCURSAL 35 Santiago Ana xxx x 221528 15/07/1999 Angel xxx x 423374 30/09/1999 xxx x 856490 Mario 25 180000 30 50000 47 Concepción 01/03/2000 50 20000 ___________________________________________________________________________________________________ Bases de Datos Mariella Gutiérrez Valenzuela Facultad de Ingeniería - UCSC Modelo CODASYL DBTG (COnference on DAta SYstem Languages, Data Base Task Group) Este modelo es una implementación de las reglas generales de operación del modelo de red. Toma de éste los aspectos generales operativos, pero introduce las siguientes características particulares: Sólo pueden utilizarse ligas muchos a uno. Se prohíben las ligas muchos a muchos para simplificar la implementación. Las ligas uno a uno se representan utilizando ligas muchos a uno. Casos: A) MODELO ENTIDAD - RELACIÓN a1 a2 a3 A (1,n) (1,1) b1 Bb2 R MODELO DE RED A B a1 a2 a3 b1 b2 B) MODELO ENTIDAD RELACION a1 a2 a3 A b1 Bb2 R ó MODELO CODASYL A B a1 a2 a3 b1 RA b2 RB R C) MODELO ENTIDAD RELACION a1 a2 a3 A (1,n) (1,1) R b1 Bb2 r1 ___________________________________________________________________________________________________ Bases de Datos Mariella Gutiérrez Valenzuela Facultad de Ingeniería - UCSC MODELO CODASYL A a1 B a2 a3 b1 RA R b2 RB r1 Modelo de Datos Jerárquico Conceptos Básicos Una base de datos jerárquica consiste en una colección de registros que se conectan entre si por medio de ligas. Los registros y las ligas son similares a los del modelo de red, pero en el modelo jerárquico se organiza en forma de árbol con raíz (donde la raíz es un nodo ficticio); de tal manera que una base de datos jerárquica es una colección de árboles de este tipo, formando un bosque. A cada árbol con raíz se le denomina árbol de base de datos. En este modelo un registro puede tener que repetirse en varios sitios que puede ocasionar los siguientes problemas: * Riesgos de la inconsistencia al llevar a cabo actualizaciones. * Inevitable desperdicio de espacio en el medio de almacenamiento secundario. Diagramas de Estructura de Árbol Un diagrama de estructura de árbol es el esquema de una base de datos jerárquica. Tiene dos componentes básicos: REGISTROS y LIGAS Estos diagramas son similares a los de estructura de datos en el modelo de red. La diferencia radica en que en el modelo de red los registros se organizan en forma de un grafo arbitrario mientras que en el modelo jerárquico se organiza en forma de un árbol con raíz. Las reglas para la formación del árbol son: 1.-No hay ciclos 2.-De padre a hijos son válidas las relaciones de uno a uno y uno a muchos. El esquema de una base de datos jerárquica se representa como una colección de diagramas de estructuras de árbol. Para cada diagrama existe una única instancia del árbol de base de datos. La raíz de este árbol es un nodo ficticio. Los hijos de ese nodo son instancias del tipo de registros adecuado. Ejemplo: Modelo Entidad Relación Nombre (0,n) CLIENTE Dirección Teléfono (1,1) tiene Nro_cue nta CUENTA Saldo Instancias 25 180000 30 50000 423374 40 30000 856490 50 20000 Ana xxx x 221528 Angel xxx x Mario xxx ___________________________________________________________________________________________________ x Bases de Datos Mariella Gutiérrez Valenzuela Facultad de Ingeniería - UCSC Árbol Jerárquico Ana 25 xxx x 180000 Ángel 221528 35 50000 xxx x 40 423374 Mario 30000 50 xxx x 856490 20000 Casos Particulares a) Modelo Entidad Relación a1 a2 a3 b1 R A Bb2 ó Árbol Jerárquico A B + IB IA b) Modelo Entidad Relación a1 a2 a3 Árbol Jerárquico R A b1 Bb A B c) Modelo Entidad Relación a1 a2 a3 A (1,n) (1,n) R b1 Bb2 r1 ___________________________________________________________________________________________________ Bases de Datos Mariella Gutiérrez Valenzuela Facultad de Ingeniería - UCSC Árbol Jerárquico A B R R B A d) Modelo Entidad Relación a1 a2 a3 b1 b2 A R1 B c1 c2 R2 C Árbol Jerárquico A B B + IB IA C Problemas del Modelo Jerárquico: 1. 2. 3. 4. 5. Hijos con más de un padre Relaciones reflexivas Más de una relación entre dos entidades Relaciones muchos a muchos Hijos sin padre ___________________________________________________________________________________________________ Bases de Datos Mariella Gutiérrez Valenzuela Facultad de Ingeniería - UCSC