BASE DE DATOS DISTRIBUIDAS 1. DATOS DE LA ASIGNATURA Nombre de la Asignatura: Base de datos distribuidas Carrera: Ingeniería en Sistemas Computacionales Clave de la asignatura: RSF-1101 Horas teoría-práctica-créditos 2 – 4 – 8 2. HISTORIA DEL PROGRAMA Lugar y fecha de elaboración o revisión Dirección de Institutos Tecnológicos Descentralizados , México DF , 9 y 10 de junio del 2011 Participantes Instituto Tecnológico Superior Centla Instituto Tecnológico Superior Coatzacoalcos Instituto Tecnológico Superior Uruapan Instituto Tecnológico Superior de Champotón Tecnológico de Estudios Superiores de Jocotitlán Instituto Tecnológico Superior de Teziutlán Observaciones (cambios y justificación) Reunión de trabajo del los institutos tecnológicos con especialidad en redes , Unificación de criterios 3. UBICACIÓN DE LA ASIGNATURA a) Relación con otras asignaturas del plan de estudio Anteriores Asignaturas Temas Taller de base de Todos datos Posteriores Asignaturas Temas Todas b) Aportación de la asignatura al perfil del egresado Conoce el diseño de bases de datos distribuidas que responden a los requerimientos operativos de información de las organizaciones. 4. OBJETIVO(S) GENERAL(ES) DEL CURSO El alumno será capaz de organizar y administrar eficientemente sistemas de bases de datos distribuidas, elaborando consultas distribuidas explicando el proceso de ejecución y optimización, además de utilizar un gestor de bases de datos con arquitectura cliente/servidor. 5. TEMARIO Unidad 1. Temas Fundamentos de bases de datos distribuidas 2. Diseño de bases de datos distribuidas 3 Distribución de datos 4 Recuperación de información en ambientes de BD Distribuidas Subtemas 1.1 Conceptos básicos. 1.2 Objetivos de las B.D.D. 1.3 Disciplinas de estudio. 1.4 Arquitectura de bases de datos distribuidas. 1.5 Definición del Término Cliente-Servidor 1.6 Arquitectura Cliente-Servidor 1.7 Integración de Datos vs Distribución de Datos 2.1 Consideraciones de diseño de bases de datos distribuidas. 2.2 Diccionario de datos. 2.3 Niveles de transparencia. 2.3.1 Transparencia de localización. 2.3.2 Transparencia de fragmentación. 2.3.3 Transparencia de réplica. 2.4 Fragmentación de datos. 2.4.1 Fragmentación horizontal. 2.4.2 Fragmentación vertical. 2.4.3 Fragmentación híbrida. 2.5 Distribución de datos. 2.5.1 Algoritmos de distribución de datos no replicados. 2.5.2 Algoritmos de distribución de datos replicados. 3.1 Definición del esquema de distribución 3.2 Tipos de Replicación 3.2.1 Instantánea 3.2.2 Transaccional 3.2.3 Transaccional Actualizable 3.2.4 De Mezcla 3.3 Seguridad 3.4 Herramientas de administración y monitoreo 4.1 Transacciones. 4.1.1 Estructura de transacciones. 4.1.2 Ejecución de transacciones centralizada y distribuida. 4.1.3 Estructura de transacciones 4.1.4 Ejecución de transacciones centralizada y distribuida. 4.2 Control de concurrencia. 4.2.1 Serialización de transacciones. 4.2.2 Algoritmos de control de concurrencia. 4.2.2.1 Basados en bloqueo. 5 Transacciones distribuidas 6. Bases de datos para el soporte en la toma de decisiones 4.2.2.2 Basados en estampas de tiempo. 4.2.2.3 Pruebas de validación optimistas. 4.2.3 Disciplinas del Interbloqueo: prevención, detección, eliminación y recuperación. 4.3 Confiabilidad. 4.3.1 Conceptos básicos de confiabilidad. 4.3.2 Protocolos REDO/UNDO. 4.3.3 Puntos de verificación (checkpoints). 4.3.4 Protocolo 2PC de confiabilidad distribuida. 5.1 Transacciones. 5.1.1 Estructura de transacciones. 5.1.2 Ejecución de transacciones centralizada y distribuida. 5.1.3 Estructura de transacciones 5.1.4 Ejecución de transacciones centralizada y distribuida. 5.2 Control de concurrencia. 5.2.1 Serialización de transacciones. 5.2.2 Algoritmos de control de concurrencia. 5.2.2.1 Basados en bloqueo. 5.2.2.2 Basados en estampas de tiempo. 5.2.2.3 Pruebas de validación optimistas. 5.2.3 Disciplinas del Interbloqueo: prevención, detección, eliminación y recuperación. 5.3 Confiabilidad. 5.3.1 Conceptos básicos de confiabilidad. 5.3.2 Protocolos REDO/UNDO. 5.3.3 Puntos de verificación (checkpoints). 5.3.4 Protocolo 2PC de confiabilidad distribuida. 6.1 Bodegas de datos (Datawarehouse). 6.1.1 Definición y objetivo. 6.1.2 Funcionamiento. 6.1.3 Consideraciones de diseño. 6.1.4 Herramientas para extraer, transformar y cargar fuentes de datos. 6.2 Procesamiento y análisis en línea (OLAP). 6.2.1 Definiciones y conceptos. 6.2.2 Requerimientos funcionales de los sistemas OLAP. 6.2.3 Operadores para manejo de cubos de datos del estándar SQL3. 6.2.4 Diseño de consultas a bases de datos multidimensionales. 6.2.5 Utilización de herramientas para OLAP. 6.3 Mercados de datos (Data Mart). 6.3.1 Definiciones y conceptos. 6.3.2 Fases de construcción. 6.3.2.1 Análisis. 6.3.2.2 Construcción. 6.3.2.3 Post-producción. 6.4 Minería de datos (Data mining). 6.4.1 Definiciones y conceptos. 6.4.2 Aplicaciones de la minería de datos. 6.4.3 Diseño de mineros de datos. 6.4.4 Obtención de información a través de patrones de búsqueda 6.4.5 Técnicas y herramientas de la minería de datos. 6.4.6 Tendencias en minería de datos. 6. APRENDIZAJES REQUERIDOS Debe saber aplicar metodologías de Diseño de Base Datos. Analizar, diseñar, desarrollar e implementar soluciones orientadas a la solución de problemas de almacenamiento y organización de información. Implementar bases de datos relacionales así como las operaciones básicas sobre los datos (Selección, Inserción, Modificación y Eliminación). Implementar los servicios principales de una red de computadoras. Manejo de transacciones de BD. 7. SUGERENCIAS DIDÁCTICAS Presentación inicial del objetivo de la asignatura y su relación con otras el plan de estudios, temario y actividades de aprendizaje. Seleccionar, en acuerdo de academia, el gestor de base de datos a utilizar de acuerdo a las necesidades del entorno, el contenido del programa y los recursos disponibles. Utilizar el gestor de base de datos seleccionado en el desarrollo de las prácticas de laboratorio. Promover visitas al sector productivo donde se utilicen bases de datos distribuidas. Conformar equipos de trabajo para el desarrollo de las prácticas y discutir los resultados obtenidos en el grupo. Proponer casos de estudio asociados al entorno, para que el estudiante seleccione alguno y diseñe la base de datos distribuida. Indicar que las prácticas de laboratorio se apliquen sobre el caso de estudio seleccionado. Guiar y asesorar las prácticas que se efectúen. En coordinación con los estudiantes elaborar instructivos, demostraciones, manuales o cualquier material didáctico que auxilie la impartición de la asignatura. Involucrar al estudiante en las innovaciones de las herramientas de bases de datos distribuidas que proveen los gestores, propiciando que éste se documente en distintas fuentes de información. Definir un esquema de documentación de los trabajos realizados o desarrollo de aplicaciones, que contenga las estrategias metodológicas aplicadas según sea el caso. Elaborar un conjunto de ejercicios asociados al entorno, para que el estudiante diseñe bases de datos distribuidas. 8. SUGERENCIAS DE EVALUACIÓN Trabajos de investigación. Tareas relacionadas con la solución de problemas de diseño de bases de datos distribuidas. Participación en exposiciones. Participar en foros académicos. Establecer de común acuerdo con los estudiantes, la ponderación de las diferentes actividades del curso. Desempeño del estudiante en el desarrollo de las prácticas de laboratorio. Exámenes de reforzamiento del aprendizaje escritos o en línea. 9. UNIDADES DE APRENDIZAJE Unidad I: Fundamentos de las Bases de Datos Distribuidas. Objetivo Educacional Actividades de Aprendizaje Conocer el fundamento Buscar y seleccionar información Teórico de las Bases de actualizada sobre los fundamentos de las Datos Distribuidas Bases de Datos Distribuidas. Exponer casos reales donde se apliquen las Bases de Datos Distribuidos. Analizar los retos que se tiene al implementar un Sistema Distribuido. Organizar un debate entre un sistema Distribuido Vs Centralizado. Elaborar Tablas comparativas donde se presenten las principales características de los sistemas de BD centralizados y de BD Distribuidas. Investigar en empresas de la región aquellas que manejen Bases de Datos Distribuidas. Fuentes de Información 1 Unidad 2: Diseño de bases de datos distribuidas. Objetivo Educacional Comprender los factores que afecta a una base de datos montada en múltiples servidores, como lo son los niveles de Transparencia y la fragmentación de datos. Actividades de Aprendizaje Buscar y seleccionar información referente a los diferentes niveles de transparencia y comentarlos en equipo. Exponer las situaciones donde es aplicable cada tipo transparencia. Buscar y seleccionar información referente a la fragmentación de datos existentes. Implementar ejemplos de cinco integrantes para elaborar un esquema de distribución de datos empleando uno o varios tipos de fragmentación. Fuentes de Información 5,6 Unidad 3: Distribución de Datos. Objetivo Educacional Implementar mecanismos de replicación para la resolución de problemas de distribución de Datos entre Servidores. Actividades de Aprendizaje Investigar en fuentes de información actualizadas las características principales de los diferentes tipos de replicación que existen. Elaborar un debate por equipos sobre los diferentes tipos de replicación para Fuentes de Información 5,6 determinar cuál de ellas es la más eficiente. Elaborar un esquema de distribución basado en algún algoritmo de distribución y replicación. Desarrollar programas que implementen los esquemas de comunicación empleados en el curso. Unidad 4 Recuperación de información en ambientes de BD Distribuidas. Objetivo Educacional Implementar consultas de BDD de acuerdo a estrategias de procesamiento y optimización. Actividades de Aprendizaje Realizar un análisis comparativo de dos estrategias de consultas distribuidas equivalentes, y discutirlo en clase. Desarrollar ejercicios sobre optimización de consultas. Fuentes de Información 5y6 Unidad 5: Transacciones Distribuidas. Fuentes de Información Programar aplicaciones Realizar prácticas de procesamiento de 5y6 integrales que utilicen Transacciones distribuidas. diferentes tipos de clientes. Investigar el problema de interbloqueo y como solucionarlo. Desarrollar ejercicios sobre los mecanismos de control de concurrencia. Objetivo Educacional Actividades de Aprendizaje UNIDAD 6: Bases de datos para el soporte en la toma de decisiones. Objetivo Educacional Actividades de Aprendizaje Conoce las tecnologías de Investigar el concepto de Datawarehouse, bases de datos que sirven así como su funcionamiento, consideraciones para el soporte en la toma de y herramientas comerciales que lo usan. decisiones. Conocer y analizar OLAP. Realizar cubos de datos a partir de una base de datos relacional. Construir un Data Mart y verificar las fases que se siguieron y establecer conceptos del mismo. A partir de una colección de datos, elaborar minería de datos y observar los patrones seguidos. Fuentes de Información 2y3 10. FUENTES DE INFORMACIÒN 1. Fundamentos de bases de datos. Autor: Abraham Silberschatz, Henry F. Korth, S. Sudarshan ; tr. Fernando Saenz Perez ; colab. Antonio Ibarra Santiago Editorial: McGraw-Hill Isbn: 84-481-2021-3 F. Publicación: 2002 Edición: 4ta 2. PROGRAMACIÒN AVANZADA CON SQL SERVER 2005 Autor: Andrew Brust Editorial: McGraw-Hill ISBN: 9701058933 F. Publicación: 07/06/2007 Edición: 1ra. 3. APRENDA YA SQL SERVER 2005 TECNICAS PLICADAS Autor: Solid Quality Learning Editorial: McGraw-Hill ISBN: 9701064887 F. Publicación: 02/07/2007 Edición: 1ra 4. MS SQL SERVER 2005 MANUAL DEL ADMINISTRADOR Autor: Willian Stanek Editorial: McGraw-Hill ISBN: 9701059298 F. Publicación: 21/11/2006 Edición: 1ra 5. INTELLIGENT DATABASES Autor: Kamran Parsaye, Mark Chignell, Setrag Khoshafian, Harry Wong, Editorial: John Wiley & Sons. ISBN: F. Publicación:, Edición: 6. DISTRIBUTED DATABASES, COOPERATIVE PROCESSING & NETWORKING Autor: Shaku Atre Editorial: McGraw-Hill ISBN: F. Publicación:, Edición: 7. DISTRIBUTED DATABASES, PRINCIPLES & SYSTEMS Autor: Stefano Ceri, Guiseppe Pelagatti Editorial: McGraw-Hill ISBN: F. Publicación:, Edición: 11. PRÁCTICAS Nombre de la práctica: Objetivo general: Objetivos específicos: Aplicaciones Cliente-Servidor El alumno comprenderá la arquitectura básica de las aplicaciones cliente servidor aplicadas al uso de BD Nombre de la práctica: Objetivo general: Objetivos específicos: Replicación entre Servidores SQL Server El alumno aprenderá a realizar replicación de datos entre servidores SQL Server 2005 Nombre de la práctica: Objetivo general: Objetivos específicos: Objetivos específicos: Conocer los elementos que intervienen en un proceso de distribución de datos. Aprender a configurar publicadores, distribuidores y suscriptores de datos. Conocer las características generales de los procesos de replicación Instantánea. Conocer las características generales de los procesos de replicación Transaccional. Conocer las características generales de los procesos de replicación Transaccional Actualizable. Conocer las características generales de los procesos de replicación de Mezcla. Consultas de datos distribuidas SQL Server. El alumno comprenderá como se realiza la elaboración de consultas distribuidas entre servidores de Base de Datos Nombre de la práctica: Objetivo general: Identificar los componentes principales componentes de las arquitecturas Cliente Servidor. Conocer los requerimientos esenciales para la construcción de aplicaciones que hagan uso de BDD. Conocer la aplicación de técnicas de optimización de consultas distribuidas. Configurar servidores vinculados. Recuperación de datos a través del uso de servidores vinculados. Transacciones Distribuidas en Servidores SQL Server El alumno aprenderá a implementar transacciones distribuidas entre servidores de Base de Datos. Conocer los elementos necesarios para la implementación de transacciones distribuidas. Implementar transacciones de datos distribuidos garantizando la consistencia, integridad y seguridad de los datos.