Nos encontramos en plena era de las Bases de Datos Distribuidas
Carmen Costilla, Profesora Titular de la ETSI de Telecomunicación de la UPM (I/II)
Partiendo de un análisis histórico, Carmen Costilla, realiza un completo repaso a la tecnología actual de bases de datos, con especial atención a las bases de datos distribuidas.
¿Cuáles han sido, desde su punto de vista, los mayores avances experimentados en el campo de las bases de datos en la última década? - En estos diez últimos años se han abierto interesantísimas posibilidades para las bases de datos y los sistemas de información. Han surgido nuevas ramas desde un punto de partida que podríamos llamar software centralizado de bases de datos (ANSI/X3/SPARC) junto a una tecnología relacional clásica (SQL/ISO,1987). A mi entender, la tecnología de bases de datos está en el ojo del huracán de la continua revolución informática en la que vivimos, y yo diría que hay dos grandes aspectos que son el germen de estos recientes avances. El primer aspecto es la integración de la tradicional tecnología de bases de datos en el mundo de la interconexión de los sistemas abiertos (ISO/OSI). Ya nadie considera a las bases de datos como universos aislados y autosuficientes que residen en una sola máquina (eso es historia pasada). Vivimos en un mundo cada vez más y mejor interconectado, donde las distancias lógicas (para el acceso a la información automatizada) tienden a cero rápidamente. Las redes de ordenadores cubren una buena parte de nuestro planeta, y, como si de hardware se tratara, ellas hacen posible que las bases de datos y los sistemas de información tradicionales hayan evolucionado y cooperen entre sí, aunque cada isla de información venga a veces de distintos mundos informatizados y cada base de datos resida en máquinas distintas y distantes. Por tanto, el primer avance a resaltar es que nos encontramos en plena era de las Bases de Datos Distribuidas.El segundo aspecto se debe a la adopción de nuevos modelos de datos semánticos, con mayor riqueza expresiva que el modelo relacional. En grandes líneas, estos modelos semánticos pretenden lograr un doble objetivo: primero, permitir diseñar nuevas bases de datos para partes del mundo real que son más complejas (en su propia naturaleza) que el tipo de problemas clásico abordado y modelado, con éxito, desde la tecnología relacional (CAD/CAM, VLSI, por ejemplo); y segundo, lograr una cooperación real y efectiva entre islas de información preexistentes y, a ser posible, mediante federación en una globalidad, integrada y persistente (a través de un esquema conceptual común y global), para lo que también se precisa un potente modelo de datos semántico.Por las razones dadas en el segundo aspecto, se justifica de sobra la actual tendencia a incluir el paradigma orientado a objetos en la tecnología de bases de datos. Es decir, se justifica la necesidad de las bases de datos orientadas a objetos, -BDO-. No hay un estándar, como sabemos, en las BDO y los productos de hoy son bastante dispares. Existen dos tendencias en los sistemas de BDO, -SBDO-, una planteada como revolucionaria respecto a la tecnología relacional, y otra planteada como evolutiva desde la tecnología relacional porque pretende añadir a ésta nuevas formas de abstracción, con estructuras no planas incorporando mecanismos de generalización, herencia, etc. Por otro lado, hay que mencionar la inclusión de la lógica y la capacidad de deducción en las bases de datos relacionales, en lo que se denomina bases de datos deductivas. La fusión de estos avances en las bases de datos se llama, a veces, bases de datos expertas. Yo diría que, dentro del mundo que tilda a las bases de datos como nuevas o avanzadas, está subyaciendo siempre la idea de la interconexión de los sistemas abiertos y de las bases de datos abiertas.En resumen, un universo de información cerrado en una máquina ya no tiene ningún interés, y carece de sentido plantearse hoy nuevos proyectos de bases de datos con un enfoque centralizado, aislado. A partir del acceso remoto a bases de datos (RDA), se incorporan a la tecnología algoritmos y conceptos de bases de datos distribuidas, algunos de ellos están bien asentados desde principios de los ochenta. Por ejemplo, el libro de S. Ceri and G. Pelagatti. (Distributed Databases.
Principles and Systems. New York, McGraw Hill) de 1984, hablaba ya de criterios de fragmentación, algoritmos de ubicación, minimización de costes, procesamiento de consultas distribuidas, optimizadores para la distribución, etc. Para estas técnicas de distribución de las bases de datos, ya disponemos hoy de productos en el mercado bastante buenos.
Dada su gran experiencia en el campo de bases de datos distribuidas, querríamos centrar esta entrevista en dicho campo.
Para comenzar, ¿podría explicar brevemente el concepto de base de datos distribuida y las causas que la convierten en uno de los temas más candentes en el área de las bases de datos? - Cuando se habla de BD relacionales distribuidas homogéneas y diseñadas de arriba hacia abajo (top down) como un todo informativo, este concepto significa algo muy sencillo y muy potente a la vez, algo que los usuarios de BD conocen desde las centralizadas. Un usuario de estas BDD trabaja al nivel lógico o externo, escribiendo aplicativos o lanzando consultas hacia un sistema de esta naturaleza, de la misma manera que lo hacía en el enfoque centralizado. Es decir, con tecnología relacional distribuida los aplicativos y las consultas a la BDD se programan de la misma forma que en las centralizadas. El principio de la distribución en estos sistemas implica la existencia en su software de unas capas de ocultación que proporcionan: independencia de los datos (física y lógica) -que ya conseguían las bases de datos centralizadas-, independencia de la fragmentación, independencia de la ubicación de esos fragmentos, independencia de la replicación e independencia del lenguaje que ha llevado a distribuir esos datos.
Por tanto, bajo el punto de vista lógico tenemos una BD distribuida (si hablamos de tecnología relacional homogénea) tal como se tenía en las relacionales centralizadas; la diferencia está en cómo se hace el diseño de la BDD y en el nivel físico de la BD (donde los valores de los datos están dispersos geográficamente entre distintas localidades).La tecnología relacional distribuida es muy potente porque, al día de hoy, estos sistemas son los más inteligentes para comunicar información útil entre distintas máquinas y localidades, intercambiando (en las respuestas a las consultas que acceden a las BDDs) sólo aquella información que realmente se ha pedido y que no reside en su máquina. Por tanto, los gastos de comunicación de datos son los mínimos posibles, cosa importante para el mundo del negocio. La diferencia de costes de comunicación de datos es muy notable si la comparamos con un FTAM, o con el correo electrónico (donde, a menudo, se comunica más información que la deseada o se comunica lo que al usuario receptor no le interesa).
¿Cuáles fueron los objetivos que se marcó la tecnología de Bases de Datos Distribuidas? ¿Cree que se han cumplido, y que los productos existentes, atienden, de manera satisfactoria, las exigencias de los usuarios? - Es preciso aclarar primero que hay distintas formas de distribución. Acabo de referir, en el punto anterior un tipo de objetivo, ya logrado, que es el más avanzado y eficaz que tenemos para distribuir los datos de una BD. Pero, en general, los objetivos de la tecnología de BDD son variopintos, porque varias son las técnicas que se han desarrollado en los actuales productos comerciales, y, en buena medida, ello se debe a los distintos puntos de partida tecnológicos de cada caso y de cada empresa. Cada técnica a seguir depende de los distintos objetivos globales que se quieran alcanzar. Voy a intentar explicarlo, ya que la novedad del tema, por un lado, y la velocidad con que se generan resultados, por otro, hace que existan hoy algunos equívocos y confusiones para los usuarios que, al fin y al cabo, son los destin