Académique Documents
Professionnel Documents
Culture Documents
Objetivos
Proporcionar al participante los conceptos bsicos de bases de datos y dar a conocer las principales funcionalidades de los sistemas administradores de bases de datos. Profundizar en el estudio del modelo relacional, su fundamento terico y lenguajes de consulta. Efectuar prcticas con el lenguaje
Contenido
1. 2. 3. 4. 5. 6. 7. 8. Introduccin (2 horas) El ambiente tecnolgico de las bases de datos(1 hora) El modelo relacional (2 horas) Instrumentacin de la base de datos (4 horas) Normalizacin (5 horas) Integridad y Seguridad (2 horas) Lenguajes para bases de datos (3 horas ) Manejo de Transacciones (1 horas)
Metodologa y Evaluacin
Las sesiones de clase son usadas por el instructor para
estimular la discusin y desarrollar nuevas relaciones con el propsito de emitir juicios e implicaciones que fundamenten los conocimientos que se desean obtener en el curso. 20 horas de clase con profesor titular y 28 horas de trabajo independiente, en el que se llevarn a cabo tareas y trabajos de desarrollo. Asistencia y participacin en clase 60%
40%
4
1. Introduccin
Qu es una Base de Datos? Sistemas de Informacin y Bases de Datos Sistemas Manejadores de Bases de Datos El campo de las bases de datos Comparacin con el proceso por archivo Paradigma de base de datos Niveles de automatizacin Aplicaciones
5
Definicin
Base de Datos o BD
Coleccin de todos los datos operativos de una Empresa de acuerdo a un modelo especfico que son accesibles desde cualquier lugar fsico y nivel de la empresa (Estratgico, Tctico, Operativo)
Una BD debe cumplir con las caractersticas de:
El campo de las BD
Eficiencia Acceso y modificacin de grandes volumenes de datos Adaptabilidad Supervivencia de datos bajo errores, reduciendo inconsistencias Control del acceso Simulataneidad de uso mltiple dentro de una congruencia con control de concurrencia y seguridad Persistencia Existencia y mantenimiento de datos por largos perodos de tiempo, independientemente del modo de acceso
9
Modelo Semntico Inicialmente de R. Quillian usado solo en investigacin Modelo Binario Instrumentado por Stonebraker basado en el modelo de Codd
(Ingres)
11
12
Entorno de operacin
13
EXTRANET / INTRANET:
El entorno actual
Interaccin actual entre el WWW y la BD
14
Niveles de Instrumentacin
15
16
3. El Modelo Relacional
Definicin del modelo relacional Esquema relacional Propiedades estructurales Definicin de relacin Identificacin de tuplas Almacenamiento de relaciones
17
Modelo de Datos
Un modelo es un conjunto de conceptos para describir los datos y la relacin semntica entre ellos, dentro de las restricciones que apliquen en la empresa La triada MD { G, O, R } G Reglas de generacin de objetos
0
R
MD Notacin formal matemtica para expresar datos y relaciones Esquema del MD Es un plano de la BD Vista del MD es un subesquema del MD
18
Modelado
19
21
entidad: Edades Nombre x Edad Nombre Pedro Martn Gonzalo Teresa Edad 34 45 23 23
Note que no todos las tuplas estn relacionadas, igualmente los entidades son solo un subconjunto de todas las combinaciones 22 posibles de los productos cartesianos
Identificacin de tuplas
Tradicionalmente se conoce como llave de acceso a aquel campo o campos de un registro que nos dan permiten llegar directo a un dato, por ejemplo el nombre de la persona me da su edad o su sexo. En el modelo relacional se mantiene esta situacin siendo este dominio o conjunto de dominio la llave de acceso. Para encontrar los indices principales, en el modelo buscaremos aquellos dominios que son independientes, esto es aquellos de los que los dems dominios de la relacin dependen para generar una relacin funcional. A esto le llamaremos dependencias funcionales o DF. Es comn que el dominio o los dominios independientes correspondan a la llave de acceso de un archivo (igualmente al ndice principal en un archivo indexado).
23
Identificacin de llaves
Tradicionalmente existen las siguientes tipos de llaves de acceso a un archivo: Llave Primaria: Dominio(s) independientes en la entidad Llave Compuesta: Si la llave primaria es formada por varios dominios Super Llave: Conjunto de llaves que satisfacen la identificacin nica. En el modelo relacional es lo que se desea, para lo que se requiere el proceso de normalizacin de entidades en el modelado de la realidad Atributo Primo: es aquel dominio independiente y que forma parte de la llave de una entidad especfica. Atributo No primo: es aquel dominio que dependa de una llave en una entidad, sin participar en la llave. Llave Fornea: Aquel dominio que existiendo como dependiente en una entidad es a su vez una llave (Atributo primo) en otra entidad de la BD.
24
25
Inicial
26
I n t e r m e d i o s
27
I n t e r m e d i o s
28
I n t e r m e d i o s
29
I n t e r m e d i o s
30
C o l e c t o r
31
Completo
32
Colector Completo
33
Diagrama de la BD
34
Manejo de rboles B y B *
Este es el algoritmo ms utilizado actualmente en el desarrollo de bases de datos, ya que permite una insercin ordenada en rboles balanceados en los ndices.
35
Instrumentacin actual de un BD
Por su parte los mecanismos descritos pueden presentan Todava problemas de eficiencia, por lo que el manejo de dominios se efecta a travs de Entidades Independientes, por medio de un archivo colector de repeticiones o sinnimos como se muestra: Dominio a b Entidades ABC, TAM ABC, MTU SINONIMOS aprima, alpha
Igualmente, se maneja una inversin parcial de las entidades; esto es nicamente se indexan aquellos dominios especficamente solicitados por el programador o 36 administrador de la base de datos.
5. Normalizacin
Diseo de esquemas relacionales
Relaciones libres de anomalas Ejemplos de descomposicin Descomposicin sin prdida
Dependencia funcional
Ejemplos bsicos
Gua para normalizar 3NF Otras formas normales Comparacin con otros modelos
Modelos de datos
37
reg 2 reg 3
MESA GISA
15 aos 20 aos
Cholula Puebla
No esta normalizada ya que no existen relaciones atmicas entre los dominios. Anomala De qu tamao es un registro?
Entidad en 1FN
En el producto cartesiano todos los dominios tienen valores atmicos
tupla 1 tupla 2 tupla 3 tupla 4 tupla 5 tupla 6 tupla 7 tupla 8 tupla 9
Nombre TASA TASA TASA TASA MESA MESA TASA GISA GISA
Antig 25 aos 25 aos 25 aos 25 aos 15 aos 15 aos 20 aos 20 aos 20 aos
Dire cciones Reforma 23 Reforma 23 Reforma 23 Reforma 23 Juarez 15 Juarez 15 Sur 322 Sur 322 Sur 322
Ciudad Puebla Puebla Puebla Puebla Cholula Cholula Puebla Puebla Puebla
Producto clavos tornillos tuercas tachuelas tuercas tachuelas clavos tornillos tuercas
Anomala
Dire cciones Ciudad Reforma 23 Puebla Juarez 15 Cholula Sur 322 Puebla
Producto clavos tornillos tuercas tachuelas tuercas tachuelas clavos tornillos tuercas Cant 400 200 100 50 30 20 20 39 50 40
Entidades en 2FN
Las entidades estn en 1FN y adems cada dominio o atributo depende de un sola llave: Ent 1 Nombre ==> Ant, Dir,Cd Ent 2 Nombre, Producto ==> Cant
Entidades en 3FN
Ent 1 Nombre TASA MESA GISA Antig 25 aos 15 aos 20 aos Dire cciones Reforma 23 Juarez 15 Sur 322
Las entidades estn en 2FN y adems cada dominio o atributo depende NO transitivamente de un sola llave: Ent 1 Nombre ==> Ant, Direcciones Ent 3 Direcciones ==> Ciudad
40
Entidades normalizadas
Ent 1 tupla 1 tupla 2 tupla 3 Nombre TASA MESA GISA Antig 25 aos 15 aos 20 aos Dire cciones Reforma 23 Juarez 15 Sur 322
Ent 2
Nombre TASA TASA TASA TASA MESA MESA TASA GISA GISA
Producto clavos tornillos tuercas tachuelas tuercas tachuelas clavos tornillos tuercas
reg 2 reg 3
MESA GISA
15 aos 20 aos
Cholula Puebla
Normalizacin Ulterior
La normalizacin puede ser continuada mas all de la 3FN, existen argumentos acadmicos interesantes para la existencia de
BCFN Forma Normal de Boyce y Codd Las entidades estn en 3FN y adems todo dominio independiente es una llave candidato: Ent={A,B,C,D} y las depencias son A==> BCD y D==>A aqui A y D son llaves 4FN Cuarta Forma Normal Las entidades estn en BCFN y adems no se tienen dependencias multievaluadas
5FN Quinta Forma Normal
42
E n t r e v i s t a
La empresa YAVAS empresa dedicada a la fabricacin de herrajes para muebles de diversos tipos, ha llamado al experto para que sistematice su operacin de pedidos. He aqu un registro de la entrevista: Gerente -- Mire ingeniero queremos que nos ponga un sistema
moderno con todas las ventajas de la computacin, dgame que mquina comprar y que sistema de base de datos a usar.
E n t r e v i s t a
(2)
Gua de Normalizacin
1. Defina los Dominios ( Atomice lo mnimo necesario ) 2. Defina los Formatos ( Defina formatos comunes ) 3. Escriba todas las suposiciones semnticas iniciales 4. Obtenga la Tabla de Dependencias (conectando todos los dominios) 5.Determine las dependencias funcionales ( sentido de la fecha, dominios independientes conjuntos ) 6. Elimine las dependencias transitivas 7. Partiendo de la Tabla de Dependencias obtenga: las entidades mnimas necesarias, tomando cada dominio(s) independiente para entablar a la entidad. 8. Complete la lista de suposiciones semnticas 9. Presente los resultados: Dominios, Entidades, Suposiciones 10. Obtenga aprobacin firmada de la definicin en caso necesario efecte las modificaciones requeridas (un buen diseo debe no contener ms de 100 dominios y 40 entidades por sistema )
45
D o m i n i o s
1. Mueble: Integer Ejemplo : 32 2. Descripcin Mueble: String ( 40 ) Ejemplo : "Librero Grande" 3. Direccin: String ( 40 ) Ejemplo : "Jurez 34, Toluca, Mx." 4. Herraje: Integer Ejemplo : 45 5. Nmero: Integer Ejemplo : 12 6. Descripcin Herraje: String ( 40 ) Ejemplo :"horquilla mediana 7. Calidad: String ( 10 ) Ejemplo : "cromo" 8. Folio: Integer Ejemplo : 1234 9. Fecha: Date long Ejemplo : 12/12/1997 10. Lnea Detalle: Integer Ejemplo : 13 11. Cantidad: Integer Ejemplo : 80 12. Planta: Integer Ejemplo : 12 13. Inventario: Integer Ejemplo : 439 14. Descripcin Planta: String (30) Ejemplo : "automatizada grande" 15. Volumen: Integer Ejemplo : 500 16. % de Descuento: Integer Ejemplo : 25 17. Precio: Real Ejemplo : $ 0.50 46
Realidad Informacional
47
E n t i d a d e s
1. Muebles : 2. Direcciones : 3. Ensambles : 4. Herrajes : 5. Ordenes : 6. Detalles : 7. Inventarios : 8. Plantas : 9. Descuentos : Suposiciones
( Mueble, Descripcin Mueble ) ( Direccin, Cliente ) ( Herraje, Mueble, Nmero ) ( Herraje, Descripcin Herraje, Calidad, Precio ) ( Folio, Direccin, Fecha ) ( Folio, Lnea Detalle, Cantidad, Herraje ) ( Planta, Herraje, Inventario ) ( Planta, Descripcin Planta )
En cada se planta se producen diversos herrajes Herrajes iguales se producen en plantas distintas El descuento depende del volumen y del herraje El cliente tiene distintas direcciones de envo Un mismo herraje se utiliza en varios muebles Muebles distintos usan herrajes similares En una orden de compra puede tener varias lneas de detalle
48
a Entidad - Relacin
51
6. Integridad y seguridad:
Directorio de Datos
Las bitcoras modelan y registran los procesos que se efectan dentro de la base de datos
Se logra por medio de almacenar los datos asociados con la ejecucin de los comandos del SQL de la base de datos (altas bajas cambios, perdidas) . 54 Contienen el QUE, QUIEN, COMO, DONDE y CUANDO de la BD
BITACORAS:
QUE, QUIEN, COMO, DONDE y CUANDO Bitcora de Usuarios:
Usuario, Password, depto, sistema, archivos, terminal, permisos
Bitcora de Archivos:
Password, Dueo, sistema que los usan, dominos, formatos, ubicacin, usuarios
Catlogo de Sistemas:
Depto, sistema, archivos, terminal, programas, responsable
Bitcora de Errores:
Tipo, programa, descripcin, hora, lugar, usuario, fecha, archivo, sistema
Bitcora de Uso:
Fecha, Usuario, Sistema, Permiso, Terminal, Registro, tipo de a,cceso Imagen Vieja, Imagen Nueva
56
Uso de la Bitcora
Ante estas actualizaciones en las Entidades TAM y ABC la bitcora refleja la siguiente actividad
57
Recuperacin
58
Arranque en Fro
1 2 3
Determinacin de la Entidad (Archivo) perdido Cargado del ltimo respaldo Ordenamiento de la bitcora segn el archivo perdido Lectura de Imgenes nuevas de cada registro de la entidad en cuestin Lectura de Imgenes viejas de la bitcora y corroboracin con la imagen en el respaldo Actualizacin correspondiente de ms antiguo a ms reciente
59
4
5
Respaldos
1 2 3 4
Respaldar la base de datos BD cuando se llene la bitcora de uso Respaldar la bitcora de uso y limpiarla la copia actual Se deben mantener copias de la BD y la bitcora en el sitio Es recomendable tener una copia adicional en un lugar ajeno fsicamente de la instalacin El tamao de la bitcora es funcin del nmero de actualizaciones que tenga la base de datos
60
Arranque en Caliente
1 2 3 4
Determinacin del ltimo punto estable Lectura de imgenes viejas de los archivos modificados en el perodo de inestabilidad del proceso usando la bitcora de uso Lectura de imgenes nuevas de la bitcora y corroboracin con la imagen en el archivo Desactualizacin de los archivos por medio del reemplazo de imgenes viejas por nuevas Aviso a los usuarios para que repitan las actualizaciones efectuadas durante el perodo de inestabilidad
61
64
Ejemplos de SQL
Asumiendo la existencia de los siguientes archivos (entidades)
Muebles : ( Mueble, Descripcin Mueble ) Direcciones : ( Direccin, Cliente ) Ensambles : ( Herraje, Mueble, Nmero ) Herrajes :
( Herraje, Descripcin Herraje, Calidad, Precio )
Ordenes : ( Folio, Direccin, Fecha ) Detalles : ( Folio, Lnea Detalle, Cantidad, Herraje ) Inventarios : ( Planta, Herraje, Inventario ) Plantas : ( Planta, Descripcin Planta ) Descuentos : ( Herraje, Volumen, % Descuento )
65
66
67
68
Ejemplo Numrico
Se obtienen las siguientes tuplas
69
8. Manejo de Transacciones
Transacciones, Serializacin Enfoques de solucin Protocolo de bloque en dos fases Transacciones Consistencia Estado de transacciones Diagrama de estado en una transaccin Recuperacin de falla
70
Fallida: NO puede ser completada (requiere ser terminada) Terminada: Se efecta un ROLLBACK para deshacer el proceso 71 Comprometida: Se efecta un COMMIT para completarla
Ejemplo de transaccin
72
Bibliografa
Date C. J. Data Base Systems
73