Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Reixach
Unidad Didáctica 1
Núcleo de actividad 3
Modelos de datos:
Jerárquico, en Red y Relacional
J.M. Reixach
1
Modelos de datos J.M. Reixach
Introducción
• Los MD’s tienen asociados una serie de conceptos que describen un conjunto de
datos y operaciones para manipular estos datos.
2
Modelos de datos J.M. Reixach
Características.
3
Modelos de datos J.M. Reixach
Contenidos.
• Datos o Entidades.
• Propiedades de los datos.
• Relaciones de los datos.
• Restricciones de los datos.
Clasificación.
Modelo Deductivo.
4
Modelos de datos J.M. Reixach
Modelo Jerárquico
Este modelo fue el primero en aparecer y se caracteriza por organizar la información a
través de una estructura de árboles, en la que las relaciones entre instancias o registros
se expresan mediante una jerarquía. Dicha jerarquía distribuye y ordena los datos
mediante un recorrido en PREORDEN.
La estructura jerárquica cuenta con una gran cantidad de inconvenientes conocidos, por
lo que su utilización en la actualidad es prácticamente nula. La flexibilidad y falta de
estructuración de este modelo permite crear registros cuyos campos sean variables en
número y tamaño; además cuando la información almacenada en la base de datos es
muy grande, se convierte en inmanejable.
En cuanto a limitaciones lógicas cabe destacar que este modelo sólo soporta relaciones
del tipo 1 a N (ya que las de tipo N a N requieren un inaceptable nivel de redundancia).
Además, si un registro tipo aparece como hijo en más de dos relaciones, se debe de
replicar. Esto puede producir problemas de integridad y consistencia de los datos. Los
lenguajes de manipulación asociados son fuertemente navegacionales y hace falta un
lenguaje de programación anfitrión en el que se inserten los operadores.
Estructura Jerárquica.
• En una estructura jerárquica los elementos principales son nodos y ramas, los
nodos simbolizan entidades y las ramas relaciones.
5
Modelos de datos J.M. Reixach
Ejemplo de árbol:
Nodo Raíz
1
Nodo Padre
2 5
Nodos Hoja
3 4
Definiciones.
• Los arcos (ramas) del árbol definen la relación existente entre las Entidades.
6
Modelos de datos J.M. Reixach
Representación gráfica.
Diagrama de ocurrencias
• Características:
o Cada rectángulo representa la Instancia de un tipo de registro (entidad).
o Los arcos definen la relación existente entre las instancias de 2 niveles
contiguos del árbol.
o No se suelen especificar los campos de los registros.
o Cuando la cantidad de información almacenada en la BD es muy grande
se convierte en inmanejable.
o Si no aparece ninguna Instancia de alguno de los niveles del árbol la
relación asociada no se puede representar.
o Cada nodo del árbol tiene un único padre.
o Las relaciones M:N requieren que los datos se dupliquen.
Podemos decir que una sucursal tiene ‘n’ clientes pero no que un cliente pertenece a ‘n’
sucursales (M:N). Se soluciona duplicando las ocurrencias de cliente. Por ejemplo el
cliente 0093 lo es de dos sucursales por lo que tendremos que duplicar la ocurrencia de
cliente (se genera redundancia, información duplicada).
7
Modelos de datos J.M. Reixach
Diagrama de Bachman ( DB )
• Características:
o Describe gráficamente el esquema lógico de una BD jerárquica (y de
red).
o Los rectángulos representan los tipos de registro.
o Los arcos representan la relación existente entre los tipos de registro.
o Los arcos se etiquetan porque no puede existir más de una relación entre
dos tipos de registro.
o La flecha simple-doble indica que existe un único padre para cada hijo,
pero pueden existir cero o más hijos de un padre.
SUCURSAL
Arcos
Cliente_por_sucursal
Etiqueta
CLIENTE
Cuentas_por_cliente
Doble flecha: una ocurrencia
del registro de arriba se
CUENTA relaciona con cero o más
ocurrencias del registro de
abajo
Transacciones_por_cuenta
8
Modelos de datos J.M. Reixach
Si ahora, además de asociar las cuentas con sus propietarios deseamos clasificar las
mismas por su tipo (cuenta corriente, de ahorro...) ocurre que la única forma de
‘arreglarlo’ es a base de introducir redundancias, replicar la información. Esto ocurre
cuando un registro aparece como hijo en más de dos relaciones, por lo que se debe
replicar.
SUCURSAL
CENTRO
9
Modelos de datos J.M. Reixach
CUENTA CUENTA
Transacción_por_cuenta
TRANSAC
Conceptos basicos
10
Modelos de datos J.M. Reixach
Tipos de navegación:
Ejemplo de BD jerárquica
11
Modelos de datos J.M. Reixach
Modelo de red
Estructura de red
§ El modelo de red se puede entender como una extensión del modelo jerárquico
pues se puede representar mediante un árbol, con la diferencia respecto al
jerárquico en que cada nodo hijo puede tener varios padres.
§ De este modo se reducen o eliminan las redundancias pero desaparece la
herencia de los campos.
§ La integridad de los datos asociada a los arcos padre-hijo se mantiene.
§ Estructuras de datos de red
− Nodos (registros)
− Enlaces o arcos (punteros)
Tipos de redes
§ Red simple: los padres de un hijo son instancias de tipo de registros diferentes.
§ Red compleja: los padres pueden ser instancias del mimo tipo de registro.
§ En las redes complejas puede desaparecer todo tipo de redundancia, pero
perdiendo la herencia.
§ Para que esto no ocurra se puede permitir cierto grado de redundancia.
§ Otra alternativa es convertir una red compleja en una red simple en la cuál no se
pierda información (herencia).
12
Modelos de datos J.M. Reixach
SUCURSAL
CENTRO
Un hijo tendrá dos entidades distintas, dos padres que son ocurrencias de entidades
distintas.
SUCURSAL
13
Modelos de datos J.M. Reixach
En las redes complejas puede desaparecer la herencia, como por ejemplo ¿De qué
sucursal es la cuenta L3099?
SUCURSAL
SUCURSAL
Cuentas_por_cliente
cuenta por tipo
CUENTA
Transacción_por_cuenta
TRANSAC
14
Modelos de datos J.M. Reixach
Inconvenientes
Productos comerciales
Este producto está basado en el Modelo de red (Codasyl ‘Conference On Data System
Language’) que fue la organización que ideó el modelo de red así como el lenguaje
Cobol (es navegacional e ideal para el manejo de BD).
Modelo relacional
15