Bases de Datos Jerárquicas
Una base de datos jerárquica es un tipo
de sistema de gestión de bases de datos que, como su nombre indica,
almacenan la información en una estructura jerárquica que enlaza los registros
en forma de estructura de árbol (similar a un árbol visto al revés),
en donde un nodo padre de información puede tener varios
nodos hijo.
Esta relación jerárquica no es estrictamente obligatoria, de
manera que pueden establecerse relaciones entre nodos hermanos. En
este caso la estructura en forma de árbol se convierte en una estructura en
forma de grafo dirigido. Esta variante se denomina Bases de
datos de red.
Los datos se almacenan en la forma de registros,
el equivalente a las tuplas del modelo relacional. Cada
registro consta de un conjunto de campos, el equivalente a
los atributos del modelo relacional. Un conjunto de registros
con los mismos campos se denomina fichero (record type,
en inglés), el equivalente a las relaciones del modelo
relacional.
El modelo jerárquico facilita relaciones padre-hijo,
es decir, relaciones 1:N (de uno a varios) del modelo relacional. Pero a
diferencia de éste último, las relaciones son unidireccionales. En justicia,
dichas relaciones son hijo-padre, pero no padre-hijo.
Por ejemplo, el registro de un empleado (nodo hijo) puede
relacionarse con el registro de su departamento (nodo padre), pero
no al contrario. Esto implica que solamente se puede consultar la base de datos
desde los nodos hoja hacia el nodo raíz. La
consulta en el sentido contrario requiere una búsqueda secuencial por todos los
registros de la base de datos (por ejemplo, para consultar todos los empleados
de un departamento). En las bases de datos jerárquicas no existen índices que
faciliten esta tarea.
Obsérvese que, a priori, no existen relaciones N:M (de
muchos a muchos) en el modelo jerárquico. Salvo que se simulen mediante varias
relaciones 1:N. No obstante, esto puede provocar problemas de inconsistencia,
ya que el gestor de base de datos no controla estas relaciones.
Como ya se ha mencionado, las relaciones se establecen
mediante punteros entre registros. Es decir, un registro hijo contiene
la dirección física en el medio de almacenamiento de su registro padre.
Esto tiene una ventaja fundamental sobre las bases de datos relacionales: el
rendimiento. El acceso de un registro a otro es prácticamente inmediato sin
necesidad de consultar tablas de correspondencia.
Las relaciones jerárquicas entre diferentes tipos de datos
pueden hacer que sea muy sencillo responder a determinadas preguntas, pero muy difícil
el contestar a otras.
Bases de datos Relacionales
Una base de
datos relacional es una base de datos que cumple
con el modelo relacional, el cual es el modelo más utilizado en la actualidad para
implementar bases de datos ya planificadas. Permiten establecer interconexiones
(relaciones) entre los datos (que están guardados en tablas), y a través de
dichas conexiones relacionar los datos de ambas tablas, de ahí proviene su
nombre: "Modelo
Relacional". Tras ser postuladas sus bases en 1970 por Edgar Frank Codd, de los laboratorios IBM en San José (California), no
tardó en consolidarse como un nuevo paradigma en los modelos de base de datos.
·
Una base de datos relacional se
compone de varias tablas o relaciones.
·
No pueden existir dos tablas con el mismo nombre ni
registro.
·
Cada tabla es a su vez un conjunto
de registros (filas y columnas).
·
La relación entre una tabla
padre y un hijo se lleva a cabo por medio de las claves primarias y ajenas (o
foráneas).
·
Las claves primarias son la clave principal de un
registro dentro de una tabla y éstas deben cumplir con la integridad de
datos.
·
Las claves ajenas se colocan en la tabla hija,
contienen el mismo valor que la clave primaria del registro padre; por medio de
éstas se hacen las relaciones.
Ventajas
·
Provee herramientas que garantizan evitar la
duplicidad de registros.
·
Garantiza la integridad referencial, así, al
eliminar un registro elimina todos los registros relacionados dependientes.
·
Favorece la normalización por ser más comprensible
y aplicable.
Desventajas
·
No se manipulan de forma manejable los bloques de
texto como tipo de dato.
·
Las bases de datos orientadas a
objetos (BDOO) se propusieron con el objetivo de satisfacer las
necesidades de las aplicaciones anteriores y así, complementar pero no
sustituir a las bases de datos relacionales.
No hay comentarios:
Publicar un comentario