SlideShare una empresa de Scribd logo
1 de 60
Base de Datos:    PROCESAMIENTO DE TRANSACCIONES Y SEGURIDAD EN LAS BD Profesor: MSC. Luis Serna Jherry
Objetivos del Día de Hoy ,[object Object],[object Object],[object Object]
Procesamiento de Transacciones “ El problema de la modificación perdida” tiempo Transacción A Transacción B Traer R ($250) Traer R ($250) Actualizar R=R-20  ($230) Actualizar R=R-30  ($220)
[object Object],[object Object],[object Object],[object Object],Procesamiento de Transacciones
[object Object],[object Object],[object Object],[object Object],[object Object],Procesamiento de Transacciones
[object Object],[object Object],[object Object],[object Object],[object Object],Procesamiento de Transacciones
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Procesamiento de Transacciones
Procesamiento de Transacciones  2 retiros de 20 y 30 tiempo Transacción A Transacción B Begin transaction Leer R ($250) Begin transaction esperar Actualizar  R=R-20  ($230)   esperar Commit esperar Traer R ($230) Actualizar  R=R-30  ($200) commit
Procesamiento de Transacciones tiempo Incluyendo transferencia de R a P Transacción A Transacción B Leer R ($250) Actualizar R= R-20 ($230) Leer R ($230) Leer P ($600) Actualizar  R=R-30  ($200) Actualizar P = P+20 ($620) Leer P ($620) Actualizar P = P+30 ($650)
Procesamiento de Transacciones ,[object Object],[object Object],[object Object]
Transición de Estados de una Transacción Read/write endTransaction Abort Abort Commit Confirmada Parcialmente confirmada Activa Fallida Terminada
Concurrencia: P lanificadores ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Concurrencia:  Planificadores C 11 : leer R C 12 : actualizar R C 21 : leer R C 13 : leer P C 22 : actualizar R C 14 : actualizar P C 23 : leer P C 24 : actualizar P ,[object Object],T 1 T 2 C 11 : leer R C 21 : leer R C 12 : actualizar R C 22 : actualizar R C 13 : leer P C 23 : leer P C 14 : actualizar P C 24 : actualizar P Planificador
Concurrencia:  Tipos de Planificadores ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Concurrencia - Planificador Seriable - ,[object Object],[object Object]
Concurrencia - Prueba de Seriabilidad por Conflictos - ,[object Object],[object Object],[object Object],[object Object]
Concurrencia - Prueba de Seriabilidad por Conflictos - ,[object Object],[object Object],[object Object],[object Object],[object Object]
Planes y sus Grafos de Precedencia tiempo T1 T2 X PLAN A En T1 se transfieren reservas de un avión a otro En T2 simplemente se reserva asientos en un avión T1 T2 Read X X:= X-N Write X Read Y Y:= Y + N Write Y Read X X:= X + M Write X
Planes y sus Grafos de Precedencia tiempo T1 T2 X PLAN B T1 T2 Read X X:= X + M Write X Read X X:= X-N Write X Read Y Y:= Y + N Write Y
Planes y sus Grafos de Precedencia tiempo T1 T2 X PLAN C X *** ACTUALIZACION PERDIDA :  El valor de X es incorrecto, el numero de asientos es inconsitente T1 T2 Read X X:= X-N Read X X:= X + M Write X Read Y Write X *** Y:= Y + N Write Y
Planes y sus Grafos de Precedencia tiempo T1 T2 PLAN D X T1 T2 Read X X:= X-N Write X Read X X:= X + M Write X Read Y  Y:= Y + N Write Y
Control de Concurrencia ,[object Object],[object Object],[object Object],[object Object],[object Object]
Control de Concurrencia: Bloqueo El bloqueo asegura que un objeto que va a ser utilizado por una transacción no cambie de manera impredecible, si esto puede afectar la confiabilidad del resultado. El efecto del bloqueo es no permitir que otras transacciones tengan acceso al objeto. Bloqueo Exclusivo :   Si una Transacción A tiene un bloqueo X sobre el objeto R, cualquier otra Transacción B que solicite un bloqueo (de cualquier tipo) sobre R, entrará en un estado de espera, hasta que A libere el bloqueo sobre R. Bloqueo Compartido :   Si una Transacción A tiene un bloqueo S sobre el objeto R: Si otra Transacción B solicita un bloqueo X sobre R, entrará en un estado de espera, hasta que A, libere a R. Si en cambio B, solicita un bloqueo S, su solicitud será concedida  X: escritura,  S:lectura
Control de Concurrencia Bloqueo y operaciones sobre Registros   N:  Hay conflicto, la transacción B entra en espera. S:  Compatibilidad, se concede el bloqueo solicitado por B X S X N N S N S A B
Protocolos de Bloqueo ,[object Object],[object Object],[object Object],[object Object],[object Object]
Protocolos de Bloqueo ,[object Object],[object Object],[object Object],[object Object]
Control de Concurrencia Bloqueo Mutuo, Punto Muerto o Interbloqueo  : tiempo Transacción A Transacción B Solicita bloqueo X sobre R1 - concedido - Solicita bloqueo X sobre R2 - concedido - Solicita bloqueo X sobre R2 Esperar Solicita bloqueo X sobre R1 esperar esperar esperar esperar -------- --------
Control de Concurrencia El problema de la “lectura sucia”.  tiempo Transacción A Transacción B Leer R ($250) Actualizar R= R-20 ($230) Leer R ($230) rollback Actualizar  R=R-30  ($200) commit
Solución de bloqueo para la “lectura sucia” tiempo Transacción A Transacción B Obtener bloqueo S para R -  concedido Leer R ($250) Obtener bloqueo X para R – concedido Actualizar R= R-20 ($230) Obtener bloqueo S para R –  esperar rollback - esperar - Bloqueo concedido Leer R ($250) Obtener bloqueo X para R -  concedido Actualizar  R=R-30  ($220) commit
Control de Concurrencia El problema de la “lectura irrepetible” tiempo Transacción A Transacción B Leer R ($250) Leer R ($250) Actualizar  R=R-30  ($220) commit Leer R ($220) ¡interferencia detectada!
Solución de bloqueo para la “lectura irrepetible” tiempo Transacción A Transacción B Obtener bloqueo S para R –  concedido Leer R ($250) Obtener bloqueo S para R –  concedido Leer R ($250) Obtener bloqueo X para R -  esperar Leer R ($250) esperar (lectura repetible) esperar ............... ....................
Control de Concurrencia El problema de la aparición de “fantasmas”,  resumen incompleto o análisis inconsistente tiempo Transacción 1 Transacción 2 Traer C 1 (40):Suma=40 Traer C 2 (50):Suma=90 Traer C 3 (30) Actualizar C 3 (20) Traer C 1 (40) Actualizar C 1 (50) COMMIT Traer C 3 (20):Suma=110
Solución de bloqueo para el problema de la aparición de “fantasmas”  Transacción 1 Transacción 2 Obtener bloqueo S sobre C -  concedido Traer C 1 (40):Suma=40 Traer C 2 (50):Suma=90 Obtener bloqueo X sobre C -  esperar Traer C 3 (30):Suma=120 Esperar commit esperar Conceder bloqueo .............. ..............
Control de Concurrencia ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Nivel de Aislamiento / Interferencia Nivel de Aislamiento Situación de Interferencia Lectura sucia Lectura no repetible Fantasma Lectura no registrada Posible Posible Posible Lectura registrada No posible Posible Posible Lectura repetible No posible No posible Posible Seriable No posible No posible No posible
Seriabilidad por marcas temporales ,[object Object],[object Object],[object Object],[object Object],[object Object]
Seriabilidad por marcas temporales Se asocia a cada tupla dos valores de marca temporal: t u  es la marca temporal de la transacción más reciente que ha actualizado o creado la tupla t r   es la marca temporal de la transacción más reciente que ha observado la tupla Obsérvese que siempre  t u      t r   (una transacción siempre observa la tupla antes de actualizarla)
Seriabilidad por marcas temporales Si la transacción  t  solicita  leer  una tupla: Si t >=  t u     se ejecuta la operación  leer  y se actualiza  t r  por max ( t ,  t r  ) Si t <  t u     una transacción más reciente (posterior en el tiempo) ya escribió el valor de la tupla, antes de que  t  tuviera oportunidad de leerla.  T  se retrocede y vuelve a iniciarse con una marca  t’  más grande.
Seriabilidad por marcas temporales Si  t  solicita  actualizar  una tupla: Si  t      t r     se ejecuta la actualización, dado que ninguna transacción más reciente que  t  ha leído siquiera la tupla Si  t  <  t r  ó  t  <  t u     se retrocede (rollback) la transacción  t  y se reinicia con una marca temporal mayor, porque alguna transacción posterior a  t  ya leyó o escribió la tupla antes de que  t  pueda hacerlo Si un rollback comprende la reinstalación de valores previos, el rollback debe tener una marca de hora nueva, que actualizará t u  y t r   de la tupla reinstalada
Prevención de Interbloqueos ,[object Object],[object Object]
Prevención de interbloqueos Esperar o Morir Si T i  solicita un elemento que posee T j , T i  puede esperar sólo si T i  < T j  (T i  es más antigua que T j ) en otro caso T i  se retrocede (muere) Herir o Esperar Si T i  solicita un elemento que posee T j , T i  espera sólo si T i  > T j  (T i  es más reciente que T j ) ; en otro caso T j  se retrocede (T i  hiere a T j ). No-espera Si Ti no puede obtener un bloqueo se aborta de inmediato y se reinicia después de un cierto lapso sin comprobar si ocurriría o no un bloqueo mortal Espera Cautelosa Si Ti solicita un elemento que posee Tj, Ti espera sólo si Tj no está detenida (no está esperando que se libere ningún otro elemento bloqueado); en caso contrario Tj aborta.
[object Object],[object Object],[object Object],[object Object],Recuperación
Transaction Log Programa de Aplicación DBMS Acceso Base de  Datos Transaction  Log (a) (b) Actualización de los datos (a) (b) Se modifican  los datos (a) ante-imagen (b) post-imagen
Recuperación ,[object Object],[object Object],[object Object],[object Object],[object Object]
Recuperación ,[object Object],[object Object],[object Object],[object Object]
Recuperación ,[object Object],[object Object],[object Object],[object Object]
Recuperación ,[object Object],[object Object],[object Object],[object Object]
Recuperación de la BD ,[object Object],[object Object]
Recuperación ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Recuperación - Fallas del Sistema   - Se pierde el contenido de la memoria principal y de las áreas de almacenamiento temporal. Por lo tanto, se perderá el estado preciso de la transacción que se está ejecutando y no podrá ser completada con éxito.  Por este motivo será preciso anularla (retroceder) cuando se reinicie el sistema (aplicación de los registros ante-imagen desde el Log de transacciones). Para reducir este proceso, se introducen periódicamente  Puntos de Revisión o Verificación .
Recuperación ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Recuperación ,[object Object],[object Object],[object Object],T1 T2 T3 T4 T5 tv tf Falla del  Sistema Punto de  verificación
Recuperación ,[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],Seguridad en Bases de Datos
Seguridad en el DBMS ,[object Object],[object Object],[object Object]
La seguridad de la BD y el DBA ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Protección de Acceso y Auditoría de la BD ,[object Object],[object Object]
Privilegios Discrecionales ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Seguridad – Consideraciones Adicionales ,[object Object],[object Object],[object Object],[object Object]
Bibliografia ,[object Object]

