Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

33
FUNDAMENTOS DE BANCOS DE DATOS Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados

Transcript of Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Page 1: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

FUNDAMENTOS DE BANCOS DE DATOS

Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados

Page 2: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 2

Modelo de Relaciones

Módulo III

Page 3: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 3

IntroducciónModelo de Relaciones - Definiciones

Relación Entidad Atributo Tuplo Llave candidato Llave primaria Llave foránea Llave secundaria

Page 4: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 4

IntroducciónModelo de Relaciones – Reglas de Codd

Regla 0 – Fundamental:Un RDBMS maneja el DB sólo recurriendo a las capacidades relacionales

Regla 1 – Información:Toda la información se representa como relaciones, atributos y tuplos

Regla 2 – Acceso garantizado:Cada ítem de datos se puede acceder mediante el nombre de la tabla, la llave primaria y el atributo correspondiente

Regla 3 – Trato de los valores nulos:Los valores ausentes, representados por nulos, se deben tratar de forma consistente independientemente del tipo de datos

Regla 4 – Catálogo dinámico:El catálogo o diccionario de datos se representa como una relación más y debe poder manipularse interactivamente de la misma forma que cualquier otra relación.

Page 5: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 5

IntroducciónModelo de Relaciones – Reglas de Codd

Regla 5 – Lenguaje comprensivo:Respaldar e integrar, por lo menos un lenguaje que provea para:○ Definición de los datos , de las vistas (“views”) y su manipulación○ Controles (“constraints”) de integridad, acceso y transacciones

Regla 6 – Actualización mediante vistas (“views”)El sistema permite la actualización del DB para todas aquellas vistas que teóricamente sean actualizables.

Regla 7 – Respaldo a funciones primarias:Respalda las funciones de inserción, edición y eliminación a base de manipulación de la relación.

Regla 8 - Independencia física:Cambios en los depósitos de datos o medios de acceso no conllevan modificaciones en las aplicaciones ni en las estructuras lógicas

Regla 9 – Independencia lógica:Modificaciones en las estructuras lógicas no afectan las aplicaciones.

Page 6: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 6

IntroducciónModelo de Relaciones – Reglas de Codd

Regla 10 – Independencia de integridadLas restricciones o controles de integridad se implantan a nivel del catálogo del DB, no mediante codificación o en las aplicaciones.

Regla 11 - Independencia de distribuciónEl lenguaje de manipulación de datos que respalde el DBMS no debe afectar las aplicaciones o programas independientemente de si el depósito de datos está centralizado o descentralizado.

Regla 12 – Regla de no subversiónSi el DBMS respalda algún lenguaje de bajo nivel ese lenguaje no puede afectar las restricciones asociadas a la manipulación relacional de datos que definen este modelo.

Page 7: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 7

IntroducciónModelo de Relaciones

Resumen:Representación relacional – Reglas 1, 4 y 10Entity Integrity – Reglas 2, 3 y 10Referential Integrity – Reglas 1, 2, 3 y 10Independencia por niveles:

○ Física – Regla 8○ Lógica – Regla 9○ Distribución – Regla 11

Manipulación relacional – Reglas 0, 1, 4, 6, 7 y 12

Page 8: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 8

Modelo RelacionesProceso DBLC Modelo de Datos Organizacional:

Análisis de Funciones Análisis de Datos

Diseño: Informes (Output) Estructuras (Input) Queries (Process)

Implantación: Desarrollo Pruebas Carga y/o conversión

Transición operacional Evaluación

Mantenimiento y Evolución

Page 9: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 9

Proceso de Análisis y Diseño para Bancos de Datos (DBLC) Modelo de Datos Organizacional:

VisiónMisiónPrioridadesIntegraciónRespaldo

Resultado:Catálogo IntegralSinónimosHomónimosÍtems de datos críticos o esenciales

Page 10: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 10

Catálogo

Código Descripción Tipo Dim. (largo)

In/Cal LLave Nulo Dominio/ Validación

#Est Número de estudiante

Alfa 9 IN Sí No {0..9}

NomEst Nombre del estudiante

Alfa 25 IN

ApelPatEst Apellido paterno Alfa 35 IN

ApelMatEst Apellido materno Alfa 35 IN

Sex Género Alfa 1 IN No {F,M}

Fnace Fecha Nacimiento

Date IN No {>1/1/1992)

Edad Edad del estudiante

Integer Calc

#SS Número de SS Alfa 9 IN Cand Key

No

Page 11: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 11

Análisis de Funciones Análisis de Datos

Proceso de Análisis y Diseño para Bancos de Datos (DBLC)

PROCESO

Page 12: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 12

Análisis de Funciones:PrimariasSecundariasJerarquía y Controles

Análisis de Datos:Atomicidad y tipos de datosSimples (Input)CompuestosDerivados

Proceso de Análisis y Diseño para Bancos de Datos (DBLC)

Page 13: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Ejercicio 5Problema #1-7 Capítulo 3 Describa las funciones principales Ilustre el proceso correspondiente Provea el catálogo mínimo

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 13

Page 14: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Modelo de Relaciones

14Carmen R. Cintrón Ferrer, 2008, Derechos

