Download BasedeDatos-LSI-LCC
Document related concepts
Transcript
Bases de Datos Relacionales Responsable Cátedra: Silvina Migani JTP: Liliana Romera Ayudante: Clase Lunes: 15,30 a 18,25 hs. (4 horas) Miércoles: 15,30 a 19,15 hs. (6 horas) Consulta Martes (Teoría): 9 a 13 hs. 3 Parciales (teórico-práctico) 3 Trabajos Grupales 1. Trabajo Práctico Diseño BD Diseño conceptual y lógico de una base de datos: Modelo ERE – Herramienta Diseño – Generación de tablas – Normalización de tablas 2. Trabajo Práctico SQL - Taller Sobre la realidad del trabajo anterior: Crear la bd. Insertar tuplas. Modificar tuplas. Eliminar tuplas. Seleccionar tuplas. Índices. Vistas. Restricciones Integridad. Privilegios. 3. Trabajo Práctico Datawarehouse Parcial 1: 23 de Abril Recuperación Parcial 1: 8 de Mayo Parcial 2: 21 de Mayo Recuperación Parcial 2: 5 de Junio Parcial 3: 25 de Junio Recuperación Parcial 3: 24 de Julio Ser capaz de: Modelar una base de datos relacional Implementar una base de datos relacional Conocer el Modelo Matemático subyacente a toda base de datos relacional Acceder a una base de datos relacional a través del lenguaje SQL Conocer los problemas de entorno de un sistema de base de datos relacional BD Pre-Relacionales BD Relacionales BD Post-Relacionales Parte 1: Introducción Parte 2: Diseño de Bases de Datos Relacionales Parte 3: Modelo Relacional Parte 4: Sistemas de Bases de Datos Relacionales Parte 5: Problemas de Entorno de un DBMS C.J. Date. Introducción a los Sistemas de Bases de Datos Elmasri-Navathe. Fundamentos de Sistemas de Bases de Datos Silberschatz-Korth. Fundamentos de bases de datos Introducción a las Bases de Datos Conjunto de datos relacionados entre sí Hechos conocidos Pueden registrarse Tienen significado Representa una realidad particular (Minimundo, Universo de Discurso, Dominio) Contiene datos relacionados lógicamente Es de propósito específico Tamaño y complejidad variable Mantenida manualmente o por una computadora Una base de datos es creada y mantenida por un conjunto de programas Motor de Base de Datos Sistema de Gestión de Base de Datos Database Management System (DBMS) Archivos Tradicionales vs. Bases de Datos Archivos tradicionales Base de Datos Estructura de archivos dentro de los programas Separación entre programas y datos Necesidad de escribir un nuevo programa para cada nueva tarea Naturaleza autodescriptiva de los datos Aislamiento de los datos Almacenamiento persistente de las estructuras de datos Integración y compartimiento de los datos Manejo de múltiples vistas de los datos Archivos Tradicionales vs. Bases de Datos Archivos tradicionales Base de Datos Redundancia e inconsistencia no controlada por el sistema Redundancia e inconsistencia controlada Problemas de seguridad e integridad Restricciones de seguridad e integridad Dificultad de acceso a los datos, anomalías de acceso concurrente Manejo de la concurrencia Independencia de los datos * Nota: Se explicará con mayor profundidad más adelante Permite: Definir, construir y manipular una base de datos para distintas aplicaciones Por lo tanto: DBMS Sistema de Propósito General Usuarios / Programadores Sistema de Base de Datos Programas de Aplicación/Consultas DBMS Software para procesar consultas /programas Software de acceso a datos almacenados Base de Datos Almacenada Definición Base de Datos Almacenada El propósito principal de un DBMS Visión abstracta de los datos Esconde detalles de cómo se almacenan y mantienen los datos (no exclusivo de los DBMSs) El Nivel Físico (Nivel Interno) La totalidad de los datos que constituyen la base de datos, tal como se almacenan en el almacenamiento secundario El Nivel lógico (Nivel Conceptual) La totalidad de los datos que constituyen la base de datos con la “forma” de la estructura de datos propia de una base de datos relacional (tablas) Nivel de vistas (Nivel Externo) Los datos de una porción de la base de datos con la “forma” de la estructura de datos propia de una base de datos relacional (tablas) Diferentes vistas externas de la Base de Datos Sistema de Base de Datos | Base de Datos Aplicaciones Dato-Dependientes Conocimiento de la organización de los datos Conocimiento de las técnicas de acceso Es imposible cambiar la estructura de almacenamiento o técnicas de acceso sin afectar las aplicaciones Por qué es tan importante? Necesidad de diferentes vistas de los mismos datos Libertad del DBA de cambiar estructuras de almacenamiento o técnicas de acceso La independencia de los datos es un requisito fundamental en los Sistemas de Bases de Datos Definición: Inmunidad de las aplicaciones frente a cambios en la estructura y/o técnicas de acceso Potencial para imponer normas o estándares Disponibilidad de información actualizada Controlar la redundancia Evitar la inconsistencia Facilita la aplicación de restricciones de seguridad Disponer de procedimientos de respaldo Ayuda a mantener la integridad Facilita lograr una solución de “equilibrio” ante requisitos opuestos Abstracción e Independencia de Datos Flexibilidad (modificación de la estructura de la base de datos) Menor tiempo de creación de aplicaciones Reduce costos, economía de escala (menor tiempo de creación de aplicaciones) Programador de aplicación: Aplicaciones convencionales Aplicaciones en línea Usuarios finales: A través de aplicaciones Consultas no planeadas Administrador de Datos (DA): Qué datos serán almacenados Políticas para mantener y manejar los datos (ej. de seguridad) Administrador de la Base de Datos (DBA): Implementa las decisiones del DA: Crea la base de datos Implementa los controles Responsable de que el sistema opere con la performance adecuada Una base de datos es un conjunto de datos relacionados que representan algún aspecto del mundo real + Un motor de base de datos (DBMS) consiste en un software de propósito general para implementar y mantener una base de datos Sistema de Base de Datos Los sistemas de bd relacionales constituyen una herramienta efectiva para el tratamiento de datos, especialmente en áreas empresariales y administrativas. No obstante el éxito indiscutible de las bd relacionales, como resultado de la evolución tecnológica, han surgido nuevas aplicaciones para las que el modelo relacional resulta de poco poder expresivo. Las aplicaciones de ingeniería (CAD/CAM, CASE), los sistemas de información geográficos, los sistemas de gestión de imágenes y documentos, y en general las tipo multimedia, son aplicaciones datointensivas cuya naturaleza es más compleja que la que manejan los sistemas convencionales y exigen características especiales como son el manejo de versiones, transacciones de larga duración, manejo dinámico de los cambios de esquema, lenguajes de consulta más potentes, manejo de estructuras de datos complejas, etc. Bases de Datos Relacionales Extendidas • Describa un pequeño ejemplo de base de datos. • Identifique los vínculos entre las distintas tablas que conforman la base de datos. • Proponga posibles consultas. • Mencione ejemplos de restricciones de integridad que deban cumplirse. • Mencione, en caso de ser necesario, controles que deberían cumplirse para no caer en un estado inconsistente.