Más contenido relacionado

La actualidad más candente

Cuadro sipnotico tipos de computacion paralela
Cuadro sipnotico tipos de computacion paralelaCuadro sipnotico tipos de computacion paralela
Cuadro sipnotico tipos de computacion paralelaEduardo Suarez
 
Lenguaje ensamblador y Estructura del CPU
Lenguaje ensamblador y Estructura del CPULenguaje ensamblador y Estructura del CPU
Lenguaje ensamblador y Estructura del CPUromo91
 
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasTópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasJosé Antonio Sandoval Acosta
 
Lecture 9 codificación de línea y psd
Lecture 9 codificación de línea y psdLecture 9 codificación de línea y psd
Lecture 9 codificación de línea y psdnica2009
 
Códigos de línea
Códigos de líneaCódigos de línea
Códigos de líneaOscar Llanos
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Osiris Mirerus
 
Unidad 2 ensamblador
Unidad 2   ensambladorUnidad 2   ensamblador
Unidad 2 ensambladoreveTalavera
 
Dispositivos de Red y las Capas de Operacion
Dispositivos de Red y las Capas de OperacionDispositivos de Red y las Capas de Operacion
Dispositivos de Red y las Capas de Operacionrems251970
 
Instruction Set Architecture
Instruction Set ArchitectureInstruction Set Architecture
Instruction Set ArchitectureDilum Bandara
 
