modelo jerárquico de una base de datos

Anuncio
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRALUNIDAD ACADEMICA RIO GALLEGOS
TRABAJO DE INVESTIGACIÓN:
BASE DE DATOS
MATERIA:
!
MODELO JERÁRQUICO
DE UNA BASE DE
DATOS
&
INTEGRANTES:
PROFESOR:
AMALVY MARCOS
ANTIPANI VICTOR
GALLARDO INGRID
SOFÍA OSIRIS
1
INDICE:
Introducción...................................................................................................................3
Características de la estructura jerárquica......................................................................4
Implementación Del M odelo Jerarquizado:...................................................................6
Segmentos O Registros .................................................................................................7
Otro tipo de Implementación..........................................................................................9
!
Otras Clasificaciones de arboles...................................................................................10
La función de manipulación de datos...........................................................................11
Cuadro comparativo de los modelos de datos..............................................................12
Conclusión....................................................................................................................13
&
Bibliografía...................................................................................................................14
2
Introducción:
&
!
Todo conjunto de datos, almacenado en gran cantidad, requiere de un sistema que
gestione tanto el almacenamiento como el acceso a dicha información. Un SGBD (Sistema
de Gestión de Base de Datos) es el encargado de ésta tarea, y los hace de varias maneras
diferentes. Desde la aparición de los primeros SGBDs comerciales en la década de los 60
hasta la actualidad, se han sucedido tres generaciones distintas de SGBDs basadas en tres
modelos de datos.
Los tres modelos en los que se ha basado el desarrollo de las bases de datos son el
jerárquico, en red y relacional. El modelo jerárquico dominó el mercado de los SGBDs
hasta mediados de los 80. Durante este mismo período, surgió el modelo en red con el que
se pretendía sustituir a los SGBDs jerárquicos, lo que no se consiguió.
Los SGBDs jerárquicos fueron los primeros en aparecer. Una base de datos
jerárquica se puede visualizar como una estructura en árbol. Las bases de datos jerárquicas
son bastante rígidas. Una vez diseñada la base de datos, es complejo cambiarla y, además,
es necesario un conocimiento amplio de la forma en la que se han almacenado los datos
para poder recuperarlos de forma efectiva. Por ello, a pesar de haber dominado el mercado
en sus comienzos, los SGBDs han ido decayendo y actualmente no se encuentran en el
mercado.
Los SGBDs jerárquicos son M odelos Lógicos basados en registros que se usan para
describir datos en los niveles lógicos y de vista, se llaman así debido a que la base de datos
se estructura en registro de formato fijo de diferentes tipos, en cada tipo de registro se
define un numero fijo de campos o atributos, y cada campo tiene normalmente una longitud
fija. El uso de registros de longitud fija simplifica la implementación en el nivel físico de la
base de datos. Esta simplicidad contrasta con muchos de los modelos basados en objetos.
Los M odelos Jerárquicos se usan tanto para especificar la estructura lógica completa
de la base de datos como para proporcionar una descripción de alto nivel de la
implementación.
A pesar de que los avances en el campo de los SGBDs han sido muy grandes y de
que los SGBDs actuales proporcionan un rendimiento muy elevado, aún están lejos de
satisfacer todas las demandas de las aplicaciones más avanzadas. Siguen existiendo hoy en
día numerosas áreas científicas e industriales, en las que los SGBDs relacionales están
escasamente introducidos. M uchos de estos campos exigen la manipulación de nuevos tipos
de información o suponen unos volúmenes de datos de difícil manejo por los sistemas
actuales.
.
3
CARACTERÍSTICAS DE LA ESTRUCTURA
JERÁRQUICA :
Una base de datos jerárquica consiste en una colección de segmentos (registro) que
se conectan entre sí por medio de enlaces. Cada segmento es una colección de campos
(atributos), que contienen un solo valor cada uno de ellos. Un enlace es una asociación o
unión entre dos segmentos exclusivamente.
Las características principales de implementar este modelo son:
!
• Globalización de la información: permite a los diferentes usuarios considerar la
información como un recurso corporativo que carece de dueños específicos.
• Eliminación de información inconsistente: si existen dos o más archivos con la
misma información, los cambios que se hagan a éstos deberán hacerse a todas
las copias del archivo de facturas.
• Permite compartir información
• Permite mantener la integridad en la información: la integridad de la
información es una de sus cualidades altamente deseable y tiene por objetivo
que sólo se almacena la información correcta.
• Independencia de datos: el concepto de independencia de datos es quizás el que
más ha ayudado a la rápida proliferación del desarrollo de Sistemas de Bases de
Datos.
&
En este tipo de modelos la organización se establece en forma de árbol, donde la
raíz es un nodo ficticio. Así tenemos que, una base de datos jerárquica es una colección de
árboles.
El contenido de un registro específico puede repetirse en varios sitios (en el mismo
árbol o en varios árboles).
Los Segmentos se clasifican en tres tipos:
1) Padre :ES aquel que tiene descendientes(hijos) todos localizados al mismo
nivel.
2) Hijo: ES aquel que depende de un segmento anterior, todos los
hijos del mismo padre tendrán que estar localizados en el mismo nivel
3) Segmento Raíz: Es el único segmento que no tiene padre ,es el antecesor de
todos, y es el segmento de mayor nivel ,es decir esta en el nivel superior del
Arbol.
Segmento:
A
4
A
Segmento Raíz:
Segmento Hijo:
A
A
!
A
A
Segmento Padre:
&
Las relaciones entre dos degmentos sólo pueden ser de uno a uno:
A
B
5
IMPLEMENTACION DEL MODELO
JERARQUIZADO:
!
Los elementos de base del M odelo Jerarquizado son registros lógicos que se únen
entre sí, mediante punteros, para construir un árbol valorado. Como árbol valorado se
entiende que es aquel árbol cuyos nodos son tipos de registros lógicos y a la vez están
valorados.
Una árbol valorado tiene una estructura puramente de arboles n-arios, y mantiene las
estructuras y limitaciones de éste; un conjunto de registros y enlaces donde existe una única
raíz (distinguido por ser el único que no recibe ninguna flecha), desde la que se desprenden
los demás registros. Como enlaces se representan a los punteros (apuntadores a direcciones
físicas) que puntan a registros que contienen información relacionada jerárquicamente con
otra. Los enlaces son asociaciones entre exactamente dos registros. Cada registro padre,
puede tener muchos hijos, y cada hijo puede tener un solo padre. No hay enlaces entre
hermanos (como hermanos entendemos dos registros hijos de un mismo padre, aunque hay
otros tipos de implementación que sí los permiten).
A
C
D
E
F
G
&
B
H
6
SEGMENTOS O REGISTROS
Distinto tipo de Relaciones entre segmentos:
De 1:n: Es cuando el segmento padre tiene dos o mas segmentos hijos.
C
D
B
!
A
&
De 1:1: Es cuando el segmento padre se relaciona con un único hijo.
árbol.
A
B
Se definen los conceptos de: Niveles (o altura) del árbol, M omento y peso de un
7
Altura (o Niveles) de una árbol:
Se define como la altura de un árbol a la cantidad de "líneas" formadas por los
registros de un árbol.
Ejemplo de Altura o nivel:
línea 0
Nivel 0: Por definición el nivel 0
es el primer nivel del Arbol donde
se encuentra localizada solamente
la raíz .
!
A
Niveles mayores a 0: ( La letra que tiene dentro de cada segmento representa el nivel de
este y no la imformación del mismo).
Nivel o Línea A o 0
Nivel o Línea B
A
B
Líneas C
C
C
C
&
C
B
Momento de un árbol:
Se entiende por momento de un árbol como los valores contenidos en éste en un
instante dado. Un momento en un árbol determinado varía según la información contenida
en él cambia o es actualizada (éstos cambios son producidos por que en la vida real, las
entidades varían su información).
Peso de un árbol:
Se define el peso de un árbol como la cantidad de hojas que contiene un árbol.. Cada
hoja se distingue por ser un nodo del que no se desprenden enlaces (flechas).
8
OTROS TIPOS DE IMPLEMENTACIÓN:
*) Con otros tipos de enlace:
Cada nodo del árbol contiene un puntero hacia el hijo_mas_a_la_izquierdo y un
puntero al hermano_siguiente. El puntero hijo_mas_a_la_izquierdo apunta a un hijo, el
puntero hermano_siguiente apunta a otro hijo del mismo padre.
*) Introduciendo registro virtuales:
!
La estructura del árbol es exactamente la misma para todos los nodos, excepto en
aquellos en los que un puntero referencia a un registro ya existente creando un duplicado.
En éstos casos el registro virtual consiste en una referencia lógica al registro ya existente,
para que cualquier cambio que afecte a ése registro se vea reflejado en cada nodo que lo
referencie.
Ejemplo Gráfico de registro virtual:
El registro A necesita del reg B y el B necesita del reg A, para que la información no sea
redundante, se guarda un único registro físico de cada uno y se accede a los mismos
mediante registros virtuales que solo contienen punteros a las direcciones de los registros
físicos
&
A
B (virtual)
B
A (virtual)
Otras Clasificaciones de Arboles:
También las estructuras jerárquicas tienen una clasificación según su ramificación. Un
árbol puede tener enlaces (o punteros) a uno o más tipos de registro (hijo). Según éste
concepto, los árboles pueden ser:
9
Lineales:
Se clasifica así a un árbol cuando éste posee una estructura en el cuál un registro
padre puede tener un solo tipo de registro hijo.
Arborescente propiamente dicha:
Se clasifica así a un árbol cuando éste posee una estructura en la cuál un padre sólo
puede tener varios tipos de registro hijo.
Ventajas y desventajas de la implementación jerárquica de las bases de datos
!
Ventajas:
1) Un árbol con todo su entrerramado de relaciones, en el que la conexión es fija y
sólo puede ser cambiada modificando una porción de código, suministra, sin
embargo, la ventaja de que la navegación se realiza de una forma muy rápida.
2) Es fácil de ver la estructura de la base de datos.
3) Su implementación es sencilla y rápida de implantar.
4) Se puede predefinir relaciones, lo que simplifica las variaciones a futuro
Desventajas:
1) Puede dar lugar a la consistencia de los datos cuando se llevan a cabo
actualizaciones.
2) Resulta inevitable el desaprovechamiento de espacio.
&
{ Solución: una solución es introducir el concepto de registro virtual. Reste tipo
de puntero no contiene ningún valor de dato, sino un puntero lógico a un registro
físico concreto. Cuando hay que replicar un registro en varios arboles de una base
de datos, se guarda una sola copia de ése registro en uno de los árboles y se
sustituyen los demás registros por registros virtuales que contiene un puntero a ése
registro físico.}
3) La extracción de la información de una unidad que se encuentra varios niveles
abajo requiere navegar por un camino a través de las unidades y sus relaciones
hasta llegar a ella.
4) Presenta la desventaja de que es necesario un conocimiento en profundidad de
las unidades de información y de sus relaciones entre sí. Adicionalmente,
combinar la información de unidades que residen en ramas muy separadas de
la estructura arbórea es una tarea que consume tiempo y esfuerzo.
5) Las operaciones de insertar y borrar son complejas.
6) Las relaciones Nodo a Nodo pueden ser implementadas de una forma no
muy eficiente, pues para hacerlo se genera redundancia.
10
La función de manipulación de datos de los modelos jerárquicos
&
!
La manipulación de datos jerárquicos necesita localizar ( seleccionar) 1ª los datos sobre los
que se va a trabajar para realizar a continuación la acción de recuperación o actualización
sobre dicho datos.
A) Localización o selección .
La función de selección jerárquica es de tipo navegacional, es decir, trabaja registro a
registro. Dada la sencillez del modelo, la función de selección es también muy sencilla,
existiendo únicamente la siguientes forma básicas de búsquedas:
- seleccionar un determinado registro que cumpla una cierta condición. En el lenguaje
DL/I se realizara este tipo de sección mediante una sentencia (GET UNIQUE -GU-)
que activara el primer registro que cumpla con la condición especificada en el
predicado que acompaña a la sentencia.
- Seleccionar el siguiente registro, que se encuentra perfectamente definido al existir un
único camino jerárquico. También en este caso se puede especificar una condición que
abra de cumplir el registro para ser seleccionado. DL/I se utiliza una sentencia (GET
NEXT -GN-) que selecciona y al mismo recupera el siguiente registro en el preorden.
- Seleccionar el siguiente registro dentro de un padre. Esta sentencia (GET NEXT
PARENT -GNP-) es análoga a la anterior, pero la selección termina cuando no halla
mas descendientes de ese padre.
- Seleccionar al registro padre de otro dado (que ha sido activado previamente) se
conoce como normalización jerárquica Ascendente, mientras que la selección de
descendientes se llama normalización jerárquica descendente.
B) Acción
Una vez seccionado un registro, se tendrá que realizar sobre el una acción, sea de
recuperación o de actualización.
La recuperación, que va asociada a la selección en el DL/I, consiste en llevar el registro
marcado como activo en la sección realizada previamente al área de entrada/salida. Se
utiliza la sentencia GET.
En cuanto a la actualización ,es precisó distinguir entre :
- Insertar un conjunto de datos (INSERT -ISRT-).
- Borrar un conjunto de datos(DELETE -DLETE-).
- Reemplazar - modificar - uno o varios campos de un registro (REPLACE -REPL-).
Debido a la naturaleza jerarquiza de la conexiones entre registros , las inserciones y
borrados de registros requieren consideraciones especiales:
- Cuando un nuevo registro se inserta en una base de datos jerárquica, excepto para la
raíz tiene que ser conectado a un nodo padre previamente seleccionado mediante
alguna sentencia de selección .El nuevo registro se inserta como hijo del registro
seccionado.
- Cuando un registro se borra en una base de datos jerárquica, excepto si se trata de una
hoja , se han de borra todos los registros descendientes de el .
11
Una instrucción de un lenguaje de manipulación constara con:
- Un operador que indica el tipo de operación a realizar.
- Los datos sobre los se lleva a cabo la operación.
- Una condición ,que servirá para seleccionar un conjunto de datos sobre el que se desea
trabajar, y que es una expresión de tipo lógico, es decir, constantes y variables unidas
por operadores de comparación y el álgebra de Bolee.
-
CUADRO COMPARATIVO DE LOS MODELOS DE
DATOS
Fueron los primeros en aparecer.
Se puede visualizar como una estructura en árbol.
Son bastante rígidas. Una vez diseñada la base de datos, es complejo
cambiarla y, además, es necesario un conocimiento amplio de la
forma en la que se han almacenado los datos para poder
recuperarlos de forma efectiva.
Dominaron el mercado en sus comienzos
Han ido decayendo y actualmente no se encuentran en el mercado.
MODELO DE
RED
Fueron una evolución del modelo jerárquico.
Cada uno de los registros están enlazados entre sí, pero no
necesariamente siguiendo una estructura en árbol.
Elimina parte de las rigideces del modelo jerárquico, pero aumenta
la complejidad para modificar la estructura de la base de datos.
A pesar de su buen rendimiento, el número de instalaciones ha sido
pequeño y, hoy en día, no se encuentran en el mercado.
Sin embargo, aún quedan instalaciones de este modelo, que
responden con gran eficiencia y plena satisfacción de sus usuarios.
&
!
MODELO
JERÁRQUICO
MODELO
RELACIONAL
Fue el último en aparecer
Los datos se representan como un conjunto de tablas
bidimensionales compuestas de filas y columnas. Cada fila
representa una relación entre un conjunto de valores y está
identificada por una clave única.
Son muy flexibles y de fácil manejo
Un factor decisivo en la implantación de los SGBDs relacionales, ha
sido el lenguaje SQL (Structured Query Language) para la
interrogación y el manejo de datos del modelo relacional.
Es el modelo dominante en la actualidad.
Se encuentra actualmente en el mercado
12
CONCLUSION
!
Las bases de datos jerárquicas pierden simplicidad a medida que el factor “volumen
de la información” va tomando magnitud de cantidad. El M odelo jerárquico es una simple
versión de una base de datos con formato de árbol n-ario, sirve y funciona muy bien en
sistemas que en el mundo real sólo poseen entidades que no se relacionan de otra forma que
1 a N, es decir que éste tipo de sistemas están seriamente limitados en cuanto a su
adaptación natural mediante las diferentes inclinaciones que deberían tener sus
componentes. Este no es el objetivo de una base de datos (Limitar un sistema en cuanto su
adaptación con el medio), es por eso que éste tipo de modelo no es conveniente para
“modelar” un sistema de grandes volúmenes de información que además se encuentran en
una muy estrecha relación con el medio en que se desenvuelven.
El Modelo jerárquico falla en su concepto principal de enfoque, esto es, ver a la
base de datos como una colección de datos relacionados por una “jerarquía” cuando en
realidad la base de datos es una colección de datos relacionados con otros datos por medio
de relaciones de dependencias e independencias existentes de acuerdo a su funcionalidad
respecto de otros datos.
En el futuro la mayoría de las organizaciones cambiarán la forma convencional de
manejo de la información a la arquitectura de base de datos a las ventajas derivadas de su
uso. El uso de las bases de datos distribuidas se incrementará de manera considerable en la
medida en que la tecnología de comunicación de datos brinde más facilidades para ello. El
uso de bases de datos facilitará y soportará en gran medida a los Sistemas de Información
para la Toma de Decisiones.
&
A pesar de que los avances en el campo de los SGBDs han sido muy grandes y de que los
SGBDs actuales proporcionan un rendimiento muy elevado, aún están lejos de satisfacer
todas las demandas de las aplicaciones más avanzadas. Siguen existiendo hoy en día
numerosas áreas científicas e industriales, en las que los SGBDs relacionales están
escasamente introducidos. Muchos de estos campos exigen la manipulación de nuevos
tipos de información o suponen unos volúmenes de datos de difícil manejo por los sistemas
actuales.
13
BIBLIOGRAFIA
Bases de Datos y sistemas relacionales
(Claude DELOBEL- Michael ADIBA).
!
Fundamento de Bases de Datos
(Abraham SILBERSCHATZ- Henry F. KORTH - S. SUDARSHAN
&
REFERENCIAS EN PAGINAS WEB
14
Descargar