Como el de la práctica llegó muy tarde, Ale tomó escrito a todos.
1 Qué es una base de dependencias? Para qué se usa? Cómo se calcula? (describir el algoritmo) 2 Hallar el costo de la junta natural de dos relaciones usando histograma de valores frecuentes. (este es igual al que da en clase) 3 Dada una ejecución, armar el grafo de precedencias. Es serializable? Si lo es, dar todas las equivalencias posibles.
La ejecución que dio es:
l(1,a); l(2,a); l(3,b); g(2,a); l(2,c); l(2,b); g(2,b); g(1,c)
siendo:
1- Está en el libro de Ale.
2- (Columnas = Valor,R,S,Resultado) 0 5 x 10 = 50 1 6 x 8 = 48 2 4 x 7 = 28 3 8 x 42/[( V(B,S)-4)=14] = 24 4 35/[( V(B,R)-4)=16] x 6 = 13.125 = 13 otros 35x42 / { MAX( [( V(B,S)-1)=17] , V(B,R)-1)=19] ) = 19 } = 77.36 = 77 50+48+28+24+13+77 = 240 Rta: estimacion de la cantidad de tuplas juntables 240.
3- Ejecucion l1(A), l2(A), l3(B), g2(A), l2(C), l2(B), g2(B), g1(C). Para armar el grafo hay que buscar aquellos pares conflictivos. Que son los que tienen en alguno de las partes de los pares una grabacion para el mismo item pero diferentes transaccion, Los conflictos son: l3(B),g2(B) de aca sale que T3 se tiene que ejecutar antes que T2; T3 -----> T2 l1(A),g2(A) de aca sale que T1 se tiene que ejecutar antes que T2; T1 -----> T2 l2(C),g1(C) de aca sale que T2 se tiene que ejecutar antes que T1; T2 -----> T1 El grafo se arma con los tres nodos T1,T2,T3 Aristas dirigidas: T1 -----> T2 T3 -----> T2 T2 -----> T1 El grafo te queda ciclico porque T1 --- > T2 y T2 ---> T1, por ende NO es serializable.