Probabilidad de error en modulación digital
Probabilidad de error en modulación digitalProbabilidad de error en modulación digital
Probabilidad de error en modulación digitalFrancisco Apablaza
 
Registros de control y estados de la CPU
Registros de control y estados de la CPURegistros de control y estados de la CPU
Registros de control y estados de la CPUIvan Porras
 
Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1Humano Terricola
 
Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)michell_quitian
 
Evaluation of computer performance
Evaluation of computer performanceEvaluation of computer performance
Evaluation of computer performancePrasenjit Dey
 

La actualidad más candente (20)

Cuadro sipnotico tipos de computacion paralela
Cuadro sipnotico tipos de computacion paralelaCuadro sipnotico tipos de computacion paralela
Cuadro sipnotico tipos de computacion paralela
 
Lenguaje ensamblador y Estructura del CPU
Lenguaje ensamblador y Estructura del CPULenguaje ensamblador y Estructura del CPU
Lenguaje ensamblador y Estructura del CPU
 
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasTópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
 
Multiciclo
MulticicloMulticiclo
Multiciclo
 
Modos de direccionamiento y formatos
Modos de direccionamiento y formatosModos de direccionamiento y formatos
Modos de direccionamiento y formatos
 
Lecture 9 codificación de línea y psd
Lecture 9 codificación de línea y psdLecture 9 codificación de línea y psd
Lecture 9 codificación de línea y psd
 
Códigos de línea
Códigos de líneaCódigos de línea
Códigos de línea
 
Taller de Base de Datos - Unidad 6 SQL procedural
Taller de Base de Datos - Unidad 6 SQL proceduralTaller de Base de Datos - Unidad 6 SQL procedural
Taller de Base de Datos - Unidad 6 SQL procedural
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
 
Unidad 2 ensamblador
Unidad 2   ensambladorUnidad 2   ensamblador
Unidad 2 ensamblador
 
Dispositivos de Red y las Capas de Operacion
Dispositivos de Red y las Capas de OperacionDispositivos de Red y las Capas de Operacion
Dispositivos de Red y las Capas de Operacion
 
Instruction Set Architecture
Instruction Set ArchitectureInstruction Set Architecture
Instruction Set Architecture
 
Probabilidad de error en modulación digital
Probabilidad de error en modulación digitalProbabilidad de error en modulación digital
Probabilidad de error en modulación digital
 
