En esta sección se explican las características principales que puede tener un sbdd, y al mismo tiempo los vamos a clasificar de acuerdo a tres dimensiones: autono- mía, heterogeneidad y distribución de datos.
Figura 3.3. Clasificación y características de los sbdd
Como ilustra la figura 3.3, estas tres dimensiones se corresponden con tres crite- rios de clasificación independientes entre sí, lo cual significa que existe un amplio rango de posibles sbdd con diferentes características y adaptados para resolver problemas de muy diversa índole. En esta sección se desarrolla el significado de cada una de estas dimensiones y las características de los principales tipos de sbdd.
4.1. Autonomía local de los nodos
Un nivel de autonomía alto permite que todas las decisiones que afectan a un nodo se decidan en ese nodo y que no dependa de otros para ejecutar sus propias operaciones. Los sbdd con mayor nivel de autonomía son los sistemas federados. A diferencia de los sistemas federados, los nodos de los sistemas distribuidos to- talmente integrados presentan un nivel de autonomía muy bajo, ya que no pueden ejecutar muchas de sus operaciones sin antes considerar su efecto sobre el sbdd. Cada base de datos que participa en una federación tiene sus propios usuarios lo- cales a los que debe proporcionar el mismo acceso a los datos que si no formara parte de la federación. Es decir, los usuarios locales pueden acceder a la base de datos local a través de su esquema local, el cual se exporta total o parcialmente a la federación (figura 3.4). Los usuarios del sbdd global se gestionan por separado y acceden al sistema a través del esquema de datos federado, que es la composición de los diferentes esquemas exportados por cada nodo de la federación. Se permite que cada nodo modifique su esquema local independientemente, siempre y cuando el esquema que exportan no se vea alterado. Es posible definir vistas tanto sobre el esquema federado global, como sobre cada esquema local.
Figura 3.4. Sbdd federado
Por el contrario, los sistemas integrados (figura 3.5) proporcionan a los usuarios un único esquema de datos, el cual integra totalmente los esquemas locales de cada nodo. Las bases de datos locales no tienen autonomía para tener sus propios usuarios, sino que la única manera de acceder a los datos es a través del esquema integrado global de la base de datos distribuida. Tampoco se permite que los es- quemas locales sean modificados independientemente, ya que cualquier modifica- ción a un esquema local afectaría al global. Sobre el esquema integrado global se pueden definir vistas de usuario.
4.2. Heterogeneidad de datos y sistemas
La heterogeneidad de los sbdd se debe a que los nodos que lo componen pue-
den utilizar diferentes sistemas hardware, protocolos de red, lenguajes de consul- ta, protocolos de control de transacciones, e incluso diferentes modelos de datos como puede ser el relacional y el orientado a objetos. Un sgbdd puede soportar diferentes niveles de heterogeneidad haciendo que todos los problemas que eso conlleva sean transparentes para los usuarios. Muchas veces la heterogeneidad de los sbdd viene definida por los requisitos de las aplicaciones que deben soportar ya que pueden requerir manejar datos con formatos muy diferentes. Sin embargo, en otras muchas ocasiones el nivel de heterogeneidad del sistema es consecuencia de que el sbdd a construir resulta de la composición de unos sistemas no distribuidos que ya existían previamente y que habían sido desarrollados independientemente.
4.3. Distribución de los datos
Teniendo en cuenta la manera en que se distribuyen los datos por los nodos, los sbdd se pueden dividir en dos grupos. Por una parte, están los sistemas peer-to- peer o totalmente distribuidos, donde cada nodo de la red es un sgbd totalmente funcional, que además tiene la capacidad de poderse comunicar con otros nodos para ejecutar consultas y transacciones, y así compartir todos o algunos de sus datos. El caso opuesto es el de los sistemas cliente/servidor, que clasifican los nodos del sbdd en dos grupos separados: los nodos servidores y los nodos cliente. Los nodos cliente dependen completamente de los nodos servidores ya que les proporcionan el acceso a los datos compartidos, y viceversa, los nodos servidores solamente pueden ser accedidos a través de un nodo cliente. En estos sistemas, los nodos servidores gobiernan los accesos y gestionan los datos, mientras que los nodos cliente simplemente tienen capacidad de dar acceso para realizar consultas y ejecutar aplicaciones.
Dimensión Autonomía Heterogeneidad Distribución Las tres dimensiones Nivel alto Federados Heterogéneos Peer-to-Peer Múltiples BD Nivel bajo Integrados Homogéneos Cliente/Servidor BD centralizadas
Tabla 3.1. Principales tipos de sbdd
Como muestra la última columna de la tabla 3.1, las bases de datos centralizadas no presentan autonomía, ni heterogeneidad ni distribución de datos. En el otro ex- tremo están los sistemas de múltiples bases de datos que presentan un alto nivel de autonomía, heterogeneidad y distribución. En realidad, los sistemas de múltiples bases de datos están formados por varias bases de datos que siendo totalmente independientes están dispuestas a proporcionan sus datos para que sean integrados a un esquema global. Por esta razón también se les denomina sistemas de integra- ción de información. Al final del capítulo dedicaremos varias secciones a estudiar estos sistemas.