Title: Bases de Datos Relacionales I
1Bases 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_at_lania.mx
- Septiembre 2004
2Objetivos
- 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
3Contenido
- 1. Introducción (2 horas)
- 2. El ambiente tecnológico de las bases de
datos(1 hora) - 3. El modelo relacional (2 horas)
- 4. Instrumentación de la base de datos (4 horas)
- 5. Normalización (5 horas)
- 6. Integridad y Seguridad (2 horas)
- 7. Lenguajes para bases de datos (3 horas )
- 8. Manejo de Transacciones (1 horas)
4Metodologí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. - Asistencia y participación en clase
60 - Elaboración de tareas y trabajos individuales
40
51. 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
6Sobre 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
-
7Definició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, Táctico, Operativo) - Una BD debe cumplir con las características
de -
- Unicidad Consistencia
- Seguridad Privacía
- Disponibilidad Integridad
8Comparació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, Integridad, Eficiencia y seguridad
9El campo de las BD
- Eficiencia
- Acceso y modificación de grandes volumenes de
datos - Adaptabilidad
- Supervivencia de datos bajo errores, 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, independientemente del modo
de acceso
102. 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
11Diversos Modelos de una BD
- En realidad han existido diversos modelos para
- modelar la realidad, aquí presentamos algunos de
ellos - Modelo Jerárquico Primer modelo de BD, IMS es la
mas popular - Modelo de Redes Definido por C. Bachman, IDMS
fue el producto comercial - Modelo Relacional Funcional Diseño de Codd
popularizado por Date -
(RDB, Oracle, Sybase, Informix ) - Modelo Entidad - Relación Concepción de Chen,
muy usado aplicable a diversos modelos (
j,r,rel) - Modelo Semántico Inicialmente de R. 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,
O2 ) - Modelo Mutlirelacional Extensión al relacional
con inversión total
12Usos de una Base de Datos
Base de datos
13Entorno de operación
14EXTRANET / INTRANET El entorno actual
Interacción actual entre el WWW y la BD
15Niveles de Instrumentación
16Niveles de Instrumentación (2)
173. El Modelo Relacional
- Definición del modelo relacional
- Esquema relacional
- Propiedades estructurales
- Definición de relación
- Identificación de tuplas
- Almacenamiento de relaciones
18Modelo de Datos
- Un modelo es un conjunto de conceptos para
describir los datos y la relación semántica entre
ellos, dentro de las restricciones que apliquen
en la empresa - La triada MD G, O, R
- G Reglas de generación de objetos
- 0 Operaciones, elementos de manipulación
- R 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
19Modelado
20Definición del Modelo
- El modelo relacional es una estructura basada en
colecciones de tablas en 2 dimensiones con
propiedades especiales, 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, llamados
dominios. - Cada tupla representa un hecho elemental o
aseveración de la realidad a modelar - lt Id objeto, propiedad 1, propiedad 2, ,
propiedad n gt - lt Arbol, Altura, Color,
, Edad gt - lt Fresno, 10.30, café oscuro,
, 10 gt - El orden de cada tupla en la entidad y de cada
dominio es irrelevante en la organización. Aunque
los valores de los dominios pueden repetirse, las
asociaciones son únicas, por lo que no pueden
existir dos instancias iguales. -
21Operaciones 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. Codd en los
70s 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, d1b d1n , D2
d2a, d2b d2n , D3 d3a, d3b d3n - Entonces el producto cartesiano D1 x D2 x D3
esta dado por las tuplas - lt d1a, d2a,d3a gt . lt d1a, d2a,d3b gt hasta
.. lt d1n, d2n,d3n gt -
- El subconjunto de este producto es la realidad
existente en un momento dado en la empresa
22Ejemplos del Modelo
Entidades archivos existentes (esquema)
Vistas relación temporal entre archivos
(subesquema)
Note que no todos las tuplas están relacionadas,
igualmente los entidades son solo un subconjunto
de todas las combinaciones posibles de los
productos cartesianos
23Identificació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, por ejemplo el
nombre de la persona me da su edad o su sexo. - En el modelo relacional se mantiene esta
situación 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
demás dominios de la relación dependen para
generar una relación funcional. 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).
24Identificació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. - Atributo No primo es aquel dominio que dependa
de una llave en una entidad, sin participar en la
llave. - 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.
254. 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, repeticiones y
- colector de apuntadores
- Índice colector
26Inicial
27Intermedios
28Intermedios
29Intermedios
30Intermedios
31Colector
32Completo
33Colector Completo
34Diagrama de la BD
35Instrumentació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, 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, ya que permite una
inserción - ordenada en árboles balanceados en los índices.
36Instrumentación actual de un BD
- Por su parte los mecanismos descritos
pueden presentan - Todavía problemas de eficiencia, por lo que el
manejo de - dominios se efectúa a través de Entidades
Independientes, - por medio de un archivo colector de repeticiones
o sinónimos - como se muestra
- Dominio Entidades SINONIMOS
- a ABC, TAM aprima, alpha
- b ABC, MTU
-
- Igualmente, se maneja una inversión parcial de
las - entidades esto es únicamente se indexan aquellos
dominios - específicamente solicitados por el programador o
- administrador de la base de datos.
375. 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ª. Forma normal(1NF)
- 2ª. Forma normal(2NF)
- 3ª. Forma normal(3NF)
- Guía para normalizar 3NF
- Otras formas normales
- Comparación con otros modelos
- Modelos de datos
38Primera Forma Normal (1FN)
- No esta normalizada ya que no existen relaciones
atómicas entre los dominios. - Anomalía
- De qué tamaño es un registro?
Entidad en 1FN En el producto cartesiano todos
los dominios tienen valores atómicos
39Segunda Forma Normal (2FN)
- Sin embargo la 1FN tiene problemas cuando los
atributos tienen dependencia de varias llaves o
dominios independiente. -
Anomalía - Qué pasa cuando dejo de
comprarle a TASA ?
Entidades en 2FN Las entidades están en 1FN y
además cada dominio o atributo depende de un sola
llave Ent 1 Nombre gt Ant, Dir,Cd Ent
2 Nombre, Producto gt Cant
40Tercera Forma Normal (3FN)
- Sin embargo la 2FN tiene problemas cuando uno de
los atributos tienen dependencia transitiva de
los dominios o atributos -
Anomalía - Qué pasa cuando TASA
- de ser mi proveedor?
Entidades en 3FN Las entidades están en 2FN y
además cada dominio o atributo depende NO
transitivamente de un sola llave Ent 1 Nombre
gt Ant, Direcciones Ent 3 Direcciones
gt Ciudad
41Normalización Redundancia controlada
- La normalización genera más entidades, sin
embargo esta redundancia aparente esta
controlada por el manejador de BD, siendo ajena
para el usuario. -
- Por otro lado el tamaño de los archivos
tiende a reducirse. -
Entidades normalizadas
Entidad sin normalizar
42Normalizació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
EntA,B,C,D y las depencias son Agt BCD y
DgtA - 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.
-
43Entrevista
- La empresa YAVAS empresa dedicada a la
fabricación - de herrajes para muebles de diversos tipos, ha
- llamado al experto para que sistematice su
operación - 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
computación, dígame que máquina comprar y que
sistema de base de datos a usar. - Ingeniero -- Con calma hombre, primero necesito
conocer su realidad informacional, esto es sus
reportes, sus formatos de entrada, en fin las
relaciones del sistema de pedidos. - Gerente -- Mire yo no soy experto en la materia,
precisamente por eso lo llame a UD. Esta compañía
dedicada a la manufactura de herrajes, que son
los chunches que se le ponen a los muebles para
armarlos hoy en día (no clavos pues), para
hacerlos modulares. El éxito que hemos tenido es
que nos piden diversos herrajes para diversos
muebles. Así por ejemplo un mueble lleva
distintos herrajes, con una cantidad específica
de cada herraje por cada mueble. Los mismos
herrajes se usan en diversos muebles pero en
cantidades distintas.
44Entrevista (2)
- Gerente -- Además por cada orden de compra
llevamos información de la dirección de envío, el
nombre del cliente y la cantidad y tipo de
herrajes de cada mueble en cuestión. 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. 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. - Gerente -- 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. Ciertamente cada planta nos
entrega diversos herrajes. Por cada herraje
conocemos su tipo, calidad y descripción por
cada cliente, sus direcciones. Los descuentos los
manejamos únicamente por volumen de compra de
cada artículo en cada orden..... - Ingeniero -- Muy bien déjeme trabajar un rato con
esta información y le propongo una esquema de
sistematización
45Guía de Normalización
- 1. Defina los Dominios ( Atomice lo mínimo
necesario ) - 2. Defina los Formatos ( Defina formatos comunes
) - 3. Escriba todas las suposiciones semánticas
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 mínimas necesarias, tomando cada
dominio(s) independiente para entablar a la
entidad. - 8. Complete la lista de suposiciones semánticas
- 9. Presente los resultados Dominios, Entidades,
Suposiciones - 10. 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 )
46Dominios
- 1. Mueble Integer Ejemplo 32
- 2. Descripción Mueble String ( 40 ) Ejemplo
"Librero Grande" - 3. Dirección String ( 40 ) Ejemplo "Juárez
34, Toluca, Méx." - 4. Herraje Integer Ejemplo 45
- 5. Número Integer Ejemplo 12
- 6. Descripción 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. Línea Detalle Integer Ejemplo 13
- 11. Cantidad Integer Ejemplo 80
- 12. Planta Integer Ejemplo 12
- 13. Inventario Integer Ejemplo 439
- 14. Descripción Planta String (30) Ejemplo
"automatizada grande" - 15. Volumen Integer Ejemplo 500
- 16. de Descuento Integer Ejemplo 25
- 17. Precio Real Ejemplo 0.50
47Realidad Informacional
48Entidades
- 1. Muebles ( Mueble, Descripción Mueble )
- 2. Direcciones ( Dirección, Cliente )
- 3. Ensambles ( Herraje, Mueble, Número )
- 4. Herrajes ( Herraje, Descripción Herraje,
Calidad, Precio ) - 5. Ordenes ( Folio, Dirección, Fecha )
- 6. Detalles ( Folio, Línea Detalle,
Cantidad, Herraje ) - 7. Inventarios ( Planta, Herraje, Inventario )
- 8. Plantas ( Planta, Descripción Planta )
- 9. Descuentos ( Herraje, Volumen, Descuento
)
Suposiciones
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
49Ejercicios de Normalización (1)
- La empresa ADELANTE tiene una estructura
jerárquica en su operación, además esta
convencida de la necesidad de cambiar sus
sistemas de información a una base de datos
relacional, que les de todas las flexibilidades y
ventajas de que tanto habla un conferenciante un
tanto loco llamado F.J. Codd y su ayudante C.J.
Date. La información con la que cuenta es la
siguiente - Por cada departamento tiene un número
individual, cada departamento es manejado por un
jefe ( y solo uno ). Cada departamento tiene un
presupuesto asignado, así como los proyectos que
maneja. Por cada proyecto se tiene la información
de los empleados que trabajan en el proyecto y el
presupuesto del proyecto. Igualmente las oficinas
asignadas a cada departamento y los teléfonos de
cada oficina. Por cada empleado, la empresa
conoce en que proyecto esta laborando y a que
departamento pertenece, así como su teléfono y su
historia salarial, consistente en los salarios y
puestos que ha desempeñado en la empresa en
diferentes fechas. Finalmente la empresa conoce
el tamaño de cada oficina. - Podría UD. plantear un esquema de bases de datos
relacional para esta información?
50Ejercicios de Normalización (2)
- Habiendo resuelto su base de datos de personal,
ahora la empresa - ADELANTE desea reestructurar su sistema de
ordenes y pedidos. - Actualmente maneja la siguiente información
- Por cada cliente maneja su limite de crédito, su
balance y las direcciones del mismo. Por cada
orden de compra, el número del orden, la fecha,
la dirección de envío. 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. - Podría UD. plantear un esquema de bases de datos
relacional para esta información?
51Conversión entre Modelos
de Relacional
a Entidad - Relación
52Elementos 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, si esta subrayado es
llave primaria - Línea
- Ligas
53Modelo 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.
546. Integridad y seguridadDirectorio 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) . Contienen el QUE, QUIEN, COMO, DONDE
y CUANDO de la BD
55BITACORAS QUE, QUIEN, COMO, DONDE y CUANDO
Bitácora de Usuarios Usuario, Password, depto,
sistema, archivos, terminal, permisos Bitácora de
Archivos Password, Dueño, sistema que los usan,
dominos, formatos, ubicación, usuarios Catálogo
de Sistemas Depto, sistema, archivos, terminal,
programas, responsable Bitácora de Errores Tipo,
programa, descripción, hora, lugar, usuario,
fecha, archivo, sistema Bitácora de Uso Fecha,
Usuario, Sistema, Permiso, Terminal, Registro,
tipo de a,cceso Imagen Vieja, Imagen
Nueva Manuales del Sistema Sistema, depto,
archivos, procedimiento de uso, nivel de
sistematización/automatización
56Normalización del Directorio
Ejemplo de las dependencias funcionales de la
bitácora de uso
57Uso de la Bitácora
Ante estas actualizaciones en las Entidades TAM y
ABC la bitácora refleja la siguiente actividad
58Recuperación
59Arranque en Frío
- 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
60Respaldos
- 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
61Arranque en Caliente
- 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
62Camino al cambio de las TI
- SER gt Existencia de Carencias
- Sistema caótico, dependiente y limitado
- Querer Ser gt Convencimiento
- Unificación y Confianza
- Saber Ser gt Compromiso
- Preparación, Selección, Capacitación
- Poder Ser gt Costo
- Inversión Adecuada en tecnología
- DEBER SER gt Crecimiento e Innovación
- Libertad, Eficiencia, Confiabilidad e
Independencia
63Estrategias 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
647. 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.CIUDAD Puebla
- Basados en el cálculo de predicados.
- El prototipo de esta tipo de lenguajes es el
PROLOG -
65Ejemplos de SQL
- Asumiendo la existencia
- de los siguientes archivos (entidades)
Muebles ( Mueble, Descripción Mueble
) Direcciones ( Dirección, Cliente ) Ensambles
( Herraje, Mueble, Número ) Herrajes (
Herraje, Descripción Herraje, Calidad, Precio
) Ordenes ( Folio, Dirección, Fecha ) Detalles
( Folio, Línea Detalle, Cantidad, Herraje
) Inventarios ( Planta, Herraje, Inventario
) Plantas ( Planta, Descripción Planta
) Descuentos ( Herraje, Volumen, Descuento )
66Solución del SQL
67Ejemplos de SQL (2)
- Asumiendo la existencia de los siguientes
archivos (entidades)
68Solución del SQL (2)
69Ejemplo Numérico
Se obtienen las siguientes tuplas
Asumiendo estos datos en las entidades
708. Manejo de Transacciones
- Transacciones, 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
71Criterios 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, esto es no puede ejecutarse un pedazo
del mismo únicamente, o se completa toda o no se
completa - 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 - Comprometida Se efectúa un COMMIT para
completarla
En su ejecución
72Ejemplo de transacción
73Bibliografía
- Date C. J. Data Base Systems