1. Diferencia entre bdd, sbdd y smbdd Al estudiar por aparte todos y cada uno de los ítems dentro de BDD (bases de datos distribuidas), SBDD (sistema de base de datos distribuido) y SMBDD (sistema de manejo de bases de datos distribuida), podemos encontrar una diferencias entre estas como lo son, que las BDD son diferentes sitios interconectados por un red, y los diferencia notablemente con el SBDD ya que, un usuario puede en cualquier sitio puede acceder los datos en cualquier parte de la red como si los datos estuvieran almacenados en su sitio propio, al relacionarlo con el tercer término tenemos que el SMBDD es aquel es que se encarga del manejo de BDD y proporciona un mecanismo de acceso que hace que la distribución sea transparente a los usuarios, esto quiere decir que los datos se administrarían como si fueran en una sola computadora. 2. como funciona una BDD Son bases de datos sobre una red distribuidas lógicamente. Por medio de esta red se comunican a cada uno de los ordenadores que integran el sistema de Bases de Datos distribuido se le conoce como nodo del sistema y pueden ser administrados de forma diferente. Una característica importante de las Bases de Datos Distribuidas es que realizan dos tipos de transacciones bien diferenciados: - Transacciones Locales: cuando se accede a los datos del único emplazamiento donde se inició la transacción. - Transacciones Globales: Cuando se accede a datos de emplazamientos distintos al emplazamiento donde se inició la transacción. Las transacciones Globales serán las que requerirán un tratamiento diferenciado con respecto a las realizadas en sistemas de Bases de Datos Centralizados y serán el objeto de estudio de este tema. Un ejemplo general de un Sistema Distribuido de Bases de Datos correspondería con la siguiente figura: En Este sistema, encontramos tres nodos correspondientes a la Escuela Universitaria de Informática, La Escuela Universitaria de Telecomunicaciones y el Rectorado de la UPM. Cada nodo de las escuelas tiene, entre otras, la tabla Alumnos con el siguiente esquema: El nodo del Rectorado, tiene información respecto a las escuelas de la Politécnica. Una de las tablas de este nodo, la tabla Escuelas, tiene el siguiente esquema: Si un nuevo alumno se matricula en la Escuela de Informática desde la secretaría del mismo centro, se considera una transacción local. Sin embargo si un alumno se matricula a través del Rectorado, la transacción se considera global. Este sistema será distribuido si cumple que: - Los distintos nodos están informados sobre los demás. - Aunque algunas tablas estén almacenadas sólo algunos nodos, éstos comparten un esquema global común. - Cada nodo proporciona un entorno de ejecución de transacciones tanto local como global. - Generalmente, los nodos ejecutan el mismo software de gestión distribuida. En caso contrario, aumenta en gran medida la dificultad de implementación del sistema de Bases de Datos Distribuidas. En este caso se dice que el sistema es heterogéneo. 3. Arquitectura de una base de datos. La arquitectura de un sistema de bases de datos está influenciada en gran medida por el sistema informático subyacente en el que se ejecuta, en particular por aspectos de la arquitectura de la computadora como la conexión en red, el paralelismo y la distribución: • La conexión en red de varias computadoras permite que algunas tareas se ejecuten en un sistema servidor y que otras se ejecuten en los sistemas clientes. Esta división de trabajo ha conducido al desarrollo de sistemas de bases de datos cliente-servidor. • El procesamiento paralelo dentro de una computadora permite acelerar las actividades del sistema de base de datos, proporcionando a las transacciones unas respuestas más rápidas así como la capacidad de ejecutar más transacciones por segundo. Las consultas pueden procesarse de manera que se explote el paralelismo ofrecido por el sistema informático subyacente. La necesidad del procesamiento paralelo de consultas ha conducido al desarrollo de los sistemas de bases de datos paralelos. La arquitectura de las bases de datos se encuentran determinadas por los siguientes niveles: 1. En el nivel interno se describe la estructura física de la base de datos mediante un esquema interno. Este esquema se especifica mediante un modelo físico y describe todos los detalles para el almacenamiento de la base de datos, así como los métodos de acceso. 2. En el nivel conceptual se describe la estructura de toda la base de datos para una comunidad de usuarios (todos los de una empresa u organización), mediante un esquema conceptual. Este esquema oculta los detalles de las estructuras de almacenamiento y se concentra en describir entidades, atributos, relaciones, operaciones de los usuarios y restricciones. En este nivel se puede utilizar un modelo conceptual o un modelo lógico para especificar el esquema. 3. En el nivel externo se describen varios esquemas externos o vistas de usuario. Cada esquema externo describe la parte de la base de datos que interesa a un grupo de usuarios determinado y oculta a ese grupo el resto de la base de datos. En este nivel se puede utilizar un modelo conceptual o un modelo lógico para especificar los esquemas. Al tener en cuenta estos tres niveles, se debe tener en cuenta que para tener una buena distribución de los datos, se deben seguir ciertos pasos, esto se verá repercutido en que en el momento de hacer uso de esta base de datos, se vea la eficacia de la misma y la rapidez que maneje, ya que muchas veces, cuando se manejan datos, existen complicaciones, como por ejemplo la saturación de datos, cuando se manejan diferentes puntos en una misma red. La tener una buena distribución de los datos en la red, haremos que estos problemas no existan. 4. Cuáles son las ventajas de los sistemas distribuidos?, Cuáles son las desventajas? Ventajas de las Base de Datos Distribuidas Descentralización.- En un sistema centralizado/distribuido, existe un administrador que controla toda la base de datos, por el contrario en un sistema distribuido existe un administrador global que lleva una política general y delega algunas funciones a administradores de cada localidad para que establezcan políticas locales y así un trabajo eficiente. Economía: Existen dos aspectos a tener en cuenta. o El primero son los costes de comunicación; si las bases de datos están muy dispersas y las aplicaciones hacen amplio uso de los datos puede resultar más económico dividir la aplicación y realizarla localmente. o El segundo aspecto es que cuesta menos crear un sistema de pequeños ordenadores con la misma potencia que un único ordenador. Mejora de rendimiento: Pues los datos serán almacenados y usados donde son generados, lo cual permitirá distribuir la complejidad del sistema en los diferentes sitios de la red, optimizando la labor. Mejora de fiabilidad y disponibilidad: La falla de uno o varios lugares o el de un enlace de comunicación no implica la inoperatividad total del sistema, incluso si tenemos datos duplicados puede que exista una disponibilidad total de los servicios. Crecimiento: Es más fácil acomodar el incremento del tamaño en un sistema distribuido, por que la expansión se lleva a cabo añadiendo poder de procesamiento y almacenamiento en la red, al añadir un nuevo nodo. Flexibilidad: Permite acceso local y remoto de forma transparente. Disponibilidad: Pueden estar los datos duplicados con lo que varias personas pueden acceder simultáneamente de forma eficiente. El inconveniente, el sistema administrador de base de datos debe preocuparse de la consistencia de los mismos. Control de Concurrencia: El sistema administrador de base de datos local se encarga de manejar la concurrencia de manera eficiente. Desventajas de las base de datos distribuidas El rendimiento que es una ventaja podría verse contradicho, por la naturaleza de la carga de trabajo, pues un nodo puede verse abrumado, por las estrategias utilizadas de concurrencia y de fallos, y el acceso local a los datos. Se puede dar esta situación cuando la carga de trabajo requiere un gran número de actualizaciones concurrentes sobre datos duplicados y que deben estar distribuidos. La confiabilidad de los sistemas distribuidos, esta entre dicha, puesto que, en este tipo de base de datos existen muchos factores a tomar en cuanta como: La confiabilidad de los ordenadores, de la red, del sistema de gestión de base de datos distribuida, de las transacciones y de las tazas de error de la carga de trabajo. La mayor complejidad, juega en contra de este tipo de sistemas, pues muchas veces se traduce en altos gastos de construcción y mantenimiento. Esto se da por la gran cantidad de componentes Hardware, muchas cosas que aprender, y muchas aplicaciones susceptibles de fallar. Por ejemplo, el control de concurrencia y recuperación de fallos, requiere de personal muy especializado y por tal costoso. El procesamiento de base de datos distribuida es difícil de controlar, pues estos procesos muchas veces se llevan a cabo en las áreas de trabajo de los usuarios, e incluso el acceso físico no es controlado, lo que genera una falta de seguridad de los datos. 5. semejanzas y diferencias entre las Bases de datos distribuidas y las Bases de datos centralizadas Semejanzas Son bases de datos con nodos o terminales Se comunican por medio de una red Los usuarios de cada terminal puede mostrar resultados Precisan al menos dos servidores de Bases de Datos Diferencias La información en la bases de datos centralizada se encuentra en un solo lugar físico. Los sistemas de bases de datos centralizadas son se ejecutan en un único sistema informático sin interaccionar con ninguna otra computadora, los distribuidos si interactúan con otras maquinas. 6. En que ambientes, se cuenta con un sistema de Bases de Datos distribuidos? Cuando una empresa tiene grandes volúmenes de información una de las mejores formas de tenerla organizada es tenerla en una base de datos distribuida, de tal manera que desde cualquier punto de la empresa se pueda acceder a toda la información de la empresa. También grades compañías utilizan las bases de datos distribuidas conectadas por medio de la internet para compartir información desde cualquier parte del mundo. 7. Mencione y explique con sus propias palabras las 12 reglas u objetivos de una base de datos distribuida. REGLAS U OBJETIVOS Las Doce Reglas de las Bases de Datos Distribuidas: • Autonomía Local : Los sitios distribuidos deben ser autónomos, es decir que todas las operaciones en un sitio dado se controlan en ese sitio. • No depende de un sitio central : No debe de haber dependencia de un sitio central para obtener un servicio. • Operación Continua: Nunca debería apagarse para que se pueda realizar alguna función, como añadir un nuevo sitio. • Independencia con respecto a la localización: No debe de ser necesario que los usuarios sepan dónde están almacenados físicamente los datos, sino que más el usuario lo debe de ver como si solo existiera un sitio local • Independencia con respecto a la fragmentación: La fragmentación es deseable por razones de desempeño, los datos, pueden almacenarse en la localidad donde se utilizan con mayor frecuencia de manera que la mayor parte de las operaciones sean sólo locales y se reduzca el tráfico en la red. • Independencia de réplica : Si una relación dada (es decir, un fragmento dado de una relación ) se puede presentar en el nivel físico mediante varias copias almacenadas o réplicas, en muchos sitios distintos. • Procesamiento Distribuido de Consultas: El objetivo es convertir transacciones de usuario en instrucciones para manipulación de datos, y así reducir el trafico en la red implica que el proceso mismo de optimización de consultas debe ser distribuido. • Manejo Distribuido de Transacciones: Tiene dos aspectos principales, el control de recuperación y el control de concurrencia, cada uno de los cuales requiere un tratamiento más amplio en el ambiente distribuido. • Independencia con respecto al equipo: El SGBDD debe ser ejecutable en diferentes plataformas hardware . • Independencia con respecto al Sistema Operativo: El sistema debe ser ejecutable varios diferentes SO. • Independencia con respecto a la red: El sistema debe poder ejecutarse en diferentes redes. • Todos los usuarios accesan a la BDD a través de un esquema global en forma transparente al usuario. Debe ser posible ejecutar diferentes SGBDD locales que utilicen distintos modelos de datos.