Bases de Datos Relacionales I

LABORATORIO NACIONAL DE INFORMATICA AVANZADA Clave de materia: CEL-MRYS-031 Antonio Sánchez Aguilar www.lania.mx/~Sánchez Asanchez@lania.mx

Septiembre 2004

1

Objetivos
Proporcionar al participante los conceptos básicos 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 teórico y lenguajes de consulta. Efectuar prácticas con el lenguaje

2

Contenido
1. 2. 3. 4. 5. 6. 7. 8. Introducción (2 horas) El ambiente tecnológico de las bases de datos(1 hora) El modelo relacional (2 horas) Instrumentación de la base de datos (4 horas) Normalización (5 horas) Integridad y Seguridad (2 horas) Lenguajes para bases de datos (3 horas ) Manejo de Transacciones (1 horas)

3

 Asistencia y participación en clase 60%  Elaboración de tareas y trabajos individuales 40% 4 .Metodología y Evaluación  Las sesiones de clase son usadas por el instructor para estimular la discusión y desarrollar nuevas relaciones con el propósito 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 llevarán a cabo tareas y trabajos de desarrollo.

1. Introducción ¿Qué es una Base de Datos? Sistemas de Información y Bases de Datos Sistemas Manejadores de Bases de Datos El campo de las bases de datos Comparación con el proceso por archivo Paradigma de base de datos Niveles de automatización Aplicaciones 5 .

Sobre los datos de la empresa En la medida de lo posible los datos en la base deben cumplir con ser o estar : Independientes entre si Distribuidos No redundantes Reales Compartidos 6 .

Definición Base de Datos o BD Colección de todos los datos operativos de una Empresa de acuerdo a un modelo específico que son accesibles desde cualquier lugar físico y nivel de la empresa (Estratégico. Operativo) Una BD debe cumplir con las características de: Unicidad Consistencia Seguridad Privacía Disponibilidad Integridad 7 . Táctico.

Integridad. Eficiencia y seguridad 8 .Comparación entre Archivos y Base de Datos Dependencia de ligas externas a los datos Datos sin compartir en toda la empresa Redundancia de los datos Archivos no relacionados entre sí Acceso limitado y con poca flexibilidad. eficiencia y seguridad Independencia a ligas externas a los datos Datos compartidos y compatibles en la empresa Redundancia mínima y controlada Datos relacionados de acuerdo a un modelo Flexibilidad.

independientemente del modo de acceso 9 . reduciendo inconsistencias Control del acceso Simulataneidad de uso múltiple dentro de una congruencia con control de concurrencia y seguridad Persistencia Existencia y mantenimiento de datos por largos períodos de tiempo.El campo de las BD Eficiencia Acceso y modificación de grandes volumenes de datos Adaptabilidad Supervivencia de datos bajo errores.

2. El ambiente tecnológico de las BD Contexto informático Actividades del modelador de bases de datos Breve cronología de las bases de datos Evolución de la noción de BDs Modelos de datos Esquema e instancia Modelado Modelo de empresa Modelo de datos Modelo de implementación 10 .

