Cátedra: Ale (catedra unica)
Fecha: 2° Oportunidad - (2° Cuatrimestre) 2008
Día: 12/08/2009
Mostrar que y
implican
usando el tableau y el metodo chase para
Estimar el tamaño de R(AB)|x|S(BC) si se cuenta con el siguiente histograma
B<0 | B=0 | B>0 | |
---|---|---|---|
R | 500 | 100 | 400 |
S | 300 | 200 | 500 |
Asumir que existen 100 valores diferenties de B<0 y 200 valores de B>0
Dada la tabla Notas:
Estudiante | Nota_BD | Nota_SII |
---|---|---|
A | 4 | Null |
B | Null | 9 |
C | 10 | 8 |
La consulta:
SELECT Estudiante FROM Notas WHERE (Nota_BD > Nota_SII AND Nota_SII > 7 AND Nota_BD > 9 ) OR ( Nota_BD < 5)
Da como resultado:
Elegir la respuesta correcta y justificar
Sabiendo que el algoritmo de recuperacion (creacion de logs? no recuerdo) es UNDO/REDO, demostrar los registros que se generaron en el LOG. Valores iniciales:
N° | Transaccion 1 | Transaccion 2 | Transaccion 3 |
---|---|---|---|
1 | Start | ||
2 | Read tax | ||
3 | tax=tax+1 | ||
4 | Start | ||
5 | Read Salario | ||
6 | salario = salario+1 | ||
7 | Write tax | ||
8 | commit | ||
9 | start | ||
10 | Read tax | ||
11 | Read salario | ||
12 | tax= …(no copie mas) | ||
13 | |||
14 | |||
15 | |||
16 |
Esta tabla esta incompleta; no llegue a terminar de copiarla... A ver si alguien la puede completar.
Como busco demostrar que es implicada por
divido
en
y
haciendo uso de la propiedad que indica que la descomposición de
se puede descomponer en
y
.
A | B | C | D | E | |
---|---|---|---|---|---|
R1 | ![]() | ![]() | ![]() | ![]() | ![]() |
R2 | ![]() | ![]() | ![]() | ![]() | ![]() |
Ahora, para demostrar que , usando el conjunto de dependencias
tendría conseguir una fila que tenga todas las variables distinguidas.
La dmv se transforma en una dependencia de junta
Por lo que si ahora proyectamos sobre cada conjunto de la junta obtenemos:
A | B |
---|---|
![]() | ![]() |
![]() | ![]() |
A | C | D | E |
---|---|---|---|
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
Si hacemos la junta de estas dos tablas, obtenemos las filas:
A | B | C | D | E |
---|---|---|---|---|
![]() | ![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() | ![]() |
Pero como las filas 1 y 4 ya están en el tableau, no las agrego, por lo que ahora me queda:
A | B | C | D | E | |
---|---|---|---|---|---|
R1 | ![]() | ![]() | ![]() | ![]() | ![]() |
R2 | ![]() | ![]() | ![]() | ![]() | ![]() |
Agregada por ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
Agregada por ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
La dmv se transforma en una dependencia de junta
, por lo que si hacemos lo mismo que antes nos quedan las proyecciones:
B | D |
---|---|
![]() | ![]() |
![]() | ![]() |
![]() | ![]() |
![]() | ![]() |
A | C | D | E |
---|---|---|---|
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
Al hacer la junta de estas dos tablas, en particular la fila 4 de la primera con la 2 de la segunda, va a aparecer una fila con todos los valores distinguidos:
![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
Para estimar el tamaño de esa junta tenemos que calcular cada rango por separado y sumarlos:
Entonces nos queda:
La respuesta es “A y C solamente”.