Registros de control y estados de la CPU
Registros de control y estados de la CPURegistros de control y estados de la CPU
Registros de control y estados de la CPU
 
Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1Portafolio Lenguajes y Autómatas Unidad 1
Portafolio Lenguajes y Autómatas Unidad 1
 
Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)
 
Datapath design
Datapath designDatapath design
Datapath design
 
Evaluation of computer performance
Evaluation of computer performanceEvaluation of computer performance
Evaluation of computer performance
 
UNIDAD 2 PROGRAMACIÓN BASICA
UNIDAD 2 PROGRAMACIÓN BASICAUNIDAD 2 PROGRAMACIÓN BASICA
UNIDAD 2 PROGRAMACIÓN BASICA
 
Instruction code
Instruction codeInstruction code
Instruction code
 

Similar a Transacciones y seguridad

Transacciones y seguridad
Transacciones y seguridadTransacciones y seguridad
Transacciones y seguridadLuis Jherry
 
acrónimo que representa atomicidad, consistencia, aislamiento y durabilidad
acrónimo que representa atomicidad, consistencia, aislamiento y durabilidadacrónimo que representa atomicidad, consistencia, aislamiento y durabilidad
acrónimo que representa atomicidad, consistencia, aislamiento y durabilidadHermesRR123
 
Concurrencia bases datos 2
Concurrencia bases datos 2Concurrencia bases datos 2
Concurrencia bases datos 2Velmuz Buzz
 
