BASE DE DATOS Heterogéneas Arquitecturas de los sistemas de base de datos: La arquitectura de un sistema de bases de datos está influida en gran medida por el sistema informático subyacente en el que se ejecuta, en concreto por aspectos de la arquitectura de la computadora como: • La conexión en red • El paralelismo • La distribución BASE DE DATOS Heterogéneas Arquitecturas de los sistemas de base de datos: La distribución: permite que estos datos residan donde han sido generados o donde son más necesarios, pero continuar siendo accesibles desde otros lugares o departamentos diferentes. El hecho de guardar varias copias de la base de datos en diferentes sitios permite que puedan continuar las operaciones sobre la base de datos aunque algún sitio se vea afectado por algún desastre natural como una inundación, un incendio o un terremoto. BASE DE DATOS Heterogéneas Arquitecturas de los sistemas de base de datos: Se han desarrollado los sistemas distribuidos de bases de datos para manejar datos distribuidos geográfica o administrativamente a lo largo de múltiples sistemas de bases de datos. BASE DE DATOS Heterogéneas Base de datos distribuida: “Es aquella que se almacena en más de un lugar físico y cada uno de éstos es manejado por un DBMS capaz de funcionar independientemente de los otros. Algunos de ellos son completamente distribuidos, otros tienen un alto grado de centralización”. BASE DE DATOS Heterogéneas Base de datos distribuida: Estos sistemas no comparten ni memoria, ni disco y las computadoras utilizadas por los mismos pueden variar en tamaño y función, abarcando desde estaciones de trabajo hasta los grandes sistemas. BASE DE DATOS Heterogéneas Base de datos distribuida: Beneficios e inconvenientes: Reducen la vulnerabilidad de un lugar único central y voluminoso. Permiten el incremento en la potencia de los sistemas al adquirir mini computadoras que son más pequeña y baratas. Incrementan el servicio y la posibilidad de respuesta de los usuarios locales. Base de datos distribuida: BASE DE DATOS Heterogéneas Beneficios e inconvenientes: Los sistemas distribuidos, sin embargo, dependen de la alta calidad de las líneas de telecomunicaciones , las cuales a su vez son vulnerables. Además, las bases de datos locales pueden algunas veces alejarse de las normas y las definiciones de los datos centrales lo cual hace surgir problemas de seguridad al distribuir ampliamente el acceso a datos de alta sensibilidad. BASE DE DATOS Heterogéneas Base de datos distribuida: razones para construir sistemas distribuidos 9Datos compartidos. La principal ventaja de construir un sistema distribuido de bases de datos es poder disponer de un entorno donde los usuarios puedan acceder desde una única ubicación a los datos que residen en otras ubicaciones. 9Autonomía. La principal ventaja de compartir datos por medio de distribución de datos es que cada ubicación es capaz de mantener un grado de control sobre los datos que se almacenan localmente. BASE DE DATOS Heterogéneas Base de datos distribuida: razones para construir sistemas distribuidos 9Disponibilidad. Si un sitio de un sistema distribuido falla, los sitios restantes pueden seguir trabajando. En particular, si los elementos de datos están replicados en varios sitios, una transacción que necesite un elemento de datos en particular puede encontrado en varios sitios. De este modo el fallo de un sitio no implica necesariamente la caída del sistema. BASE DE DATOS Heterogéneas Base de datos distribuida: razones para construir sistemas distribuidos El sistema puede detectar el fallo de un sitio y es posible que sea necesario aplicar apropiadas para la recuperación del fallo. El sistema no debe seguir utilizando los ser sitio que falló. Finalmente, cuando el sitio que falló se recupera o se repara, debe haber mas disponibles para integrado sin problemas de nuevo en el sistema. BASE DE DATOS Heterogéneas Base de datos distribuida: razones para construir sistemas distribuidos La disponibilidad es crucial para los sistemas de bases de datos que se utilizan en aplicaciones de tiempo real. Que por ejemplo, una línea aérea pierda el acceso a los datos puede provocar la pérdida de potenciales compradores de billetes en favor de la competencia. BASE DE DATOS Heterogéneas Base de datos distribuida: razones para construir sistemas distribuidos 9Agilización del procesamiento de consultas: Si una consulta comprende datos de varias localidades, puede ser posible dividir la consulta en varias subconsultas que se ejecuten en paralelo en distintas localidades. Sin embargo, en un sistema distribuido no se comparte la memoria principal, así que no todas las estrategias de intersección para procesadores paralelos se pueden aplicar en estos sistemas. En los casos en que hay repetición de los datos, el sistema puede pasar la consulta a las localidades más ligeras de carga. Base de datos distribuida: BASE DE DATOS Heterogéneas Desventajas de la distribución de los datos: La desventaja principal de los sistemas distribuidos es la mayor complejidad que se requiere para garantizar una coordinación adecuada entre las localidades. El aumento de la complejidad se refleja en: • Costo del desarrollo de software: es más difícil estructurar un sistema de bases de datos distribuidos y por tanto su costo es mayor BASE DE DATOS Heterogéneas Base de datos distribuida: • Mayor posibilidad de errores: puesto que los sitios del sistema distribuido operan en paralelo, es más difícil garantizar que los algoritmos sean correctos. • Mayor tiempo extra de procesamiento: el intercambio de mensajes y los cálculos adicionales son una forma de tiempo extra que no existe en los sistemas centralizados. BASE DE DATOS Heterogéneas Clasificación de las Bases de datos distribuidas: o Homogéneas. o Heterogéneas. BASE DE DATOS Heterogéneas Base de datos distribuida: o HOMOGÉNEA En los sistemas de bases de datos distribuidas homogéneas todos los sitios emplean idéntico software de gestión de bases de datos, son conscientes de la existencia de los demás sitios y acuerdan cooperar en el procesamiento de las solicitudes de los usuarios. BASE DE DATOS Heterogéneas Base de datos distribuida: o HOMOGÉNEA En estos sistemas, los sitios locales renuncian a una parte de su autonomía en cuanto a su derecho a modificar los esquemas o el software de gestión de bases de datos. Ese software también debe cooperar con los demás sitios en el intercambio de la información sobre las transacciones para hacer posible su procesamiento entre varios sitios. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: Las BDs Heterogéneas o Multibase de Datos son aquellas donde Sitios diferentes utilizan diferentes DBMSs, siendo cada uno esencialmente autónomo. Es posible que algunos sitios no sean conscientes de la existencia de los demás y quizás proporcionen facilidades limitadas para la cooperación en el procesamiento de transacciones. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: En las bases de datos distribuidas heterogéneas puede que los diferentes sitios utilicen esquemas y software de gestión de sistemas de bases de datos diferentes. Puede que algunos sitios no tengan información de la existencia del resto y que sólo proporcionen facilidades limitadas para la cooperación en el procesamiento de las transacciones. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: La heterogeneidad se debe a que los datos de cada BD son de diferentes tipos o formatos. El enfoque heterogéneo es más complejo que el enfoque homogéneo y favorece el enfoque ascendente. Es una tecnología reciente y aún existen pocas en el mercado. Hoy en día existe la tendencia a crear software que permita tener acceso a diversas bases de datos autónomas preexistentes almacenadas en SGBD heterogéneos. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: La Heterogeneidad de las BD es inevitable cuando diferentes tipos de BD coexisten en una organización que trata de compartir datos entre éstas. Investigadores han enfocado sus esfuerzos en la exploración de un esquema global que trate de resolver los problemas de la Heterogeneidad, la definición de Protocolos Ínter operables y la integración de las BD. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: ¿Qué es la Interoperabilidad entre las BD? Es el acceso a varias BD con SMBD similares o diferentes. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: Las Bases de Datos Distribuidas Heterogéneas se componen de un conjunto de localidades, cada una de las cuales mantiene un SBD local, éstas pueden procesar transacciones locales (aquellas que se realizan sobre esa localidad). Ejemplo: BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: El tratamiento de la información ubicada en bases de datos distribuidas heterogéneas exige una capa de software adicional por encima de los sistemas de bases de datos ya existentes. Esta capa de software se denomina sistema de bases de datos múltiples. Puede que los sistemas locales de bases de datos empleen modelos lógicos y lenguajes de definición y de tratamiento de datos diferentes, y que difieran en sus mecanismos de control de concurrencia y de administración de las transacciones. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: Los sistemas de bases de datos múltiples crean la ilusión de la integración lógica de las bases de datos sin necesidad de su integración física. La integración completa de sistemas heterogéneos en una misma base de datos distribuida homogénea suele resultar difícil o imposible: BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: Dificultades técnicas. La inversión en los programas de aplicaciones basados en los sistemas de bases de datos ya existentes puede ser enorme, y el coste de transformar esas aplicaciones puede resultar prohibitivo. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: . Dificultades organizativas. Aunque la integración resulte técnicamente posible, puede que no lo sea políticamente, porque los sistemas de bases de datos ya existentes pertenezcan a diferentes empresas u organizaciones. En ese caso es importante que el sistema de bases de datos múltiples permita que los sistemas de bases de datos locales conserven un elevado grado de autonomía para la base de datos local y para las transacciones que se ejecuten con esos datos. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: Vista unificada de los datos Cada sistema local de administración de bases de datos puede utilizar un modelo de datos diferente. Por ejemplo: puede que algunos empleen el modelo relacional, mientras que otros pueden emplear modelos de datos más antiguos, como el de red o el jerárquico. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: Vista unificada de los datos Dado que se supone que los sistemas con bases de datos múltiples ofrecen la ilusión de un solo sistema de bases de datos integrado, hay que utilizar un modelo de datos común. Una opción adoptada can frecuencia es el modelo relacional, can SQL como lenguaje común de consulta. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: Otra dificultad es proporcionar un esquema conceptual común. Cada sistema local ofrece su propio esquema conceptual. El sistema de bases de datos múltiples debe integrar esos esquemas independientes en uno común. La integración de los esquemas es una tarea complicada, sobre todo por la heterogeneidad semántica. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: ¿Qué es Heterogeneidad Sintáctica? Es la Heterogeneidad que se produce por la autonomía de los componentes de la BD y por las diferencias en sus diseños. ¿Qué Heterogeneidad Semántica? Es la que se da por las diferentes concepciones que se tienen de los elementos por parte de las diferentes BD. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: Procesamiento de las consultas: El procesamiento de las consultas en las bases de datos heterogéneas puede resultar complicados, los problemas son: · Dada una consulta en un esquema global, puede que haya que traducir la consulta a en los esquemas locales de cada uno de los sitios en que hay que ejecutar la consulta. Hay que volver a traducir los resultados de las consultas al esquema global. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: Procesamiento de las consultas: La tarea se simplifica escribiendo envolturas para cada origen de datos, que o vista de los datos locales en el esquema global. Las envolturas también traducen las consultas del esquema global a consultas del esquema local y vuelven a traducir los resultados al esquema global. BASE DE DATOS Heterogéneas Base de datos distribuida HETEROGÉNEA: La optimización global de consultas en bases de datos heterogéneas resulta difícil que el sistema de ejecución de consultas no conozca los costes de los planes de consulta alternativos en los diferentes sitios. La solución habitual es confiar sólo en a optimización a nivel local y utilizar únicamente la heurística a nivel global. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas “Los sistemas de bases de datos federadas o bases de datos heterogéneas son sistemas computacionales que hacen disponible la información desde diversas fuentes, y donde esas fuentes de información pueden ser heterogéneas, distribuidas y autónomas.” BASE DE DATOS Heterogéneas Bases de datos FEDERADAS o bases de datos heterogéneas Un sistema de bases de datos federadas es una colección de sistemas de bases de datos cooperativos y autónomos [Bhavani99]. En un sistema federado los usuarios tienen acceso a los datos, de los distintos sistemas, a través de una interfaz común sin embargo, no existe un esquema global que describa a todos los datos de las distintas bases de datos, en su lugar hay varios esquemas unificados, cada uno describiendo porciones de bases de datos y archivos para el uso de cierta clase de usuarios [Larson90]. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas El SGBDF no contiene datos, solo accede a los datos almacenados en la BD componente. Una BDF no es una BD única distribuida. Pueden usar diferentes esquemas de software. La diferencia en software es un problema mayor al momento de la transacción de procesamiento. Las federaciones se forman y desaparecen. No hay un esquema conceptual único. Se dice que las SBD se federan para dar lugar a las SGBF. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas Forma en que operan. Los componentes de un SBDF (Sistema de base de datos federadas) pueden efectuar operaciones locales o bien ejecutar consultas sobre los datos de la federación y pueden también ser usadas por otros componentes de la federación. La autonomía o la integración de los componentes la controla el administrador del sistema global en colaboración con los administradores de las bases de datos componente. Este nivel de integración se da de acuerdo a las necesidades propias de cada componente. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas Es posible también la agrupación en una federación o la desincorporación de la misma, y de igual forma es posible que entren o salgan componentes. Para poder lograr esto se establecen diferentes esquemas en el nivel federal. Se debe remarcar que una base de datos federada no es una base de datos única distribuida, mas bien son soluciones para acceder información depositada en diferentes bases de datos. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas 1. Integración manual, todo queda a cargo de unas pocas personas. Implica muchos cambios. 2. Integración de datos. Se crea una nueva base de datos. 3. Acceso integrado. DBMF (Data base manager federated) o SGBDF (Sistema gestor de bases datos federadas) o SMBDF(Sistema manejador de bases de datos federadas). BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas La forma en que cooperan se basa fundamentalmente en dos esquemas: El esquema de exportación: Denota las partes de la base de datos que va a compartir o que va a poner a disposición de los demás miembros de la federación. Así también es un subconjunto de un esquema componente ya que no todos los datos deberán de ser disponibles para la federación. El esquema de importación: Son vistas de la base de datos que proporcionan lo que desea el esquema de exportación. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas Arquitectura propuesta por (Sheth y Larson) Esquema local: Es el esquema conceptual de un sistema de bases de datos componente de la federación. Esquema componente: Este resulta al transformar un esquema local a un modelo canónico o común de datos del sistema manejador de bases de datos federadas. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas Arquitectura propuesta por (Sheth y Larson) Esquema federado: Pueden existir varios esquemas federados en el sistema, dependiendo de cada tipo de usuarios dentro de la federación. Las clases de usuarios son los que tienen funciones similares, ejemplo ventas, justicia, compras, bibliotecas, etc.. Al esquema federado también se le conoce como empresarial o también de importación BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas Niveles de un SGBDF: a) Nivel Componente: son las Bases de Datos preexistentes. b) Nivel Federado: conjunto de BD que interoperan. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas Clasificación: Se pueden clasificar en: a) Débilmente Acoplados: Los usuarios deben tratar explícitamente con las BD, es decir, cuando la responsabilidad de crear y mantener la Federación recae sobre el usuario y no hay control por parte del sistema Federado y sus administradores. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas b) Fuertemente Acoplados: la Federación y sus administradores controlan el acceso y mantienen el sistema, es decir, el administrador tiene la responsabilidad de crear y mantener la Federación y el control de acceso de los sistemas de Bases de Datos Componentes. Se pueden clasificar, a su vez, en: 1. Federación sencilla: permite crear y manejar un sólo esquema federado. 2. Federación Múltiple: permite la creación y el manejo de varios esquemas federados. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas ARQUITECTURA. En el caso de las bases de datos federadas debemos identificar dos partes: 1. La parte de software 2. La parte de arquitectura de esquema. La segunda está encargada de resolver las heterogeneidades sintácticas y semánticas de los distintos componentes de la base de datos. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas Para poder resolver esto se debe de contar con capas, aquí se conocen como capas de esquemas. Un sistema federado debe cumplir 3 aspectos. Autonomía. Heterogeneidad. Sistema distribuido. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas Arquitectura de 3 niveles (ANSI/SPARC) Físico (esquema interno). Lógico (Esquema conceptual) Externo (Esquema externo) Esta arquitectura es muy usada en el diseño de bases de datos relacionales mas no así en diseño de bases de datos orientadas a objetos. Existen muchas otras arquitecturas para el manejo de las bases de datos federadas, un ejemplo puede ser la arquitectura de 8 niveles o por ejemplo la de esquemas de data warehouse. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas Problemática para la implementación de Bases de Datos Federadas. Uno de los principales problemas es la incompatibilidad entre los sistemas de consulta entre los diferentes fabricantes, aunque existen estándares para el SQL como el SQL 92, normalmente los fabricantes construyen dialectos, o finalmente una instrucción no es la misma es un manejador que en otro, o simplemente tipos de datos. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas Problemática para la implementación de Bases de Datos Federadas. Otro problema es la codificación por ejemplo unos usan ASCII otros ASCII extendido o el EBCDIC. Así mismo un aspecto importante, son los códigos de error generados por los distintos fabricantes, que normalmente no son compatibles. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas Problemas en transacciones. Control de concurrencia. El SMBDF no conoce las transacciones a nivel de componentes y los SMBD componentes no siempre pueden distinguir entre transacciones propias y externas. Heterogeneidad. Cada SMBD mantiene su autonomía. La autonomía total es incompatible con la atomicidad. BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas Soluciones comerciales Existen varias opciones y varias instituciones y compañías que trabajan para dar la solución a estos problemas de interoperabilidad, mas sin embargo muy pocos trabajan para la administración global, algunas de las compañías que trabajan en soluciones son augsoft, Oracle, Sybase, y ha usado distintas opciones por ejemplo ODBC(open Data Base Connectivity) y JDBC el conector de Java,… BASE DE DATOS Heterogéneas Bases de datos federadas o bases de datos heterogéneas Soluciones comerciales … en general los grandes manejadores de bases de datos contienen alguna herramienta para poder hacer esto lo malo es que tienen un producto para conectarse con otros manejadores, pero cada uno se vende aparte además de que los costos son exorbitantes. BASE DE DATOS Heterogéneas Resumen Las BDs Heterogéneas o Multibases de Datos: Son aquellas donde Sitios diferentes utilizan diferentes DBMSs, siendo cada uno esencialmente autónomo. Bases de Datos Distribuidas Heterogéneas: Se compone de un conjunto de localidades, cada una de las cuales mantiene un SBD local, éstas pueden procesar transacciones locales (aquellas que se realizan sobre esa localidad). BASE DE DATOS Heterogéneas Resumen Un sistema de BDD tiene las siguientes características: 1. Cada sitio es un sistema de base de datos en sí mismo. 2. Los sitios han convenido en trabajar juntos (si es necesario) con el fin de que un usuario de cualquier sitio pueda obtener acceso a los datos de cualquier punto de la red tal como si todos estuvieran almacenados en el sitio propio del usuario. BASE DE DATOS Heterogéneas Resumen La llamada “base de datos distribuida” es en realidad una especie de objeto virtual, cuyas partes componentes se almacenan físicamente en varias bases de datos “reales” distintas ubicadas en diferentes sitios. De hecho, es la unión lógica de esas bases de datos. BASE DE DATOS Heterogéneas Resumen Las BDDH son una realidad en muchas organizaciones para bien o para mal. La mayoría de enfoques buscan agregar y coordinar el acceso. Los DHDBMS están surgiendo para atender estas necesidades.