Diferencia entre revisiones de «Final del 21/07/06 (Bases de Datos)»
De Cuba-Wiki
Línea 21: | Línea 21: | ||
== Ejercicio 3 == | == Ejercicio 3 == | ||
1) | 1) | ||
Sea R=XY, S=Y. | Sea R=XY, S=Y. | ||
R%S = ∏X(R) \ ∏X[ (∏X(R) x S) \ R] | R%S = ∏X(R) \ ∏X[ (∏X(R) x S) \ R] | ||
2) | 2) | ||
== Ejercicio 4 == | == Ejercicio 4 == |
Revisión del 19:52 24 feb 2009
Enunciado
Link: Final del 21 de Julio de 2006 (Frias)
Ejercicio 1
Ejercicio 2
Vamos a probar por el absurdo que esta politica de lock previene deadlocks.
Sean T={T1..Tn} un conjunto de tx que respeten la politica de locks (A1..Am). Sup. que ocurrio un deadlock, luego existe un conjunto de tx T0={T1..Tk}, k>=2, tq: T0 inc T, y i en 1..k, T0i espera a T0j, j= 1 (si i=k), i+1 (sino).
Graficamente: T01->T02->..->T0k->T01
T0i->T0j = T0i espera a T0j lockea un item al que T0i solicito el lock. Ademas, T0j lockea el item de indice Qj, y T0i solicito lock sobre dicho item. Es decir, T0i espera a T0j por el lock del item AQj.
Graficamente: T01->(AQ2)T02->(AQ3)..->T0k->(AQ1)T01
Ejercicio 3
1)
Sea R=XY, S=Y. R%S = ∏X(R) \ ∏X[ (∏X(R) x S) \ R]
2)