SGBD y Su Evolucion
En los años 60´s y 70´s los SGBD eran sistemas totalmente centralizados como correspondía a los sistemas operativos y al hardware de aquellos años. Ejemplo de esto fueron: IMS de IBM, IDS de Bull, DMS de Univac, entre otras en la cual un gran ordenador era para toda la empresa y una red de terminales sin inteligencia ni memoria. Los SGBD de los años setenta eran demasiado complejos e inflexibles, y sólo los podía utilizar un personal muy cualificado.
Los primeros SGBD en los años sesenta estaban orientados a facilitar la utilización de grandes conjuntos de datos en los que las interrelaciones eran complejas. El arquetipo de aplicación era el Bill of materials o Parts explosion, típica en las industrias del automóvil, en la construcción de naves espaciales y en campos similares. Estos sistemas trabajaban exclusivamente por lotes (batch). Los SGBD estaban íntimamente ligados al software de comunicaciones y de gestión de transacciones. Se utilizaban lenguajes de alto nivel como Cobol o PL/I, se disponía también de instrucciones y de subrutinas especializadas para tratar las BD que requerían que el programador conociese muchos detalles del diseño físico, y que hacían que la programación fuese muy compleja.
En los años 80´s eran SGBD relacionales aparece ORACLE. Aparecen los ordenadores minis, y después los ordenadores micros extendiendo la informática, exigiendo que el desarrollo de aplicaciones fuese más sencillo.
La aparición de los SGBD relacionales supuso un avance importante para la facilitación de la programación de aplicaciones con BD, en el año 1986 el lenguaje SQL produjo una auténtica explosión de los SGBD relacionales.
Durante los años ochenta aparecen los ordenadores personales y surge el software para equipos Mono-usuario por ejemplo, dBase y sus derivados, Access, con los cuales fue muy fácil crear y utilizar conjuntos de datos. Estos SGBD no aceptaban estructuras complejas ni interrelaciones, ni podían ser utilizados en una red que sirviese simultáneamente a muchos usuarios de diferentes tipos. Ejemplos: SQL y ORACLE.
En los años 90´s los SGBD de distribución la visión global de la empresa y de interrelacionar diferentes aplicaciones que utilizan BD diferentes, junto con la facilidad que dan las redes para la intercomunicación entre ordenadores, ha conducido a los SGBD actuales, que permiten que un programa pueda trabajar con diferentes BD como si se tratase de una sola. Es lo que se conoce como base de datos distribuida.
Esta distribución ideal se consigue cuando las diferentes BD son soportadas por una misma marca de SGBD, cuando hay homogeneidad. En la actualidad, gracias
a la estandarización del lenguaje SQL, los SGBD de marcas diferentes pueden darse servicio unos a otros y colaborar para dar servicio a un programa de aplicación. Las razones básicas por las que interesa esta distribución son la disponibilidad de un sistema con una BD distribuida, el Coste pues una BD distribuida puede reducir el coste.
La tecnología que se utiliza habitualmente para distribuir datos es la que se conoce como entorno (o arquitectura) cliente/servidor (C/S) en la cual dos procesos diferentes, que se ejecutan en un mismo sistema o en sistemas separados, actúan de forma que uno tiene el papel de cliente o peticionario de un servicio, y el otro el de servidor o proveedor del servicio.
Por ejemplo, un programa de aplicación que un usuario ejecuta en su PC (que está conectado a una red) pide ciertos datos de una BD que reside en un equipo UNIX donde, a su vez, se ejecuta el SGBD relacional que la gestiona. El programa de aplicación es el cliente y el SGBD es el servidor.
El éxito de las BD, incluso en sistemas personales, ha llevado a la aparición de los Fourth Generation Languages (4GL), lenguajes muy fáciles y potentes, especializados en el desarrollo de aplicaciones fundamentadas en BD que proporcionan muchas facilidades en el momento de definir, generalmente de forma visual, diálogos para introducir, modificar y consultar datos en entornos C/S. Ejemplo: entorno C/S y lenguaje 4GL.
Tendencias actuales: Hoy día, los SGBD relacionales están en plena transformación para adaptarse a tres tecnología: la multimedia, la de orientación a objetos (OO) e Internet y la web. Sin embargo, algunas aplicaciones no tienen suficiente con la incorporación de tipos especializados en multimedia. Necesitan tipos complejos que el desarrollador pueda definir a medida de la aplicación. En definitiva, se necesitan tipos abstractos de datos: TAD. Los SGBD más recientes ya incorporaban esta posibilidad, y abren un amplio mercado de TAD predefinidos o librerías de clases.
Esto nos lleva a la orientación a objetos (OO). El éxito de la OO al final de los años ochenta, en el desarrollo de software básico, en las aplicaciones de ingeniería industrial y en la construcción de interfaces gráficas con los usuarios, ha hecho que durante la década de los noventa se extendiese en prácticamente todos los campos de la informática. En los SI se inicia también la adopción, tímida de momento, de la OO. La utilización de lenguajes como C++ o Java requiere que los SGBD relacionales se adapten a ellos con interfaces adecuadas. La rápida adopción de la web a los SI hace que los SGBD incorporen recursos para ser servidores de páginas web, como por ejemplo la inclusión de SQL en guiones HTML, SQL incorporado en Java, etc. Notad que en el mundo de la web son habituales los datos multimedia y la OO.
Durante estos últimos años se ha empezado a extender un tipo de aplicación de las BD denominado Data Warehouse, o almacén de datos, que también produce algunos cambios en los SGBD relacionales del mercado. Los datos de este gran almacén, el Data Warehouse, se obtienen por una replicación más o menos elaborada de las que hay en las BD que se utilizan en el trabajo cotidiano de la empresa. Actualmente, los SGBD se adaptan a este tipo de aplicación, incorporando, por ejemplo, herramientas para la creación y el mantenimiento de réplicas, con una cierta elaboración de los datos, para consolidación de datos de orígenes diferentes y para la creación de estructuras físicas que soporten eficientemente el análisis multidimensional.