TEMA 18 MODELOS DE DATOS PRIMITIVOS OBJETIVOS DEL TEMA • Conocimiento de la estructura de las primeras Bases de Datos 1.- MODELOS DE DATOS PRIMITIVOS Cuando la gestión de base de datos se popularizó durante los años setenta y los ochenta, emergieron un grupo de modelos de datos populares. Antes de la introducción de los sistemas de bases de datos, todos los datos permanecían en archivos individuales. Entonces un sistema de gestión de archivos, generalmente proporcionado por el fabricante de la computadora como parte del sistema operativo, llevaba la cuenta de los nombres y ubicaciones de los archivos. El sistema de gestión de archivos básicamente no tenía un modelo de datos, no sabía nada acerca del contenido de los archivos. Si la estructura de los datos cambiaba, por ejemplo añadiendo un nuevo campo a una tabla, todos los programas que accedían al fichero tenían que ser modificados. Según crecía el número de archivos y programas, todo el esfuerzo de procesamiento de datos se iba perdiendo en mantener las aplicaciones existentes en lugar de desarrollar otras nuevas. 2.- BASES DE DATOS JERÁRQUICA Sistemas de Bases de Datos Jerárquicas: Están organizadas bajo una estructura de árbol, el problema que presentan es que la relación sólo se presenta en un sentido y dirección. Uno de los sistemas más populares fue el Information Management System (IMS) de IBM. Las ventajas del IMS y su modelo jerárquico son las siguientes: • Estructura simple: La organización de un sistema IMS era fácil de entender. La jerarquía de la base de datos se asemejaba al diagrama de organización de una organización o a un árbol familiar. • Organización Padre/Hijo : Una base de datos IMS era excelente para representar relaciones padre/hijo tales como A es una pieza de B, o A es propiedad de B. • Rendimiento: IMS almacenaba las relaciones padre/hijo como punteros, por lo que el movimiento a través de la base de datos era rápido. Este es un esquema poco flexible por lo que surge la idea de eliminar la deficiencia del Sistemas de Base de Datos Jerárquica y se crea el Sistema de Bases de Datos de Red. 3.- BASES DE DATOS EN RED. La estructura sencilla de una base de datos jerárquica se convertía en una desventaja cuando los datos tenían una estructura más compleja. En una base de datos de procesamiento de pedidos, por ejemplo, un solo pedido podía participar en tres relaciones padre/hijo diferentes: Ligando el pedido al cliente que lo remitió, al proveedor que lo aceptó y al producto ordenado. Esta estructura pues, no se ajustaba a la estricta estructura jerárquica de IMS. Para manejar aplicaciones tales como el procesamiento de pedidos, se desarrolló un nuevo modelo de datos en red. El modelo de datos en red extendía y el modelo jerárquico permitiendo que un registro participara en múltiples relaciones padre/hijo. Estas relaciones eran conocidas como conjuntos en el modelo en red. Este sistema se fue imponiendo frente a las estructuras jerárquicas pues presentaban las siguientes ventajas: • Flexibilidad: Las múltiples relaciones padre/hijo permitían presentar datos que no tuvieran una estructura jerárquica sencilla. • Normalización: Dado que se realizó bajo el estándar CODASYL se reforzó la popularidad de dicho modelo. • Rendimiento: A pesar de su mayor complejidad, las bases de datos en red reforzaron el rendimiento, aproximándolo al de las bases de datos jerárquicas. Los conjuntos se representaron mediante punteros a registros de datos físicos. Sin embargo, no todo eran ventajas, pues las relaciones de conjunto y la estructura de los registros tenían que ser especificadas de antemano. Modificar la estructura de la base de datos requería generalmente la reconstrucción de la base de datos completa. RESUMEN DEL TEMA 18 La evolución de las BD ha seguido los siguientes procesos: • Tablas planas: Cada tabla se almacena en un fichero, y no hay ninguna relación entre ellos. Son las aplicaciones que acceden a la BD las encargadas de gestionarlas. • Base de datos jerárquica. La estructura es en árbol. Ideal para representar relaciones padre/hijo. No es eficaz cuando una tabla se relaciona con más de una tabla. • Bases de datos en red. Es una BD jerárquica evolucionada pues permite relacionar una tabla con más de una.