Reservados

Page 15: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 15

IntroducciónModelo de Relaciones – Teoría de Conjuntos

Representación del modelo Componentes del modelo:

UniversoConjunto / subconjuntoElemento / Relación

Operadores:Pertenece / no perteneceUniónIntersecciónComplemento

Page 16: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 16

Ejercicio 6

Represente utilizando el esquema Cartesiano los siguientes escenarios:A={1,2,3,4,5,6} B={2,4,6} C={1,3,5,9}

Ilustre el resultado de las siguientes operaciones:A v B A v C B v CA ^ B A ^ C B ^ C~A ~B ~C~A v C ~ A v C ~B v C~A ^ B ~A ^ C ~B ^ C

Page 17: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 17

IntroducciónModelo de Relaciones -Componentes

DB:Esquema ConceptualEsquema LógicoEsquema Físico

DBMS:CatálogoLenguajes: DDL & DML, interfaz

Generadores: Pantallas (Forms), Informes (Reports), Queries, Aplicaciones

DBMS Utilities

Page 18: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Administración del Catálogo Manejo del almacenamiento:

Creación y asignación de espacio Ajustes en ejecución Integración de archivos físicos

Presentación y conversión de los datos Controles de acceso y seguridad:

Acceso concurrente Copias de resguardo y recuperación del DB Asegurar integridad y consistencia de datos Garantizar interacción confiable (“reliable”)

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 18

IntroducciónModelo de Relaciones - Funciones

Page 19: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 19

IntroducciónModelo de Relaciones - Funciones

Funciones Estructurales:CREATE / DROP SCHEMACREATE /DROP TABLE

Funciones de manipulación:INSERTUPDATE /EDITDELETE

Funciones de integridad:COMMIT /ROLLBACK /ROLLFORWARDBACKUP / RESTORE

Page 20: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 20

IntroducciónModelo de Relaciones - Operadores

SELECT PROJECT PRODUCT INTERSECT UNION DIFFERENCE JOIN DIVIDE

Page 21: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 21

Selects Tuples

IntroducciónModelo de Relaciones - SELECT

Page 22: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 22

Chooses Atributes

IntroducciónModelo de Relaciones - PROJECT

Page 23: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 23

{a,b,c} {x,y} =

{a/x,a/y,b/x,b/y,c/x,c/y}

IntroducciónModelo de Relaciones - PRODUCT

Page 24: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 24

IntroducciónModelo de Relaciones - INTERSECT

A BAB

A Intersect B

Page 25: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 25

IntroducciónModelo de Relaciones - UNION

A B

A Union B

Page 26: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 26

IntroducciónModelo de Relaciones - DIFFERENCE

A BB

A Difference B

Page 27: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 27

{a1/b1,a2/b1,a3/b2}

{b1/c1,b2/c2,b3/c3} =

{a1/b1/c1,a2/b1/c1,a3/b2c2}

IntroducciónModelo de Relaciones – Natural Join

Page 28: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 28

{a/x,a/y,a/z,b/x,c/y}

{x,z} =

{a}

IntroducciónModelo de Relaciones - Division

Page 29: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 29

Ejercicio 7 Para las relaciones en la figura 3.8 (Cap. 3) establezca

escenarios donde pueda aplicar los ocho (8) operadores relacionales e ilustre el resultado.

¿Alguno(s) resultado(s) presenta(n) problema(s) lógicos o de integridad?

Page 30: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 30

IntroducciónModelo de Relaciones - Lenguajes

Data Definition Language (DDL):Esquema y estructura lógica

○ Meta data:○ Tipos○ Dominio○ Integridad y Validación

Acceso y seguridad:○ Concurrencia○ Replicación○ Rollback/rollforward○ Backup/Restore

Page 31: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 31

Data Manipulation Language (DML):FuncionesOperaciones relacionalesInteracciónUsuarios y permisos

IntroducciónModelo de Relaciones - Lenguajes

Page 32: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 32

Referencias Database Processing: Fundamentals, Design and

Implementation, Kroenke, Prentice Hall,NN (Latest edition) Database Systems: Design, Implementation and

Management, Rob & Coronel, Thompson, Boston (Latest edition)

Database in Depth, Relational Theory for Practitioners, C.J. Date, 2005, OReilly, Sebastopol, CA, Safari Books Online

Bases de Datos: Desde Chen hasta Codd, Luque, Gómez-Nieto, López y Cerruela, 2002, Alfaomega – RA-MA, Madrid, España

An Introduction to Database Systems, C.J. Date, 2000, Addison Wesley, Mass.

Page 33: Carmen R. Cintrón-Ferrer, 2007-2008, Derechos Reservados.

Carmen R. Cintrón Ferrer, 2008, Derechos Reservados 33

Referencias en línea Atlantic Monthly Online – “As we may think” Database Hall of Fame American Airlines - System SABRE SABRE- Knowledge management system Charles Bachman – Network Implementation CODASYL – Network Model IBM – Hierarchical Model Implementation Relational Model Origins – IBM System R Edgar F. Codd –

“A Relational Model of Data for Large Shared Data Banks”

Wikepedia – Databases