Capítulo 17 ( Introducción a los conceptos y la Teoría sobre el procesamiento...
Capítulo 17 ( Introducción a los conceptos y la Teoría sobre el procesamiento...Capítulo 17 ( Introducción a los conceptos y la Teoría sobre el procesamiento...
Capítulo 17 ( Introducción a los conceptos y la Teoría sobre el procesamiento...Liz Ocampo
 
Gestion de transacciones "Investigación"
Gestion de transacciones "Investigación"Gestion de transacciones "Investigación"
Gestion de transacciones "Investigación"UNIVERSIDAD VERACRUZANA
 
Gestion de transacciones
Gestion de transaccionesGestion de transacciones
Gestion de transaccionesPatricia Flores
 
Administración de Bases de Datos - Concurrencia
Administración de Bases de Datos - ConcurrenciaAdministración de Bases de Datos - Concurrencia
Administración de Bases de Datos - Concurrenciaednaru
 
TODO UNIDO ANALISIS.pdf
TODO UNIDO ANALISIS.pdfTODO UNIDO ANALISIS.pdf
TODO UNIDO ANALISIS.pdfAlexMamani51
 
Concurrencia en Bases de Datos (I)
Concurrencia en Bases de Datos (I)Concurrencia en Bases de Datos (I)
Concurrencia en Bases de Datos (I)ednaru
 
Concurrencia en Bases de Datos (I)
Concurrencia en Bases de Datos (I)Concurrencia en Bases de Datos (I)
Concurrencia en Bases de Datos (I)ednaru
 

Similar a Transacciones y seguridad (20)

Transacciones y seguridad
Transacciones y seguridadTransacciones y seguridad
Transacciones y seguridad
 
Transacciones.pptx julio
Transacciones.pptx julioTransacciones.pptx julio
Transacciones.pptx julio
 
Transacciones.pptx julio
Transacciones.pptx julioTransacciones.pptx julio
Transacciones.pptx julio
 
Transacciones
TransaccionesTransacciones
Transacciones
 
Abd clase 8
Abd clase 8Abd clase 8
Abd clase 8
 
acrónimo que representa atomicidad, consistencia, aislamiento y durabilidad
acrónimo que representa atomicidad, consistencia, aislamiento y durabilidadacrónimo que representa atomicidad, consistencia, aislamiento y durabilidad
acrónimo que representa atomicidad, consistencia, aislamiento y durabilidad
 
Concurrencia bases datos 2
Concurrencia bases datos 2Concurrencia bases datos 2
Concurrencia bases datos 2
 
Abd clase 5 y 6
Abd clase 5 y 6Abd clase 5 y 6
Abd clase 5 y 6
 
Capítulo 17 ( Introducción a los conceptos y la Teoría sobre el procesamiento...
Capítulo 17 ( Introducción a los conceptos y la Teoría sobre el procesamiento...Capítulo 17 ( Introducción a los conceptos y la Teoría sobre el procesamiento...
Capítulo 17 ( Introducción a los conceptos y la Teoría sobre el procesamiento...
 
Concurrencia 1 ABD UCV
Concurrencia 1 ABD UCVConcurrencia 1 ABD UCV
Concurrencia 1 ABD UCV
 
Concurrencia 2 ABD UCV
Concurrencia 2 ABD UCVConcurrencia 2 ABD UCV
Concurrencia 2 ABD UCV
 
Gestion de transacciones "Investigación"
Gestion de transacciones "Investigación"Gestion de transacciones "Investigación"
Gestion de transacciones "Investigación"
 
Concurrencias BD
Concurrencias BDConcurrencias BD
Concurrencias BD
 
Concurrencia
ConcurrenciaConcurrencia
Concurrencia
 
Bd no sql tecnicas2
Bd no sql tecnicas2Bd no sql tecnicas2
Bd no sql tecnicas2
 
Gestion de transacciones
Gestion de transaccionesGestion de transacciones
Gestion de transacciones
 
Administración de Bases de Datos - Concurrencia
Administración de Bases de Datos - ConcurrenciaAdministración de Bases de Datos - Concurrencia
Administración de Bases de Datos - Concurrencia
 
TODO UNIDO ANALISIS.pdf
TODO UNIDO ANALISIS.pdfTODO UNIDO ANALISIS.pdf
TODO UNIDO ANALISIS.pdf
 
Concurrencia en Bases de Datos (I)
Concurrencia en Bases de Datos (I)Concurrencia en Bases de Datos (I)
Concurrencia en Bases de Datos (I)
 
Concurrencia en Bases de Datos (I)
Concurrencia en Bases de Datos (I)Concurrencia en Bases de Datos (I)
Concurrencia en Bases de Datos (I)
 

Más de Luis Jherry

Suscripciones de cable
Suscripciones de cableSuscripciones de cable
Suscripciones de cableLuis Jherry
 
Sistema de organización de eventos
Sistema de organización de eventosSistema de organización de eventos
Sistema de organización de eventosLuis Jherry
 
Sistema de control y seguimiento de trasplantes renales
Sistema de control y seguimiento de trasplantes renalesSistema de control y seguimiento de trasplantes renales
Sistema de control y seguimiento de trasplantes renalesLuis Jherry
 
Selección de personal
Selección de personalSelección de personal
Selección de personalLuis Jherry
 
Planificacion mensual en una industria medico
Planificacion mensual en una industria medicoPlanificacion mensual en una industria medico
Planificacion mensual en una industria medicoLuis Jherry
 
Pedidos en feria
Pedidos en feriaPedidos en feria
Pedidos en feriaLuis Jherry
 
Paquete turístico
Paquete turísticoPaquete turístico
Paquete turísticoLuis Jherry
 
Organización de congresos
Organización de congresosOrganización de congresos
Organización de congresosLuis Jherry
 
Obras de construcción
Obras de construcciónObras de construcción
Obras de construcciónLuis Jherry
 
Instituto de capacitación en ti
Instituto de capacitación en tiInstituto de capacitación en ti
Instituto de capacitación en tiLuis Jherry
 
Explotaciones mineras
Explotaciones minerasExplotaciones mineras
Explotaciones minerasLuis Jherry
 

Más de Luis Jherry (20)

Tienda de ropa
Tienda de ropaTienda de ropa
Tienda de ropa
 
Telefonos
TelefonosTelefonos
Telefonos
 
Suscripciones
SuscripcionesSuscripciones
Suscripciones
 
Suscripciones de cable
Suscripciones de cableSuscripciones de cable
Suscripciones de cable
 
Software s
Software sSoftware s
Software s
 
Sistema escolar
Sistema escolarSistema escolar
Sistema escolar
 
Sistema de organización de eventos
Sistema de organización de eventosSistema de organización de eventos
Sistema de organización de eventos
 
Sistema de control y seguimiento de trasplantes renales
Sistema de control y seguimiento de trasplantes renalesSistema de control y seguimiento de trasplantes renales
Sistema de control y seguimiento de trasplantes renales
 
Selección de personal
Selección de personalSelección de personal
Selección de personal
 
Planificacion mensual en una industria medico
Planificacion mensual en una industria medicoPlanificacion mensual en una industria medico
Planificacion mensual en una industria medico
 
Pedidos en feria
Pedidos en feriaPedidos en feria
Pedidos en feria
 
Paquete turístico
Paquete turísticoPaquete turístico
Paquete turístico
 
Organización de congresos
Organización de congresosOrganización de congresos
Organización de congresos
 
Obras de construcción
Obras de construcciónObras de construcción
Obras de construcción
 
Museo
MuseoMuseo
Museo
 
Instituto de capacitación en ti
Instituto de capacitación en tiInstituto de capacitación en ti
Instituto de capacitación en ti
 
Hostal
HostalHostal
Hostal
 
Hostal ii
Hostal iiHostal ii
Hostal ii
 
Gimnasio
GimnasioGimnasio
Gimnasio
 
Explotaciones mineras
Explotaciones minerasExplotaciones mineras
Explotaciones mineras
 

Último

Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfcoloncopias5
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORGonella
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
Concurso José María Arguedas nacional.pptx
Concurso José María Arguedas nacional.pptxConcurso José María Arguedas nacional.pptx
Concurso José María Arguedas nacional.pptxkeithgiancarloroquef
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfDaniel Ángel Corral de la Mata, Ph.D.
 
Presentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxPresentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxRosabel UA
 
describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...DavidBautistaFlores1
 
Presentacion minimalista aesthetic simple beige_20240415_224856_0000.pdf
Presentacion minimalista aesthetic simple beige_20240415_224856_0000.pdfPresentacion minimalista aesthetic simple beige_20240415_224856_0000.pdf
Presentacion minimalista aesthetic simple beige_20240415_224856_0000.pdfSarayLuciaSnchezFigu
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfAlfredoRamirez953210
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Rosabel UA
 
Manejo del Dengue, generalidades, actualización marzo 2024 minsa
Manejo del Dengue, generalidades, actualización marzo 2024 minsaManejo del Dengue, generalidades, actualización marzo 2024 minsa
Manejo del Dengue, generalidades, actualización marzo 2024 minsaLuis Minaya
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfssuser50d1252
 
PLAN DE TUTORIA- PARA NIVEL PRIMARIA CUARTO GRADO
PLAN DE TUTORIA- PARA NIVEL PRIMARIA CUARTO GRADOPLAN DE TUTORIA- PARA NIVEL PRIMARIA CUARTO GRADO
PLAN DE TUTORIA- PARA NIVEL PRIMARIA CUARTO GRADOMARIBEL DIAZ
 
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docxEDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docxLuisAndersonPachasto
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressionsConsueloSantana3
 
Secuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docxSecuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docxNataliaGonzalez619348
 

Último (20)

Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIOR
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
Concurso José María Arguedas nacional.pptx
Concurso José María Arguedas nacional.pptxConcurso José María Arguedas nacional.pptx
Concurso José María Arguedas nacional.pptx
 
La luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luzLa luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luz
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
 
Presentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxPresentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptx
 
describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...
 
Presentacion minimalista aesthetic simple beige_20240415_224856_0000.pdf
Presentacion minimalista aesthetic simple beige_20240415_224856_0000.pdfPresentacion minimalista aesthetic simple beige_20240415_224856_0000.pdf
Presentacion minimalista aesthetic simple beige_20240415_224856_0000.pdf
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024
 
Manejo del Dengue, generalidades, actualización marzo 2024 minsa
Manejo del Dengue, generalidades, actualización marzo 2024 minsaManejo del Dengue, generalidades, actualización marzo 2024 minsa
Manejo del Dengue, generalidades, actualización marzo 2024 minsa
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
 
PLAN DE TUTORIA- PARA NIVEL PRIMARIA CUARTO GRADO
PLAN DE TUTORIA- PARA NIVEL PRIMARIA CUARTO GRADOPLAN DE TUTORIA- PARA NIVEL PRIMARIA CUARTO GRADO
PLAN DE TUTORIA- PARA NIVEL PRIMARIA CUARTO GRADO
 
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docxEDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressions
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
Secuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docxSecuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docx
 

Transacciones y seguridad

  • 1. Base de Datos: PROCESAMIENTO DE TRANSACCIONES Y SEGURIDAD EN LAS BD Profesor: MSC. Luis Serna Jherry
  • 2.
  • 3. Procesamiento de Transacciones “ El problema de la modificación perdida” tiempo Transacción A Transacción B Traer R ($250) Traer R ($250) Actualizar R=R-20 ($230) Actualizar R=R-30 ($220)
  • 4.
  • 5.
  • 6.
  • 7.
  • 8. Procesamiento de Transacciones 2 retiros de 20 y 30 tiempo Transacción A Transacción B Begin transaction Leer R ($250) Begin transaction esperar Actualizar R=R-20 ($230) esperar Commit esperar Traer R ($230) Actualizar R=R-30 ($200) commit
  • 9. Procesamiento de Transacciones tiempo Incluyendo transferencia de R a P Transacción A Transacción B Leer R ($250) Actualizar R= R-20 ($230) Leer R ($230) Leer P ($600) Actualizar R=R-30 ($200) Actualizar P = P+20 ($620) Leer P ($620) Actualizar P = P+30 ($650)
  • 10.
  • 11. Transición de Estados de una Transacción Read/write endTransaction Abort Abort Commit Confirmada Parcialmente confirmada Activa Fallida Terminada
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18. Planes y sus Grafos de Precedencia tiempo T1 T2 X PLAN A En T1 se transfieren reservas de un avión a otro En T2 simplemente se reserva asientos en un avión T1 T2 Read X X:= X-N Write X Read Y Y:= Y + N Write Y Read X X:= X + M Write X
  • 19. Planes y sus Grafos de Precedencia tiempo T1 T2 X PLAN B T1 T2 Read X X:= X + M Write X Read X X:= X-N Write X Read Y Y:= Y + N Write Y
  • 20. Planes y sus Grafos de Precedencia tiempo T1 T2 X PLAN C X *** ACTUALIZACION PERDIDA : El valor de X es incorrecto, el numero de asientos es inconsitente T1 T2 Read X X:= X-N Read X X:= X + M Write X Read Y Write X *** Y:= Y + N Write Y
  • 21. Planes y sus Grafos de Precedencia tiempo T1 T2 PLAN D X T1 T2 Read X X:= X-N Write X Read X X:= X + M Write X Read Y Y:= Y + N Write Y
  • 22.
  • 23. Control de Concurrencia: Bloqueo El bloqueo asegura que un objeto que va a ser utilizado por una transacción no cambie de manera impredecible, si esto puede afectar la confiabilidad del resultado. El efecto del bloqueo es no permitir que otras transacciones tengan acceso al objeto. Bloqueo Exclusivo : Si una Transacción A tiene un bloqueo X sobre el objeto R, cualquier otra Transacción B que solicite un bloqueo (de cualquier tipo) sobre R, entrará en un estado de espera, hasta que A libere el bloqueo sobre R. Bloqueo Compartido : Si una Transacción A tiene un bloqueo S sobre el objeto R: Si otra Transacción B solicita un bloqueo X sobre R, entrará en un estado de espera, hasta que A, libere a R. Si en cambio B, solicita un bloqueo S, su solicitud será concedida X: escritura, S:lectura
  • 24. Control de Concurrencia Bloqueo y operaciones sobre Registros N: Hay conflicto, la transacción B entra en espera. S: Compatibilidad, se concede el bloqueo solicitado por B X S X N N S N S A B
  • 25.
  • 26.
  • 27. Control de Concurrencia Bloqueo Mutuo, Punto Muerto o Interbloqueo : tiempo Transacción A Transacción B Solicita bloqueo X sobre R1 - concedido - Solicita bloqueo X sobre R2 - concedido - Solicita bloqueo X sobre R2 Esperar Solicita bloqueo X sobre R1 esperar esperar esperar esperar -------- --------
  • 28. Control de Concurrencia El problema de la “lectura sucia”. tiempo Transacción A Transacción B Leer R ($250) Actualizar R= R-20 ($230) Leer R ($230) rollback Actualizar R=R-30 ($200) commit
  • 29. Solución de bloqueo para la “lectura sucia” tiempo Transacción A Transacción B Obtener bloqueo S para R - concedido Leer R ($250) Obtener bloqueo X para R – concedido Actualizar R= R-20 ($230) Obtener bloqueo S para R – esperar rollback - esperar - Bloqueo concedido Leer R ($250) Obtener bloqueo X para R - concedido Actualizar R=R-30 ($220) commit
  • 30. Control de Concurrencia El problema de la “lectura irrepetible” tiempo Transacción A Transacción B Leer R ($250) Leer R ($250) Actualizar R=R-30 ($220) commit Leer R ($220) ¡interferencia detectada!
  • 31. Solución de bloqueo para la “lectura irrepetible” tiempo Transacción A Transacción B Obtener bloqueo S para R – concedido Leer R ($250) Obtener bloqueo S para R – concedido Leer R ($250) Obtener bloqueo X para R - esperar Leer R ($250) esperar (lectura repetible) esperar ............... ....................
  • 32. Control de Concurrencia El problema de la aparición de “fantasmas”, resumen incompleto o análisis inconsistente tiempo Transacción 1 Transacción 2 Traer C 1 (40):Suma=40 Traer C 2 (50):Suma=90 Traer C 3 (30) Actualizar C 3 (20) Traer C 1 (40) Actualizar C 1 (50) COMMIT Traer C 3 (20):Suma=110
  • 33. Solución de bloqueo para el problema de la aparición de “fantasmas” Transacción 1 Transacción 2 Obtener bloqueo S sobre C - concedido Traer C 1 (40):Suma=40 Traer C 2 (50):Suma=90 Obtener bloqueo X sobre C - esperar Traer C 3 (30):Suma=120 Esperar commit esperar Conceder bloqueo .............. ..............
  • 34.
  • 35. Nivel de Aislamiento / Interferencia Nivel de Aislamiento Situación de Interferencia Lectura sucia Lectura no repetible Fantasma Lectura no registrada Posible Posible Posible Lectura registrada No posible Posible Posible Lectura repetible No posible No posible Posible Seriable No posible No posible No posible
  • 36.
  • 37. Seriabilidad por marcas temporales Se asocia a cada tupla dos valores de marca temporal: t u es la marca temporal de la transacción más reciente que ha actualizado o creado la tupla t r es la marca temporal de la transacción más reciente que ha observado la tupla Obsérvese que siempre t u  t r (una transacción siempre observa la tupla antes de actualizarla)
  • 38. Seriabilidad por marcas temporales Si la transacción t solicita leer una tupla: Si t >= t u  se ejecuta la operación leer y se actualiza t r por max ( t , t r ) Si t < t u  una transacción más reciente (posterior en el tiempo) ya escribió el valor de la tupla, antes de que t tuviera oportunidad de leerla. T se retrocede y vuelve a iniciarse con una marca t’ más grande.
  • 39. Seriabilidad por marcas temporales Si t solicita actualizar una tupla: Si t  t r  se ejecuta la actualización, dado que ninguna transacción más reciente que t ha leído siquiera la tupla Si t < t r ó t < t u  se retrocede (rollback) la transacción t y se reinicia con una marca temporal mayor, porque alguna transacción posterior a t ya leyó o escribió la tupla antes de que t pueda hacerlo Si un rollback comprende la reinstalación de valores previos, el rollback debe tener una marca de hora nueva, que actualizará t u y t r de la tupla reinstalada
  • 40.
  • 41. Prevención de interbloqueos Esperar o Morir Si T i solicita un elemento que posee T j , T i puede esperar sólo si T i < T j (T i es más antigua que T j ) en otro caso T i se retrocede (muere) Herir o Esperar Si T i solicita un elemento que posee T j , T i espera sólo si T i > T j (T i es más reciente que T j ) ; en otro caso T j se retrocede (T i hiere a T j ). No-espera Si Ti no puede obtener un bloqueo se aborta de inmediato y se reinicia después de un cierto lapso sin comprobar si ocurriría o no un bloqueo mortal Espera Cautelosa Si Ti solicita un elemento que posee Tj, Ti espera sólo si Tj no está detenida (no está esperando que se libere ningún otro elemento bloqueado); en caso contrario Tj aborta.
  • 42.
  • 43. Transaction Log Programa de Aplicación DBMS Acceso Base de Datos Transaction Log (a) (b) Actualización de los datos (a) (b) Se modifican los datos (a) ante-imagen (b) post-imagen
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50. Recuperación - Fallas del Sistema - Se pierde el contenido de la memoria principal y de las áreas de almacenamiento temporal. Por lo tanto, se perderá el estado preciso de la transacción que se está ejecutando y no podrá ser completada con éxito. Por este motivo será preciso anularla (retroceder) cuando se reinicie el sistema (aplicación de los registros ante-imagen desde el Log de transacciones). Para reducir este proceso, se introducen periódicamente Puntos de Revisión o Verificación .
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.

Notas del editor

  1. Resultado de la ejecución de un programa de usuario escrito en algún lenguaje de programación o de manipulación de datos de alto nivel (SQL, Cobol, Pascal, C, etc.)
  2. Consistencia: La suma de A + B no debe ser alterada al ejecutar la transacción. Sin el requisito de consistencia ¡la transacción podría crear o destruir dinero! La responsabilidad de asegurar la consistencia de una transacción es del programador de la aplicación que la codifica. Atomicidad: Supongamos que antes de la transacción, los valores de las cuentas A y B son 20,000 y 40,000, respectivamente Durante la ejecución, hay momentos en que la BD se encuentra en un estado inconsistente . La atomicidad garantiza que esos estados inconsistentes no sean visibles sino al interior de la transacción. La BD conserva los valores antiguos (en disco), y si la transacción no se completa, recupera dichos valores. La responsabilidad de asegurar la atomicidad es del gestor de transacciones de la BD. Durabilidad: Cuando se ha completado con éxito la transacción, no debe suceder que una falla en el sistema produzca la pérdida de datos correspondientes a la transferencia. Las modificaciones realizadas en la transacción se guardan en disco antes que ésta finalice Esta información guardada es suficiente para reconstruirla en caso de fallo. La responsabilidad de asegurar la durabilidad es del gestor de recuperaciones de la BD, estrechamente ligado al gestor de transacciones. Aislamiento: Aunque haya otras transacciones accedan concurrentemente a A y B, sus operaciones no se entrelazarán de modo que ocasionen inconsistencias en la BD. Es decir, las transacciones se ejecutan “como si” su tratamiento fuera secuencial. La responsabilidad de asegurar la atomicidad es del componente de control de concurrencias de la BD.
  3. Si el DBMS encuentra un begin transaction cuando hay otra transacción en proceso, bloquea la nueva hasta que la anterior termine. Este método elimina la interferencia, pero es pesimista al suponer que cualquier actividad concurrente representa una amenaza de interferencia.
  4. Transacción A: transferir $20 de R a P Transacción B: transferir $30 de R a P Las acciones se están intercalando sin resultados indeseables
  5. Activa , el estado inicial; permanece en ese estado durante su ejecución Parcialmente comprometida , después de ejecutarse su última instrucción Fallida , tras descubrir que no puede continuar su ejecución normal Abortada , después de haber retrocedido la transacción y restablecido la BD a su estado anterior al comienzo de la misma. Comprometida , tras completarse con éxito.
  6. Con bloqueo estricto de dos fases
  7. El bloqueo se aplica sobre criterios de búsqueda, no sobre tuplas individuales
  8. Lectura registrada: solamente bloqueos X Lectura repetible: bloqueos X y S, sobre objetos individuales Seriable: bloqueos sobre criterios de búsqueda
  9. En Esperar – Morir, una transacción más antigua debe esperar a que una más reciente libere sus elementos de datos. Así, cuanto más antigua se vuelve, más tiende a esperar. Por el contrario, en herir – esperar, una transacción más antigua nunca espera a una más reciente. En esperar – morir, si Ti muere y se retrocede a causa de haber solicitado un elemento de dato que posee Tj, entonces Ti puede volver a realizar la misma secuencia de peticiones cuando vuelva a comenzar. Si Tj posee todavía ese elemento de dato, Ti morirá de nuevo. Así, Ti puede morir varias veces hasta que adquiera el elemento que necesita. Por el contrario, en el esquema herir-esperar, si Ti está herida y retrocede porque Tj solicita un elemento de datos que posee; cuando vuelva a comenzar Ti y solicita el elemento de datos que ahora posee Tj, Ti espera. De este modo puede haber menos retrocesos en el esquema herir-esperar.