aquí presentamos algunos de ellos Modelo Jerárquico Primer modelo de BD. Informix ) Modelo Entidad . Oracle.r. O2 ) Modelo Mutlirelacional Extensión al relacional con inversión total 11 . IDMS fue el producto comercial Modelo Relacional Funcional Diseño de Codd popularizado por Date (RDB. Sybase. IMS es la mas popular Modelo de Redes Definido por C.Diversos Modelos de una BD En realidad han existido diversos modelos para modelar la realidad. Quillian usado solo en investigación Modelo Binario Instrumentado por Stonebraker basado en el modelo de Codd (Ingres) Modelo Orientado a Objetos Popular al representar la tendencia actual (Ilustra.rel) Modelo Semántico Inicialmente de R. muy usado aplicable a diversos modelos ( j. Bachman.Relación Concepción de Chen.

Usos de una Base de Datos 12 .

Entorno de operación 13 .

EXTRANET / INTRANET: El entorno actual Interacción actual entre el WWW y la BD 14 .

Niveles de Instrumentación 15 .

Niveles de Instrumentación (2) 16 .

El Modelo Relacional Definición del modelo relacional Esquema relacional Propiedades estructurales Definición de relación Identificación de tuplas Almacenamiento de relaciones 17 .3.

dentro de las restricciones que apliquen en la empresa La triada MD { G. elementos de manipulación Restricciones inherentes y explícitas MD Notación formal matemática para expresar datos y relaciones Esquema del MD Es un plano de la BD Vista del MD es un subesquema del MD 18 .Modelo de Datos Un modelo es un conjunto de conceptos para describir los datos y la relación semántica entre ellos. O. R } G Reglas de generación de objetos 0 R Operaciones.

Modelado 19 .

Edad > < Fresno. Cada tupla representa un hecho elemental o aseveración de la realidad a modelar: < Id objeto. 20 . propiedad n > < Arbol. Color.Definición del Modelo El modelo relacional es una estructura basada en colecciones de tablas en 2 dimensiones con propiedades especiales.30. por lo que no pueden existir dos instancias iguales. propiedad 2. 10 > El orden de cada tupla en la entidad y de cada dominio es irrelevante en la organización. llamados dominios. 10. … . las asociaciones son únicas. … . propiedad 1. … . Altura. que permiten representar distintos tipos de asociaciones Las tablas se denominan entidades y están formadas por un conjunto de tuplas o instancias de cada relación de datos atómicos. Aunque los valores de los dominios pueden repetirse. café oscuro.

D3 : { d3a. d1b … d1n }. d3b … d3n } Entonces el producto cartesiano D1 x D2 x D3 esta dado por las tuplas < d1a. Codd en los 70’s y parte de la definición matemática de que un entidad es un subconjunto del producto cartesiano entre los dominios de la realidad a modelar: Sean los dominios D1 : { d1a. < d1a.d3b > hasta …..d3n > El subconjunto de este producto es la realidad existente en un momento dado en la empresa 21 .Operaciones con el Modelo El modelo relacional permite consultar las tablas: instancia por instancia insertar nuevas entidades: definición de archivos insertar nuevas instancias: altas eliminar entidades: bajas de archivos eliminar instancias: bajas actualizar entidades: cambios interrelacionar entidades: a través de un dominio El modelo asume la existencia de un lenguaje de interacción poderoso El modelo fue desarrollado por F. d2n. < d1n. d2a. D2 : { d2a.d3a > ……. d2b … d2n }. d2a.

Ejemplos del Modelo Entidades: archivos existentes (esquema) entidad: Direcciones Nombre x Dirección x Nombre Pedro Martín Gonzalo Dirección Pino 67 Encino 40 Suace 34 Teléfono T eléfono 229-3456 456-8907 345-6789 entidad: Edades Nombre x Edad Nombre Pedro Martín Gonzalo Teresa Edad 34 45 23 23 x Estado Civil Estado Civil casado soltero soltero casada Vistas: relación temporal entre archivos (subesquema) Relación entre entidades Nombre Pedro Martín Edad 34 45 Dirección Teléfono Pino 67 229-3456 Encino 40 456-8907 Note que no todos las tuplas están relacionadas. igualmente los entidades son solo un subconjunto de todas las combinaciones 22 posibles de los productos cartesianos .

A esto le llamaremos dependencias funcionales o DF. Es común que el dominio o los dominios independientes correspondan a la llave de acceso de un archivo (igualmente al índice principal en un archivo indexado). en el modelo buscaremos aquellos dominios que son independientes. En el modelo relacional se mantiene esta situación siendo este dominio o conjunto de dominio la llave de acceso.Identificación 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. Para encontrar los indices principales. esto es aquellos de los que los demás dominios de la relación dependen para generar una relación funcional. por ejemplo el nombre de la persona me da su edad o su sexo. 23 .

Atributo No primo: es aquel dominio que dependa de una llave en una entidad. 24 .Identificación 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 identificación única. En el modelo relacional es lo que se desea. para lo que se requiere el proceso de normalización de entidades en el modelado de la realidad Atributo Primo: es aquel dominio independiente y que forma parte de la llave de una entidad específica. Llave Foránea: Aquel dominio que existiendo como dependiente en una entidad es a su vez una llave (Atributo primo) en otra entidad de la BD. sin participar en la llave.

Instrumentación de la Base de Datos Tópicos de instrumentación de BD Esquema con dos entidades Esquema con dos entidades y repeticiones Esquema con dos entidades.4. repeticiones y colector de apuntadores Índice colector 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 .

Instrumentación dinámica de los índices en una BD Acceso Directo por HASHING (Revoltura) Acceso por índices con reordenamiento en lote Este fue un mecanismo muy utilizado. 35 . ya que permite una inserción ordenada en árboles balanceados en los índices. actualmente se encuentra en muchos manejadores de archivos en los años 70's Manejo de Árboles B y B * Este es el algoritmo más utilizado actualmente en el desarrollo de bases de datos.

Instrumentación actual de un BD Por su parte los mecanismos descritos pueden presentan Todavía problemas de eficiencia. alpha Igualmente. por medio de un archivo colector de repeticiones o sinónimos como se muestra: Dominio a b Entidades ABC. se maneja una inversión parcial de las entidades. esto es únicamente se indexan aquellos dominios específicamente solicitados por el programador o 36 administrador de la base de datos. MTU SINONIMOS aprima. TAM ABC. . por lo que el manejo de dominios se efectúa a través de Entidades Independientes.

Forma normal(3NF) Guía para normalizar 3NF Otras formas normales Comparación con otros modelos Modelos de datos 37 . Forma normal(1NF) 2ª. Forma normal(2NF) 3ª.5. Normalización Diseño de esquemas relacionales Relaciones libres de anomalías Ejemplos de descomposición Descomposición sin pérdida Dependencia funcional Ejemplos básicos Formas normales (anomalías) 1ª.

Anomalía ¿De qué tamaño es un registro? Entidad en 1FN En el producto cartesiano todos los dominios tienen valores atómicos 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 a–os 25 a–os 25 a–os 25 a–os 15 a–os 15 a–os 20 a–os 20 a–os 20 a–os 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 Cant 400 200 100 50 30 20 20 38 50 40 .Primera Forma Normal (1FN) Nombre reg 1 TASA Antig 25 a–os Dire cciones Ciudad Producto clavos tornillos tuercas tachuelas tuercas tachuelas clavos tornillos tuercas Reforma 23 Puebla reg 2 reg 3 MESA GISA 15 a–os 20 a–os Juarez 15 Sur 322 Cholula Puebla No esta normalizada ya que no existen relaciones atómicas entre los dominios.

Segunda Forma Normal (2FN) Sin embargo la 1FN tiene problemas cuando los atributos tienen dependencia de varias llaves o dominios independiente. Producto ==> Cant tupla 1 tupla 2 tupla 3 . Dir. Nombre tupla 1 tupla 2 tupla 3 tupla 4 tupla 5 tupla 6 tupla 7 tupla 8 tupla 9 TASA TASA TASA TASA MESA MESA TASA GISA GISA Antig 25 a–os 25 a–os 25 a–os 25 a–os 15 a–os 15 a–os 20 a–os 20 a–os 20 a–os 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 Cant 400 200 100 50 30 20 20 50 40 Anomalía ¿Qué pasa cuando dejo de comprarle a TASA ? Ent 1 Nombre TASA MESA GISA Ent 2 tupla 1 tupla 2 tupla 3 tupla 4 tupla 5 tupla 6 tupla 7 tupla 8 tupla 9 Antig 25 a–os 15 a–os 20 a–os Nombre TASA TASA TASA TASA MESA MESA TASA GISA GISA 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 están en 1FN y además cada dominio o atributo depende de un sola llave: Ent 1 Nombre ==> Ant.Cd Ent 2 Nombre.

Tercera Forma Normal (3FN) Sin embargo la 2FN tiene problemas cuando uno de los atributos tienen dependencia transitiva de los dominios o atributos Anomalía Ent 1 tupla 1 tupla 2 tupla 3 Nombre TASA MESA GISA Antig 25 a–os 15 a–os 20 a–os Dire cciones Ciudad Reforma 23 Puebla Juarez 15 Cholula Sur 322 Puebla ¿Qué pasa cuando TASA de ser mi proveedor? Entidades en 3FN Ent 1 Nombre TASA MESA GISA Antig 25 a–os 15 a–os 20 a–os Dire cciones Reforma 23 Juarez 15 Sur 322 Las entidades están en 2FN y además cada dominio o atributo depende NO transitivamente de un sola llave: Ent 1 Nombre ==> Ant. Direcciones Ent 3 Direcciones ==> Ciudad tupla 1 tupla 2 tupla 3 Ent 3 tupla 1 tupla 2 tupla 3 Direcciones Reforma 23 Juarez 15 Sur 322 Ciudad Puebla Cholula Puebla 40 .

Por otro lado el tamaño de los archivos tiende a reducirse.Normalización: Redundancia controlada La normalización genera más entidades. Entidades normalizadas Ent 1 tupla 1 tupla 2 tupla 3 Nombre TASA MESA GISA Antig 25 a–os 15 a–os 20 a–os 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 Cant 400 200 100 50 30 20 20 50 40 Entidad sin normalizar Nombre reg 1 TASA Antig 25 a–os Dire cciones Ciudad Producto clavos tornillos tuercas tachuelas tuercas tachuelas clavos tornillos tuercas Reforma 23 Puebla reg 2 reg 3 MESA GISA 15 a–os 20 a–os Juarez 15 Sur 322 Cholula Puebla tupla 1 tupla 2 tupla 3 tupla 4 tupla 5 tupla 6 tupla 7 tupla 8 tupla 9 Ent 3 tupla 1 tupla 2 tupla 3 Direcciones Reforma 23 Juarez 15 Sur 322 Ciudad Puebla Cholula Puebla 41 . siendo ajena para el usuario. sin embargo esta redundancia aparente esta controlada por el manejador de BD.

C.B. 42 .Normalización Ulterior La normalización puede ser continuada mas allá de la 3FN. existen argumentos académicos interesantes para la existencia de BCFN Forma Normal de Boyce y Codd Las entidades están en 3FN y además todo dominio independiente es una llave candidato: Ent={A.D} y las depencias son A==> BCD y D==>A aqui A y D son llaves 4FN Cuarta Forma Normal Las entidades están en BCFN y además no se tienen dependencias multievaluadas 5FN Quinta Forma Normal D/KFN Forma Normal de Dominio y Llave Para los propósitos de una operación administrativa la 3FN es suficientemente poderosa.

Mire yo no soy experto en la materia. He aquí un registro de la entrevista: Gerente -. precisamente por eso lo llame a UD. Gerente -. El éxito que hemos tenido es que nos piden diversos herrajes para diversos muebles.E n t r e v i s t a La empresa YAVAS empresa dedicada a la fabricación de herrajes para muebles de diversos tipos. para hacerlos modulares. que son los chunches que se le ponen a los muebles para armarlos hoy en día (no clavos pues). 43 . esto es sus reportes. Así por ejemplo un mueble lleva distintos herrajes. dígame que máquina comprar y que sistema de base de datos a usar.Con calma hombre.Mire ingeniero queremos que nos ponga un sistema moderno con todas las ventajas de la computación. Esta compañía dedicada a la manufactura de herrajes. primero necesito conocer su realidad informacional. ha llamado al experto para que sistematice su operación de pedidos. Los mismos herrajes se usan en diversos muebles pero en cantidades distintas. sus formatos de entrada. en fin las relaciones del sistema de pedidos. con una cantidad específica de cada herraje por cada mueble. Ingeniero -.

por cada cliente.Además por cada orden de compra llevamos información de la dirección de envío.. Ciertamente cada planta nos entrega diversos herrajes. Gerente -. sus direcciones. Los descuentos los manejamos únicamente por volumen de compra de cada artículo en cada orden.E n t r e v i s t a (2) Gerente -.. Guardamos también el precio del artículo (herraje) por línea de detalle y la fecha de la orden de compra con su numero de folio.Como los herrajes se adquieran de distintas plantas necesitamos conocer el nombre de la planta que lo manufactura y la cantidad en inventario del mismo. el nombre del cliente y la cantidad y tipo de herrajes de cada mueble en cuestión. Ingeniero -. Conocemos también la información de cada mueble en términos de los tipos y números de herrajes que requieren para usarse en pedidos futuros. Por cada herraje conocemos su tipo.Muy bien déjeme trabajar un rato con esta información y le propongo una esquema de sistematización 44 . calidad y descripción...

Defina los Dominios ( Atomice lo mínimo necesario ) 2. 8. Complete la lista de suposiciones semánticas 9. Obtenga la Tabla de Dependencias (conectando todos los dominios) 5. Presente los resultados: Dominios.Guía de Normalización 1. Partiendo de la Tabla de Dependencias obtenga: las entidades mínimas necesarias. Obtenga aprobación firmada de la definición ó en caso necesario efectúe las modificaciones requeridas (un buen diseño debe no contener más de 100 dominios y 40 entidades por sistema ) 45 . tomando cada dominio(s) independiente para entablar a la entidad. Suposiciones 10. Elimine las dependencias transitivas 7. Entidades.Determine las dependencias funcionales ( sentido de la fecha. Escriba todas las suposiciones semánticas iniciales 4. Defina los Formatos ( Defina formatos comunes ) 3. dominios independientes conjuntos ) 6.

Línea Detalle: Integer Ejemplo : 13 11. Folio: Integer Ejemplo : 1234 9. Planta: Integer Ejemplo : 12 13. Descripción Planta: String (30) Ejemplo : "automatizada grande" 15. Inventario: Integer Ejemplo : 439 14. Dirección: String ( 40 ) Ejemplo : "Juárez 34. Descripción Herraje: String ( 40 ) Ejemplo :"horquilla mediana” 7. Toluca." 4. Volumen: Integer Ejemplo : 500 16. Descripción Mueble: String ( 40 ) Ejemplo : "Librero Grande" 3. % de Descuento: Integer Ejemplo : 25 17. Cantidad: Integer Ejemplo : 80 12. Número: Integer Ejemplo : 12 6. Precio: Real Ejemplo : $ 0. Mueble: Integer Ejemplo : 32 2. Fecha: Date long Ejemplo : 12/12/1997 10. Calidad: String ( 10 ) Ejemplo : "cromo" 8.D o m i n i o s 1. Herraje: Integer Ejemplo : 45 5. Méx.50 46 .

Realidad Informacional 47 .

Herrajes : 5. Ordenes : 6. Mueble. Ensambles : 4. Muebles : 2. Calidad. Descuentos : Suposiciones ( Mueble.E n t i d a d e s 1. Volumen. Inventarios : 8. Precio ) ( Folio. Descripción Herraje. Cliente ) ( Herraje. Herraje ) ( Planta. Plantas : 9. % Descuento ) 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 envío Un mismo herraje se utiliza en varios muebles Muebles distintos usan herrajes similares En una orden de compra puede tener varias líneas de detalle 48 . Dirección. Descripción Planta ) ( Herraje. Inventario ) ( Planta. Línea Detalle. Herraje. Descripción Mueble ) ( Dirección. Direcciones : 3. Cantidad. Detalles : 7. Fecha ) ( Folio. Número ) ( Herraje.

Igualmente las oficinas asignadas a cada departamento y los teléfonos de cada oficina. La información con la que cuenta es la siguiente: Por cada departamento tiene un número individual.J.Ejercicios de Normalización (1) La empresa ADELANTE tiene una estructura jerárquica en su operación. que les de todas las flexibilidades y ventajas de que tanto habla un conferenciante un tanto loco llamado F. Por cada proyecto se tiene la información de los empleados que trabajan en el proyecto y el presupuesto del proyecto.J. cada departamento es manejado por un jefe ( y solo uno ). Codd y su ayudante C. consistente en los salarios y puestos que ha desempeñado en la empresa en diferentes fechas. plantear un esquema de bases de datos relacional para esta información? 49 . Finalmente la empresa conoce el tamaño de cada oficina. así como los proyectos que maneja. Por cada empleado. así como su teléfono y su historia salarial. Date. ¿Podría UD. la empresa conoce en que proyecto esta laborando y a que departamento pertenece. además esta convencida de la necesidad de cambiar sus sistemas de información a una base de datos relacional. Cada departamento tiene un presupuesto asignado.

¿Podría UD. Por cada orden de compra. el número del orden.Ejercicios de Normalización (2) Habiendo resuelto su base de datos de personal. la dirección de envío. plantear un esquema de bases de datos relacional para esta información? 50 . Actualmente maneja la siguiente información: Por cada cliente maneja su limite de crédito. la fecha. Por cada línea de detalle en la orden de compra maneja igualmente la cantidad de producto y el número del producto. Por cada producto la descripción del mismo y las plantas donde se produce y por cada planta los productos que produce y el nivel de inventario de cada producto. su balance y las direcciones del mismo. ahora la empresa ADELANTE desea reestructurar su sistema de ordenes y pedidos.

Relación 51 .Conversión entre Modelos de Relacional a Entidad .

si esta subrayado es llave primaria Línea 52 Ligas .Elementos del modelo Entidad .Relación Elementos Rectángulo Representa entidades básicas Doble Rectángulo Representa entidades débiles que no tienen llaves primarias Diamante identificador de relaciones Elipse Atributos de la entidad.

Relación Introduce el enfoque de Orientado a Objetos al definir tipos de datos que encapsulen a una entidad completa como un nuevo objeto Permite analizar partes de una Base de Datos de mayor dimensión (muchos dominios) a nivel entidades sin tener que estudiar todos los dominios específico que se vuelven atributos de las mismas.Modelo Entidad . 53 .

DONDE y CUANDO de la BD . QUIEN.6. 54 Contienen el QUE. Integridad y seguridad: Directorio de Datos Las bitácoras modelan y registran los procesos que se efectúan dentro de la base de datos Se logra por medio de almacenar los datos asociados con la ejecución de los comandos del SQL de la base de datos (altas bajas cambios. perdidas) . COMO.

Password.cceso Imagen Vieja. tipo de a. Sistema. dominos. responsable Bitácora de Errores: Tipo. nivel de sistematización/automatización 55 . sistema que los usan. depto.BITACORAS: QUE. COMO. archivos. archivos. usuario. programas. terminal. Dueño. archivos. usuarios Catálogo de Sistemas: Depto. depto. fecha. ubicación. descripción. Usuario. sistema. sistema Bitácora de Uso: Fecha. Terminal. archivo. procedimiento de uso. Imagen Nueva Manuales del Sistema: Sistema. hora. QUIEN. programa. Registro. Permiso. DONDE y CUANDO Bitácora de Usuarios: Usuario. permisos Bitácora de Archivos: Password. lugar. sistema. terminal. formatos.

Normalización del Directorio Ejemplo de las dependencias funcionales de la bitácora de uso 56 .

Uso de la Bitácora Ante estas actualizaciones en las Entidades TAM y ABC la bitácora refleja la siguiente actividad 57 .

Recuperación 58 .

Arranque en Frío 1 2 3 Determinación de la Entidad (Archivo) perdido Cargado del último respaldo Ordenamiento de la bitácora según el archivo perdido Lectura de Imágenes nuevas de cada registro de la entidad en cuestión Lectura de Imágenes viejas de la bitácora y corroboración con la imagen en el respaldo Actualización correspondiente de más antiguo a más reciente 59 4 5 6 .

Respaldos 1 2 3 4 Respaldar la base de datos BD cuando se llene la bitácora de uso Respaldar la bitácora de uso y limpiarla la copia actual Se deben mantener copias de la BD y la bitácora en el sitio Es recomendable tener una copia adicional en un lugar ajeno físicamente de la instalación El tamaño de la bitácora es función del número de actualizaciones que tenga la base de datos 60 5 .

Arranque en Caliente 1 2 3 4 Determinación del último punto estable Lectura de imágenes viejas de los archivos modificados en el período de inestabilidad del proceso usando la bitácora de uso Lectura de imágenes nuevas de la bitácora y corroboración con la imagen en el archivo Desactualización de los archivos por medio del reemplazo de imágenes viejas por nuevas Aviso a los usuarios para que repitan las actualizaciones efectuadas durante el período de inestabilidad 61 5 .

Capacitación Poder Ser == > Costo Inversión Adecuada en tecnología DEBER SER == > Crecimiento e Innovación Libertad.Camino al cambio de las TI SER == > Existencia de Carencias Sistema caótico. dependiente y limitado Querer Ser == > Convencimiento Unificación y Confianza Saber Ser == > Compromiso Preparación. Eficiencia. Selección. Confiabilidad e Independencia 62 .

Estrategias en Base de Datos Para convencer Simulaciones en Hoja de Cálculo Para unificar y generar confianza Llevar a Base de Datos las aplicaciones nuevas Para promover la cooperación Primero llevar a Base de Datos los procesos externos 63 .

CIUDAD = “Puebla” Basados en el cálculo de predicados. Lenguajes para BD: álgebra y cálculo relacional El LDD es el Lenguaje de Definición de los Datos El LMD es el Lenguaje de Manipulación de los Datos Existen dos grandes clases de lenguajes de consulta y acceso relacional: Basados en álgebra relacional El prototipo de esta clase es el denominado SQL (Structured Query Language) Select PROV.PROV# From PROV Where PROV. El prototipo de esta tipo de lenguajes es el PROLOG 64 .7.

Línea Detalle. Herraje ) Inventarios : ( Planta. Mueble. % Descuento ) 65 . Inventario ) Plantas : ( Planta. Precio ) Ordenes : ( Folio. Herraje. Volumen. Cliente ) Ensambles : ( Herraje. Cantidad. Descripción Herraje. Dirección. Calidad. Número ) Herrajes : ( Herraje. Descripción Planta ) Descuentos : ( Herraje. Descripción Mueble ) Direcciones : ( Dirección. Fecha ) Detalles : ( Folio.Ejemplos de SQL Asumiendo la existencia de los siguientes archivos (entidades) Muebles : ( Mueble.

Solución del SQL 66 .

Ejemplos de SQL (2) Asumiendo la existencia de los siguientes archivos (entidades) 67 .

Solución del SQL (2) 68 .

Ejemplo Numérico Se obtienen las siguientes tuplas Asumiendo estos datos en las entidades 69 .

Manejo de Transacciones Transacciones.8. Serialización  Enfoques de solución  Protocolo de bloque en dos fases  Transacciones  Consistencia Estado de transacciones  Diagrama de estado en una transacción  Recuperación de falla 70 .

Criterios en una Transacción En su diseño Correctitud Una transacción debe mantener la consistencia de la BD Atomicidad Una transacción debe manejarse como un objeto atómico. o se completa toda o no se completa En su ejecución Activa: SI se encuentra en proceso de ejecución Parcialmente Comprometida: se ha ejecutado parte de ella (es estado temporal) Fallida: NO puede ser completada (requiere ser terminada) Terminada: Se efectúa un ROLLBACK para deshacer el proceso 71 Comprometida: Se efectúa un COMMIT para completarla . esto es no puede ejecutarse un pedazo del mismo únicamente.

Ejemplo de transacción 72 .

Bibliografía Date C. Data Base Systems 73 . J.

02548/0$"  8:203/4./0488:03908./08  .7..08903.48 039/..

$4:.O3/0$"   .

/08  .948 03.0254:2F7.4 $04-90303.88:039089:5.8 8:203/408948/.8039/.

38...808 %7...38.38.4308 4388903. ./0089.O3 #0..O3/01..38.O3 3146:08/084:../4/097..2.304/0%7.  .4308 %7./403:3. 89...7.O3 !7494...44/0-46:003/481.4308 .97.:507.4308 $07...38..

4/0 28243./ &3.O3 !.:0397.38./0./.7.97.9.4388903.084/000..O3 ..9.7.:3 %5.424:34-094 .20390 480.. 80.42509. .94/.780./45.9O2...38.99:/ &3./.79074803:3.%7..03574.:.O3 38:/80N4 4770.97..38.30./.00. 706:07080790723...070 574. 08089.7. .O3/0-02.43480.790/00... $0010.9.390307.:9. 38:00.42509.2039042574209/.  5:0/0807./. $8003.42509.:..42509.4 089408345:0/000.084  42574209/./08. %0723.:9.7.780:350/. 942.:3# 5. $0010./.O3/0-02./4902547..

.38..O3  .0254/097.

.-47.1J.80$89028  .9.90  . .