jueves, 15 de septiembre de 2011

Datos del creador

Alumno: Kong Ramos, Carlos Jesús Fernando
Curso: Base de Datos
Ciclo: 2011-2
Profesor: Luis Serna Jherry

El modelo de datos Jerárquico

Detalle las estructuras de una base de datos de modelo jerárquico

Las estructuras jerárquicas se clasifican también como:
- Lineales: es un caso particular y simple en el que cada tipo de registro padre sólo puede tener un tipo de
registro hijo, donde se muestra la interrelación entre DEPARTAMENTO y EMPLEADO.

-Arborescente propiamente dicha: un tipo de registro padre puede tener varios tipos de registro
descendientes.


Los Vínculos virtuales Padre-Hijo

La relación PADRE/HIJO en la que se apoyan las bases de datos jerárquicas, determina que el camino de
acceso a los datos sea ÚNICO; este camino, denominado CAMINO SECUENCIA JERÁRQUICA, comienza
siempre en una ocurrencia del segmento raíz y recorre la base de datos de arriba a abajo, de izquierda a derecha y
por último de adelante a atrás.

La restricciones de integridad en el modelo jerárquico

  • Toda alta, a no ser que corresponda a un nodo raíz, debe tener un padre. Por ejemplo, sería imposible insertar en la base de datos de la Figura 12 un alumno que aún no tuviera asignado profesor.
  • Se podría resolver el problema creando un padre ficticio para este registro, pero con ello se complicaría la labor del usuario de la base de datos, que tendría, cuando deseara conectar el registro a su padre real, que eliminarlo de la base de datos y volver a introducirlo ligado a su verdadero padre Además, el sistema no podría distinguir entre padre ficticio y real y cuando contara el número de profesores de la base de datos nos daría uno más.
  • La baja de un registro implica que desaparezca todo el subárbol que tiene dicho registro como nodo raíz, con lo que pueden desaparecer datos importantes que convendría conservar en la base de datos.
El Uso de la transformación ER - Jerárquico para el diseño de bases de datos jerárquicas:

Ya se han señalado los inconvenientes que presenta el modelado del mundo real según esquemas jerárquicos,
y también hemos indicado una técnica de diseño jerárquico que consiste en introducir redundancias.


Se podría evitar la pérdida de simetrías introduciendo mucha mayor redundancia, donde se presenta la transformación de un esquema E/R con dos entidades y una interrelación N:M es
un esquema jerárquico en el que existen dos árboles, de modo que se conservan las simetrías naturales, ya que los algoritmos para dos preguntas simétricas, como son recuperar los alumnos de un profesor y recuperar los profesores de un alumno, serían también simétricos.
Soluciones de este tipo no son en absoluto eficientes.
A partir del modelo E/R, vamos a analizar la forma de transformar algunos tipo, de interrelaciones al modelo jerárquico.

A) Interrelaciones 1:N con cardinalidad mínima 1 en la entidad padre.
En este caso no existe ningún problema y el esquema jerárquico resultante será prácticamente el mismo que en el ME/R


B) Interrelaciones 1:N con cardinalidad mínima 0 en el registro propietario.
El problema es que podrían existir hijos sin padre, por lo que o se crea un padre ficticio para estos casos o se crean dos estructuras arborescentes.


La primera estructura arborescente tendrá como nodo padre el tipo de registro A y como nodo hijo los identificadores del tipo de registro B. De esta forma no se introducen redundancias, estando los atributos de la entidad B en la segunda arborescencia, en la cual sólo existiría un nodo raíz B sin descendientes.

C) Interrelaciones N:M
La solución es muy parecida, creándose también dos arborescencias.


La solución es independiente de las cardinalidades mínimas. Se podría suprimir, en la primera arborescencia o en la segunda, el registro hijo, pero no se conservaría la simetría.
D) Interrelaciones reflexivas
La jerarquía a) se utilizaría siempre que se desee obtener la explosión.
La aplicación de estas normas de diseño evita la introducción de redundancias, así como la pérdida de simetría, pero complica enormemente el esquema jerárquico resultante que estará constituido por más de un árbol, lo que no resulta fácilmente comprensible a los usuarios.



Lenguaje de manipulación Jerárquico:

Una instrucción de un lenguaje de manipulación constará:
- Un operador que indica el tipo de operación a realizar.
- Los datos sobre los que se lleva a cabo la operación.
- Una condición, que servirá para seleccionar el 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 del álgebra de Boole.

Ejemplos de esquema jerárquico:

miércoles, 14 de septiembre de 2011

Modelo de Base de Datos en red

Detalle de la estructura de una Base de Datos de Red:

Los sistemas de base de datos en red al igual que los jerárquicos utilizan punteros físicos En este caso, un padre puede tener muchos hijos y un hijo puede tener muchos padres, es decir, un registro puede estar subordinado a registros de más de un archivo. Es decir, se permite que un mismo nodo tenga varios padres (lo que no se permitía en un modelo jerárquico).

Restricciones en el modelo de Base de Datos de red:

Un modelo de base de datos en red no posee restricciones, ya que una clase puede tener muchos padres.

El uso de la transformación de Entidad Relación a Red para el diseño de bases de datos en red:

Para convertir un modelo Entidad Relación a uno en Red se sigue exactamente el mismo proceso, ya que como sabemos los modelos en Red y Relacionales comparten en su totalidad la estructura.

Además, para la transformación se debe tener en cuenta los siguientes pasos:

  • Toda entidad del modelo entidad-relación se transforma en una tabla.
  • Cualquier atributo de una entidad se transforma en un campo dentro la tabla, manteniendo las claves primarias.
  • Las relaciones N:M se transforman en una nueva tabla que tendrá como clave primaria la concatenación de los atributos clave de las entidades que relaciona.
  • En las relaciones 1:N se pueden tener dos casos:
    • Si la entidad que participa con cardinalidad máxima uno lo hace también con cardinalidad mínima uno, entonces se propaga el atributo de la entidad que tiene cardinalidad máxima 1 a la que tiene cardinalidad máxima N, desapareciendo el nombre de la relación. Si existen atributos en la relación éstos también se propagarán.
    • Si la entidad que participa con cardinalidad máxima uno lo hace también cardinalidad mínima cero, entonces se crea una nueva tabla formada por las claves de cada entidad y los atributos de la relación. La clave primaria de la nueva tabla será el identificador de la entidad que participa con cardinalidad máxima N.
  • En el caso de las relaciones 1:1 también pueden darse dos casos:
    • Si las entidades poseen cardinalidades (0,1), la relación se convierte en una tabla.
    • Si una de las entidades posee cardinalidad (0,1) y la otra (1,1), conviene propagar la clave de la entidad con cardinalidad (1,1) a la tabla resultante de la entidad con cardinalidad (0,1). Si ambas entidades poseen cardinalidades (1,1) se puede propagar la clave de cualquiera de ellas a la tabla resultante de la otra.
  • En el caso de las relaciones N-arias se aplica la misma regla que para las relaciones N:M
  • En el caso de las relaciones reflexivas supondremos que se trata de una relación binaria con la particularidad que las dos entidades son iguales y aplicaremos las reglas vistas en los puntos anteriores.

Un diagrama de estructura de datos de red, especifica la estructura lógica global de la base de datos; su representación gráfica se basa en el acomodo de los campos de un registro en un conjunto de celdas que se ligan con otro(s) registro(s), ejemplificaremos esto de la siguiente manera:

Consideremos la relación alumno-cursa-materia donde la relación cursa no tiene atributos descriptivos:

Ejm1:


Ejm2: