Bases de Datos Relacionales. Responsable Cátedra: Silvina Migani JTP: Liliana Romera Ayudante:

Post on 23-Jan-2016

222 views 0 download

Transcript of Bases de Datos Relacionales. Responsable Cátedra: Silvina Migani JTP: Liliana Romera Ayudante:

ASIGNATURABASES DE DATOS

Bases de Datos Relacionales

Composición Cátedra

Responsable Cátedra: Silvina Migani

JTP: Liliana Romera

Ayudante:

Horarios clase

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.

Evaluaciones

3 Parciales (teórico-práctico)

3 Trabajos Grupales

Evaluaciones

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

Fechas de evaluaciones

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

Objetivos de la Asignatura

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

Bases de Datos Relacionales

BD Pre-Relacionales

BD Relacionales

BD Post-Relacionales

Silvina
Hay un archivo que habla de la historia, se podría ver

Contenido 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

Bibliografía

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

UNIDAD I

Introducción a las Bases

de Datos

Bases de Datos - Definición

Conjunto de datos relacionados entre sí

Hechos conocidos

Pueden registrarse

Tienen significado

Base de Datos - Definición

Representa una realidad particular (Minimundo, Universo de Discurso, Dominio)

Contiene datos relacionados lógicamente

Es de propósito específico

Base de Datos

Tamaño y complejidad variable

Mantenida manualmente o por una computadora

Ejemplo de una Base de Datos Relacional

Ejemplo de una Base de Datos Relacional

Sistemas de Gestión de Base de Datos (DBMS)

Una base de datos es creada y mantenida por un conjunto de programas

Motor de Base de DatosSistema de Gestión de Base de Datos

Database Management System (DBMS)

Estructura de archivos dentro de los programas

Necesidad de escribir un nuevo programa para cada nueva tarea

Aislamiento de los datos

Separación entre programas y datos

Naturaleza autodescriptiva 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

Base de Datos

Archivos Tradicionales vs. Bases de Datos

Redundancia e inconsistencia controlada

Restricciones de seguridad e integridad

Manejo de la concurrencia Independencia de los datos *

Redundancia e inconsistencia no controlada por el sistema

Problemas de seguridad e integridad

Dificultad de acceso a los datos, anomalías de acceso concurrente

Archivos tradicionales

Base de Datos

Archivos Tradicionales vs. Bases de Datos

Nota: Se explicará con mayor profundidad más adelante

Sistemas de Gestión de Base de Datos (DBMS)

Permite:

Definir, construir y manipular una base de

datos para distintas aplicaciones

Sistema de Propósito General

DBMS

Por lo tanto:

Sistema de Base de Datos

Software de acceso a datos almacenados

Software para procesar consultas /programas

Programas de Aplicación/Consultas

DBMS

Sistema de Base de Datos

Usuarios / Programadores

Base de Datos Almacenada

Definición Base de Datos

Almacenada

Abstracción de datos

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)

Niveles de Abstracción

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

Niveles de Abstracción

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)

Niveles de Abstracción

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

Independencia de los 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

Independencia de los Datos

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

Independencia de los datos

Definición:Inmunidad de las aplicaciones

frente a cambios en la estructura y/o técnicas de acceso

Ventajas del enfoque Base de Datos

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

Ventajas del enfoque Base de Datos

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)

Actores

Programador de aplicación:

Aplicaciones convencionales Aplicaciones en línea

Actores

Usuarios finales:

A través de aplicaciones Consultas no planeadas

Actores

Administrador de Datos (DA):

Qué datos serán almacenados Políticas para mantener y manejar los datos

(ej. de seguridad)

Actores

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

Resumiendo …

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

Resumiendo …

Los sistemas de bd relacionales constituyen

una herramienta efectiva para el tratamiento de datos,

especialmente en áreas empresariales y

administrativas.

- La simplicidad del modelo relacional y los mecanismos de abstracción permitieron desarrollar lenguajes de consulta simples;

- La compartición eficiente de los datos;

- La sencillez de la estructura lógica de datos y sus operadores poderosos;

- La confidencialidad, e integridad conferida a la información;

- Los mecanismos de recuperación;

- Las operaciones de consulta optimizadas, y el hecho de constituir un standard, entre otras cosas,

Hacen particularmente exitosas a las BD relacionales

Resumiendo …

Nuevas tendencias

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.

Nuevas tendencias

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 dato-intensivas 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

Ejercicios

• 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.