Final del 11/04/14 (Bases de Datos)

De Cuba-Wiki

Plantilla:Back

Preguntas[editar]

  1. Defina la durabilidad de una transacción y dé un ejemplo donde se aplique esta propiedad.
  2. Dado el siguiente conjunto de operaciones T1 = {R1(A);R1(D);W1(A);W1(D)} T2={R2(A);W2(A)}. Indique el schedule serial correspondiente yuno serializable (no serial).
  3. Falsa sumarización. Como resuelve este problema el lockeo binario?
  4. Suponga la siguiente relacion {CODEMP, TEL1, TEL2, TEL3}. En qué forma normal se encuentra? Justifique
  5. Como puede probarse que una dep. funcional es falsa en un cierto conjunto de DFs?
  6. Defina clave primaria. Que operaciones de DML controla esta restricción?
  7. Defina independencia lógica y explique como se vincula con los niveles de arqutectura de las BDs.
  8. Cual es el costo de acceder a buscar un rango de valores si se tiene un indice hash que aplica al criterio de busqueda?
  9. Como pueden utilizarse las vistas para aumentar la seguridad de la BD?
  10. Se tiene una BD con actualizacion inmediata (undo/redo). Muestre un grafico en que situación tenia que estar T2 para que el dbms tuviera que hacer undo.
  11. Dos usos que le da el compilador al System Catalog.
  12. Que es un Data Warehouse? Cual es su utilidad?
  13. Porque es necesario para un DBA conocer la forma en que se van a incrementar los registros de una tabla?

Respuestas[editar]

  1. La durabilidad refiere a que una vez que una transacción realiza un commit esos cambios son permanentes y públicos y no pueden ser afectados por futuros errores o fallos del sistema. Ejemplo: luego de que una transacción comitee, si se corta la luz, por más que no se hayan bajado los datos a disco una vez que el sistema se recupere los datos deben haber sido correctamente escritos.
    • Serial: {R1(A);R1(D);W1(A);W1(D);R2(A);W2(A)}
    • Serializable: {R1(A);R1(D);W1(A);R2(A);W1(D);W2(A)}
  2. El problema de falsa sumarización ocurre cuando una transacción está haciendo una operación de agregación (por ejemplo una suma) y al mismo tiempo otra transacción modifica los datos de manera que el resultado se compute sobre pedazos no consistentes (datos más viejos de uno y más nuevos de otro). El lockeo binario resuelve este problema ya que impide el acceso de la segunda transacción a los datos sobre los que está operando la primera.
  3. Asumiendo que CODEMP es clave, la relación está en forma normal de Boyce Codd. Ya que las dependencias funcionales serian F = {CODEMP TEL1, CODEMP TEL2, CODEMP TEL3} y todas tienen del lado izquierdo una superclave (en particular una clave).
  4. Se puede averiguar usando el lema que dice: . O sea podemos calcular la clausura de X usando las df de F (esto es algoritmico, lo puede hacer una computadora.. una especie de BFS). Esto nos da el conjunto de atributos determinado por X, y luego basta ver que todos los atributos de Y estan dentro.
  5. Una clave es una superclave minimal. Es un subconjunto de atributos que determinan unívocamente la fila de la tabla. Se define en SQL con la instrucción PRIMARY KEY al momento de crear los datos.
  6. Independencia lógica: capacidad de cambiar el esquema conceptual sin tener que cambiar el externo ni los programas de aplicación.
    • Si el archivo se asume desordenado, es hacer un file scan. O sea cantidad de bloques.
    • Si el archivo es ordenado se puede hashear el mínimo (cantidad de bloques de disco por bucket) y después buscar linealmente desde ahí (cantidad de tuplas del resultado / factor de bloqueo)
  7. Se restringe el conjunto de datos a los que puede acceder el usuario.
  8. Para que T2 tenga que hacer undo debe haber ocurrido el crash en la base de datos antes que éste haga commit.
    • Debe validar que los nombres de atributos matcheen.
    • Debe validar los stores procedures (y sus parámetros) y las vistas.
  9. Un datawarehouse es una colección de datos cuyo propósito es guiar la toma de decisiones de negocio (Buisness Inteligence). Proveen acceso para análisis complejo, descubrimiento de conocimiento y dan soporte a demandas de alta performance. Los datawarehouses cumplen las propiedades INTS:
    • Integrated
    • Non volatile
    • Time Variant
    • Subject oriented
  10. Para definir el initial filesize y el filegrowth.