Beruflich Dokumente
Kultur Dokumente
Quin soy?
Profesor Instructor del Dpto. de Computacin. Miembro del GIDyC (Grupo de Investigacin en Ingeniera de Datos y Conocimiento). Empresario (inactivo por los momentos) en el rea de Desarrollo de Software. Programador, Desarrollador de Software y aventurero del mundo de la tecnologa...
1 / 11 2 / 22 11 / 1 22 / 211
Modelado de Bases de Datos: 1 Modelado de Bases de Datos: Modelado de bases de datos con Entidad Ejercicios de Modelado de Bases de Datos Relacin Extendido (ERE). Diagramas ERE. utilizando ERE. Modelado de Restricciones. Introduccin a Herramientas CASE de modelado ERE (DIA?) Modelado Utilizando UML: Conceptos Bsicos de UML, elementos comunes. Diagramas de Casos de Uso Modelado Utilizando UML: Conceptos Bsicos de Orientacin a Objetos. Diagramas de Clases, Diagramas de Paquetes 1 1 de Mayo :-( ero
1 / 11 2 / 22 11 / 1 22 / 211
1 / 11 1 / 11 11 / 1 11 / 111
Modelado Utilizando UML: Ejercicios de Modelado con UML (Diagramas de Casos de Uso, Diagramas de Clases).
1 / 11 2 / 22 11 / 1 22 / 211
Modelado Utilizando UML: 1 Diagramas de Actividades, Diagramas de Mquinas de Estado. Diagramas de Vistas de Interaccin (Secuencia y Comunicacin), Diagramas Temporales, Diagramas de Despliegue y de Componentes.
1 / 11 1 / 11 11 / 1 11 / 111 Modelo Relacional y Objeto Relacional: 1 Modelo Relacional y Objeto Relacional: 0 1 Transformacin ERE o Diagramas de Dependencias Funcionales, Formas Clases a Relacional (Parte 2) Normales. (Ejercicio de transformacin ERE a Relacional) (Ejercicios con DF) 1 / 11 1 / 11 11 / 1 11 / 111 Modelo Relacional y Objeto Relacional: 1 Consultas: 2 Dependencias Multivaluadas, Verificacin 3 Conceptos Bsicos de Lenguajes de Consulta, Definicin y Manipulacin de del Modelo Relacional. Datos. (Relaciones entre el modelado con ERE y y lgebra Relacional, Operaciones Bsicas. la Normalizacin y Verificacin del Modelo Relacional) (Ejercicio de Normalizacin hasta 3FN) 1 / 11 1 / 11 11 / 1 11 / 111 4 Consultas: lgebra Relacional: Subconsultas, Ordenacin, Agrupamiento y Funciones Adicionales. (Ejercicios de lgebra Relacional) Consultas: SQL (Parte 2) 1 5 Consultas: SQL (Parte 1)
1 / 11 1 / 11 11 / 1 11 / 111 6
1 Consultas: 7 Clculo Relacional de Tuplas y de Dominios (Conceptos Bsicos, Operaciones y Funciones). QBE.
#
1 9
Tema
Tcnicas de Implantacin de SGBD: (ndices y Estructuras de Datos Asociadas) Estructuras de datos para la organizacin de ndices de acceso: monodimensionales, multidimensionales y espaciales. ndices por dispersin, utilizando rboles B y B+, ISAM y VSAM. ndices y estructuras de acceso en SQL (Parte 2) Tcnicas de Implantacin de SGBD (Transacciones y Concurrencia) Mtodos de Serializacin, Bloqueos, Polticas de Bloqueo, Transacciones de dos Fases. Transacciones en SQL.
1 / 11 1 / 11 1 1 11 / 1 11 / 1 0 8
1 / 11 1 / 11 1 2 11 / 1 11 / 1 1 0
2 1
1 / 11 1 / 11 1 2 11 / 1 11 / 1 2 2
2 Tcnicas de Implantacin de SGBD 3 (Seguridad) Seguridad en Bases de Datos, Conceptos Bsicos, Tipos de Seguridad, Control de Autorizaciones, Seguridad en SQL. Respaldo y Polticas Generales de Seguridad.
Tcnicas de Implantacin de SGBD (Procesamiento y Optimizacin de Consultas) Procesamiento de Consultas, Anlisis Sintctico, Optimizacin de Consultas.
1 / 11 1 / 11 1 2 Bases de Datos Orientadas por Objetos: 2 Bases de Datos Orientadas por Objetos: 11 / 1 11 / 1 3 4 5 Conceptos Bsicos, Justificacin. El Ejemplos Actuales de SGBDOO. Estndar de la ODMG-93. Lenguajes de Alternativas a los SGBDOO. ORM Definicin y Manipulacin de Objetos (LDO / (Hibernate / EZPDO). Data Access Objects / LMO). Relaciones entre Clases y Objetos DAO (IBatis, Propel).
Semana
Tema
Tema
1 / 11 1 / 11 1 2 Bases de Datos Distribuidas y Paralelas: 2 Bases de Datos Distribuidas y Paralelas: 11 / 1 11 / 1 4 6 7 Distribucin de objetos, arquitectura y Distribucin de objetos, arquitectura y modelos distribuidos y paralelos, replicacin modelos distribuidos y paralelos, replicacin y fragmentacin, modelos y procesamiento y fragmentacin, modelos y procesamiento de consultas y modelo de concurrencia. de consultas y modelo de concurrencia. (Parte 1) (Parte 2) 1 / 11 1 / 11 1 2 11 / 1 11 / 1 5 8 Bases de Datos semi-estructuradas: 2 XML, Modelo de Objetos de Documento 9 (DOM). Definicin de Tipos de Documentos DTD. Bases de Datos semi-estructuradas: Introduccin a las Bases de Datos SemiEstructuradas, Lenguajes, Sistemas de Gestin de bases de datos en XML, correspondencia entre SGBD y XML, transmitir, ordenar y presentar datos. Bases de Datos semi-estructuradas: Esquemas (XSD) y transformaciones y hojas de estilo XSL. Consultas a XML en XPath / XQuery
1 / 11 1 / 11 1 3 11 / 1 11 / 1 6 0
3 Bases de Datos semi-estructuradas: 1 Web, arquitecturas a 3 capas, tecnologas dinmicas, pginas activas.
Plan de Evaluacin
ESTRATEGIAS DE EVALUACIN I Examen Escrito II Examen Escrito III Examen Escrito IV Examen Escrito Tareas propuestas en clases
FECHA 23/05/09 27/07/09 18/07/09 18/09/09 A lo largo de todo el semestre 11/09/09 25/09/09 --
Proyecto Final
Evaluacin del proyecto Informes de avance y final del proyecto Presentacin oral del proyecto (Evaluado por medio del proyecto final)
30%
Laboratorio
--
NOTA: Para aprobar el curso, adems de tener una nota final mayor o igual a 10pts, se requiere: 1) Un porcentaje de asistencias (tanto a las clases de teora como a las de laboratorio) superior al 75%. 2) Obtener un promedio en los parciales escritos y las tareas mayor a 10pts. 3) Tener una nota superior a 10pts en el proyecto final.
Desarrollar habilidades en el uso de los modelos y tcnicas utilizadas en las bases de datos relacionales y objeto-relacionales Lograr un alto nivel operativo en el modelado de bases de datos Obtener una visin global sobre la tecnologa de construccin de los Sistemas de Gestin de Bases de Datos
Piense!, Piense diferente! ...pero sobre todo... Use el sentido comn! Debata, cuestione, sea inquisitivo! Lea, lea y lea! Lea libros (de ingeniera), literatura, blogs, foros, trate de entender que piensa la gente y vea que puede usted aportar a esas ideas.
Elmasri, R. Y Navathe, S. Fundamentos de Sistemas de Bases de Datos. Pearson Addison-Wesley 2da. Edicin
Base de Datos / Datos Base de Datos: Conjunto de datos relacionados entre si. Navathe Dato: Hechos conocidos que pueden registrarse y que tienen un significado implcito. Navathe
Dato Pedro Prez 34 Computacin 2500 6987223 6987223 44 13/07/75 23 12987223 Juan Rondn 2100 30/10/65 23 23 Conjunto de Datos
DEPARTAMENTO Cdigo (ENTERO) (NO NULO, > 0) NombreDpto (CADENA) (NO NULO, MENOR QUE 10 CARACTERES, MAYOR QUE 3 CARACTERES), CdulaJefe (CADENA) (8 CARACTERES)
Informacin
Cdigo=23 NombreDpto= Computacin CdulaJefe=6987223 Nombre=Pedro Prez Salario(BsF/Mes)=2100 Edad=34 Cdula=12987223 FechaNac(DD/MM/AA) =13/07/75 CdigoDpto=23 Nombre=Juan Rondn Salario(BsF/Mes)=2500 Edad=44 Cdula=6987223
Base de Datos
BD
Nombre=Juan Rondn Salario(BsF/Mes)=2500 Edad=44 Cdula=6987223 FechaNac(DD/MM/AA) =30/10/65 CdigoDpto=23
Es direccionable directamente por las instrucciones del procesador y se puede acceder de forma aleatoria
No es direccionable directamente por las instrucciones del procesador (Pero se puede acceder de forma aleatoria)
NO es direccionable directamente por las instrucciones del procesador y NO se puede acceder de forma aleatoria (Acceso secuencial)
Memoria Secundaria
1952: Carretes de cinta de 12 y 1,4 GB 2002: Cartuchos de 1GB-50GB. Prototipo IBM de 1TB Hoy en da se fabrican Cintas de 800GB y ms an
Nivel 0 (Data Striping): Acceso a todos los discos en paralelo, colocando bytes de cada archivo en varios discos. Si falla un disco, falla todo el sistema. Nivel 1 (Data Mirroring): Lee / escribe datos en dos o ms discos, si hay una falla se pasa al espejo instantneamente. Mejor rendimiento, menor capacidad. Tolerancia a fallas.
Nivel 2: No disponible comercialmente, discos no estndares. Nivel 3 (Paridad): Coloca los datos en varios discos, pero usa un disco para tener los datos de paridad. Si hay una falla, puede reconstruir los datos sin tener la copia fsica (espejo).
Nivel 4 (Paridad): Como el nivel 3 pero coloca bloques en vez de bytes, pero el disco de paridad es el cuello de botella. Nivel 5 (Paridad): Usa bloques de datos y paridad colocados en los diferentes discos, eliminando el cuello de botella del 4. Nivel 6 (Paridad Dual): Como el nivel 5, pero calcula la paridad dos veces y la escribe en los diferentes discos. Soporta varias fallas simultneas, pero baja el rendimiento del arreglo.
http://es.wikipedia.org/wiki/RAID
Archivos Como se Almacena la Informacin en la MS? Archivo Fsico: coleccin de bytes u octetos almacenados en el medio de almacenamiento secundario
... ... M ... ... H u ... ... o n 2A ... l d AA ... a o F2 ... 56 ...
Los datos estn fsicamente ubicados en algn lugar de la memoria secundaria y son accedidos por un Sistema Manejador de Archivos (SMA) (Ej. el Sistema Operativo)
Informacin Como se Almacena la Informacin en la MS? Archivo Lgico: coleccin de registros que tienen una estructura definida y especificada en el programa que lo utiliza
PedroPerez|13445992|25|19750713 LuisGuerra|4559352|21|19650324 HectorGutierrez|12835361|44|19500305 PedroPerez134459922519750713 LuisGuerra45593522119650324 HectorGutierrez128353614419500305
Es importante la estructura lgica de los registros, formato del archivo, etctera (en lugar de la fsica en la memoria secundaria) (Abstraccin!)
SMA
Programa de Aplicacin
Objetivos / Funciones de un SMA Utilizacin de los discos: Permitir el manejo de la memoria secundaria / identificacin de archivos / manejo de volumenes Independencia entre los programas de aplicacin y las memorias secundarias: Posibilidad de cambiar los datos de memoria secundaria sin cambiar los programas de aplicacin Soporte de mltiples usuarios / procesos: Mltiples usuarios o procesos accediendo de forma simultanea o distribuida en el tiempo al archivo Posibilidades de acceso secuencial y aleatorio / direccionamiento relativo
Objetivos / Funciones de un SMA Administrar el espacio libre de la memoria secundaria Uso de lenguajes anfitriones: Es posible escribir un programa utilizando operaciones de E/S en algn tipo de lenguaje de programacin. Tener un API para realizar operaciones sobre archivos Seguridad y proteccin de archivos: Proteccin de los archivos contra accesos malintencionados o no autorizados (Derechos de acceso, claves de proteccin) y garantizar la conservacin de los archivos en caso de fallas de algn equipo o de algn programa (Fallas simples / catastrficas)
Funciones de un SMA
1. Manipulacin de archivos: Instrucciones bsicas: CREAR y DESTRUIR un archivo. ABRIR, antes de LEER o ESCRIBIR se controla su identidad y se abre un camino de acceso entre el programa de aplicacin y la memoria secundaria. Cuando se finaliza el uso del archivo se cierra el camino de acceso con CERRAR. 2. Direccionamiento relativo: este es til en caso de copia del archivo y control del mismo. Direccin relativa: desplazamiento con respecto a la direccin de inicio del mismo. Generalmente se divide el archivo en pginas (bloques, grupos, paquetes, intervalos o cubetas), donde la direccin relativa de un octeto se compone del nmero de pgina + el nmero del octeto dentro de ella.
Funciones de un SMA
Tamao de pgina: normalmente igual a la longitud del "buffer" de E/S. Se puede acceder a una o varias pginas mediante los algoritmos de localizacin en MS y de conversin de direcciones relativas a direcciones reales y viceversa. Los registros son colocados dentro de las pginas por los mtodos de acceso siguiendo la organizacin escogida. Si se tienen varios registros dentro de una misma pgina se dice que ellos estn agrupados en un mismo bloque y ese nmero define el factor de bloqueo. Si dentro de la pgina los registros van unos despus de los otros sin que existan huecos intermedios se dice que hay compactacin. Con la compactacin un registro puede estar parte en una pgina y parte en la pgina siguiente.
Funciones de un SMA
1. Localizacin de espacio en la memoria secundaria: El tamao de un archivo puede ser fijo o variable. En cualquiera de los dos casos se necesita reservar zonas de MS continuas para el almacenamiento del mismo. Dichas zonas se denominan regiones las cuales son zonas adyacentes asignadas de una sola vez al archivo. Las regiones asignadas a un archivo generalmente no son contiguas fsicamente por lo que el SMA debe poder encontrarlas. Para ello se guardan las listas de las regiones asignadas a los archivos como tablas o como listas enlazadas. El tamao de una regin es variable y se asigna a partir de un mnimo llamado unidad de localizacin, por ejemplo una pista. Luego que un archivo se destruye las regiones son liberadas para que puedan usarse nuevamente
Funciones de un SMA
1. Localizacin de los archivos en los volmenes: Debe poder identificar un volumen, con un nombre o un nmero que le sirve al operador para identificar el volumen al montarlo o desmontarlo en la unidad. La etiqueta de un volumen es el primer sector donde se guarda su identificacin particular. Para encontrar el archivo en el volumen se usa un descriptor de archivo o entrada de un directorio que es el conjunto de informaciones que permiten describir las caractersticas de un archivo. Tales entradas se agrupan en el directorio que es una tabla del volumen que contiene las entradas del directorio o del catlogo. Si el nmero de archivos es muy grande se tienen varios catlogos formando una jerarqua de directorios.
Funciones de un SMA
1. Control de los archivos: El ncleo del SMA incluye las funciones de: compartir archivos, resistencia a las fallas, seguridad y confiabilidad de los datos Organizacin y mtodos de acceso selectivo Un mtodo de acceso es selectivo si l no es secuencial. Para poder acceder en forma selectiva al registro deseado es necesario contar con un identificador del registro o del conjunto de registros que se desean obtener luego de la bsqueda. Este identificador se llama comnmente la clave de bsqueda o de recuperacin.
casas.txt ...
Listar Casas
clientes.txt ...
Reporte de Ventas (Mercado)
edificios.txt ...
Listar Edificios
ventas.txt ...
Los rectngulos son archivos de texto y los crculos son programas (de consola, CGI u otros)
Registrar Venta
contable.txt ...
PROBLEMAS QUE SE PRESENTAN AL ALMACENAR Y ACCEDER A LOS DATOS USANDO SOLO UN SMA POR QUE UN SMA NO ES ADECUADO?
Sistema de Gestin de Base de Datos (SGBD) Sistema de Gestin de Base de Datos (SGBD): Es un conjunto de programas que permiten a los usuarios crear y mantener una base de datos. Por tanto, el SGBD es un sistema de software de propsito general que facilita el proceso de definir, construir y manipular bases de datos para diversas aplicaciones. Navathe Un Sistema de Gestin de Base de Datos (SGBD) consiste en una coleccin de datos interrelacionados y un conjunto de programas para acceder a esos datos. Silberschatz
Objetivos de un SGBD
Independencia fsica: Estructura de almacenamiento de datos independiente de su estructura lgica en la realidad. Independencia lgica: Independencia entre los datos tal como son vistos por las aplicaciones en relacin a su estructura lgica en la realidad. Seguridad de los datos: Se debe permitir la proteccin contra accesos no autorizados o malintencionados a los datos
Nivel Externo o Nivel de Visin Independencia Lgica Nivel Conceptual Independencia Fsica Nivel Interno
Esquema Fsico
BD
MS
Objetivos de un SGBD Manipulacin de los datos por personas no especializadas en computacin: Permitir que cualquier persona con autorizacin consulte los datos de la base de datos por medio de lenguajes no procedimentales (se dice lo que se quiere pero no como obtenerlo). No es necesario ser un programador para acceder a los datos. Acceso eficaz y eficiente a los datos: Eficaz: es posible acceder a los datos, sin necesidad de ser un especialista o de tener mucho conocimiento de como estn estructurados internamente. Eficiente: es posible acceder a los datos empleando cantidades razonables de tiempo, memoria, procesador, etctera
Objetivos de un SGBD Administracin centralizada de los datos: Los datos estn centralizados y son controlados por un grupo de trabajo que se dedica a la definicin de las estructuras de almacenamiento y de los datos de la base de datos, siguiendo su evolucin a travs del tiempo Redundancia de datos controlada: La administracin centralizada debe velar por la no duplicacin fsica de los datos que sern compartidos por todos los usuarios, y en caso que sea absolutamente necesario un cierto nivel de redundancia, ste debe estar estrictamente controlado por el SGBD
Objetivos de un SGBD
Coherencia de los datos: El SGBD debe tener ciertas facilidades o tiles para hacer que los PA respeten las reglas de integridad de la BD, en particular aquellas correspondientes a la modificacin de los datos Posibilidad de compartir los datos y manejo de concurrencia: Un PA puede usar los datos almacenados en la BD como lo desee y como si fuera el nico en usarlo, sin saber que otro PA puede estar utilizando los mismos datos o realizando modificaciones concurrentemente en la BD
sql>_
PA
Dic. de Datos
Memoria Secundaria
Aparecen los mtodos de acceso. Procesamiento en lotes, en lnea o en tiempo real Diferencia entre archivo lgico y fsico.
Independencia fsica. Hay independencia lgica, fsica y de localizacin. No hay comparticin de datos Se mantiene la redundancia y la inconsistencia de datos. Hay comparticin de datos Redundancia y consistencia de datos controlada.
Manejo de objetos compuestos y complejos Manejo de cualquier tipo de datos No redundancia. Soporte de evolucin del esquema. Manejo de versiones y reglas.
Aos 70 y 80. 2da. 3ra. y 4ta. generacin de SMBD Manejo de la integridad y seguridad de datos. Datos direccionables a nivel de campo y grupo.
Aos 70 y 80. 2da. 3ra. y 4ta. generacin de SMBD Aparecen los lenguajes declarativos de descripcin y de manipulacin de datos.
El SMA tiene sus primitivas de manejo de archivos utilizadas desde los lenguajes.
Uso de los lenguajes orientados por objetos para descripcin y manipulacin de objetos.
Hay recuperacin por Adicionalmente hay varias claves recuperacin por el concatenadas o no identificador del objeto
Bibliografa
Elmasri, R. Y Navathe, S. Fundamentos de Sistemas de Bases de Datos. Pearson Addison-Wesley 2da. Edicin (Captulos 1 y 2) Korth, H. Y Silverschatz, A. Fundamentos de Bases de Datos. McGraw-Hill 2da Edicin (Captulo 1)