You are on page 1of 6

Examen de Sistemas de Informacin Estratgicos

Parte I: Almacenes de Datos


(60% de la nota de la primera parte)
(30-10-2017)

1. Pon un ejemplo de un esquema multidimensional en el que aparezca una tabla de


hechos con un atributo aditivo y uno no aditivo. Explica adecuadamente el esquema y los
problemas que plantea el tratamiento de estos atributos. (2 puntos)

Producto Produccin Empleado


id_prod
id_emp
id_maq
id_tiempo
unidades
Mquina coste Tiempo
temperatura

La medida atributo "temperatura", que representa la temperatura de produccin de un


producto en una mquina que est gestionada por un empleado durante la unidad de tiempo
(que se mide en minutos), no es aditiva. No se puede sumar las temperaturas de produccin
por ninguna dimensin, carece de sentido. Sin embargo, las otras dos medidas atributos
"unidades" y "coste", que representan las unidades producidas y el coste de produccin, s
que son aditivas.

2. Explica con un ejemplo el problema de la existencia de una jerarqua en la que


aparezcan dos niveles consecutivos con una relacin no-estricta. Explica tambin la forma
de solucionarlo. (2 puntos)

Dos niveles con una relacin no-estricta aparece cuando se da una cardinalidad mxima
muchos entre el nivel i y el nivel i+1

La forma de solucionarlo es una de las siguientes:


Dividir las instancias del nivel i que se asocian con ms de una instancia del nivel
i+1, para que su asociacin sea con una sola, consiguiendo que la cardinalidad
mxima de la relacin sea 1.
Unir las instancias del nivel i+1 con las que se asocia una instancia del nivel i, para
que la cardinalidad mxima de la relacin sea 1.
Eliminar el nivel i de la jerarqua.
3. Qu diferencias existen entre las operaciones DRILL DOWN y DRILL ACROSS?
Ilstralas con un ejemplo. (1 punto)

Con el caso visto en clase:

La consulta: "Importe total de ventas en este ao, por departamento y trimestre"

Se correspondera a esta consulta SQL:

SELECT P.departamento, T.trimestre, SUM (V.importe)


FROM Ventas V, Tiempo T, Producto P
WHERE V.nro_producto = P.nro_producto AND
V.fecha = T.fecha AND
T.ao= year (TODAY)
GROUP BY T.trimestre, P.departamento

Un DRILL DOWN sera desplegar la informacin a ms detalle introduciendo un elemento


movindonos en una dimensin. Por ejemplo, cambiandola consulta a "Importe total de ventas
en este ao, por categora y trimestre". De esta forma como cada departamento tiene
asociada varias categoras se desplegara la informacin con ms detalle. La consulta quedara
as:

SELECT P.categora, T.trimestre, SUM (V.importe)


FROM Ventas V, Tiempo T, Producto P
WHERE V.nro_producto = P.nro_producto AND
V.fecha = T.fecha AND
T.ao= year (TODAY)
GROUP BY T.trimestre, P.categora

Un DRILL ACROSS sera desplegar la informacin a ms detalle introduciendo en la consulta


una dimensin que no est. Por ejemplo, cambiando la consulta a " Importe total de ventas en
este ao, por departamento, trimestre y regin". La dimensin Almacn no estaba y al
introducirla desplegamos los datos del informe anterior detallando cada uno de ellos por cada
regin que haya. La consulta quedara as:
SELECT P.departamento, T.trimestre, A.regin, SUM (V.importe)
FROM Ventas V, Tiempo T, Producto P, Almacn A
WHERE V.nro_producto = P.nro_producto AND
V.fecha = T.fecha AND
V.nro_almacn = A.nro_almacn AND
T.ao= year (TODAY)
GROUP BY T.trimestre, P.departamento, A.regin

4. Explica con ejemplos los dos operadores CUBE y ROLLUP que son una extensin al
SQL. (1 punto)

Nos puede servir el mismo ejemplo de almacn de datos que el de la pregunta 3.

El operador CUBE: pongamos un ejemplo

SELECT P.departamento, A.regin, T.ao, SUM (V.importe)


FROM Ventas V, Tiempo T, Producto P, Almacn A
WHERE V.nro_producto = P.nro_producto AND
V.fecha = T.fecha AND
V.nro_almacn = A.nro_almacn
GROUP BY CUBE(P.departamento, A.regin, T.ao)

Calcula, sobre el resultado de la consulta (GROUP BY), todas las agregaciones que pueden
definirse combinando las tres dimensiones (parmetros) de la consulta (ao, departamento,
regin). Se genera un cubo de datos, el ms fino es la celda (ventas para un ao, departamento
y regin) y el ms grueso es la agregacin total (ventas totales en todos los aos,
departamentos y regiones).

El operador ROLLUP: pongamos un ejemplo

SELECT P.departamento, A.regin, T.ao, SUM (V.importe)


FROM Ventas V, Tiempo T, Producto P, Almacn A
WHERE V.nro_producto = P.nro_producto AND
V.fecha = T.fecha AND
V.nro_almacn = A.nro_almacn
GROUP BY ROLLUP(P.departamento, A.regin, T.ao)

Calcula sobre el resultado de la consulta (GROUP BY), agregaciones progresivas (de derecha
a izquierda) sobre los atributos de agrupacin (parmetros) de la consulta.
Dep Regin Ao SUM(importe)
Bebidas Este 2010 30
Bebidas Este 2011 20
Bebidas Este ALL 50
Bebidas Oeste 2010 15
Bebidas Oeste ALL 15
Bebidas ALL ALL 65
Fras Este 2010 25
Fras Este 2011 12
Fras Este ALL 37
Fras ALL ALL 37
ALL ALL ALL 102

5. Explica con un ejemplo que problemas pueden presentarse en un esquema


multidimensional donde aparezca una dimensin muy grande y la solucin que se puede
aplicar. (2 puntos)

Cuando una dimensin tiene una cardinalidad muy grande penaliza gravemente la evaluacin
de consultas que la incluye. La solucin es extraer una mini-dimensin de la dimensin original.
El ejemplo que se vio en teora nos puede servir.

La dimensin "Cliente" tiene millones de instancias. Sera adecuado extraer la mini-dimensin


demogrfica que tiene muchas menos instancias, decenas de miles, y ligarla con los hechos
en el esquema multidimensional de esta forma:
6. En la estrategia de almacenamiento de datos agregados que se basa en la insercin de
nuevas filas en las tablas de las dimensiones y de los hechos, explica con un ejemplo el
problema del doble conteo. (2 puntos)

Esta estrategia se basa en incluir ms filas en las tablas de dimensin e incluir un atributo
que indique que nivel de agregacin que se determina en la fila.

De esta forma en la tabla de hechos aparecen filas con informacin agregada para estas
nuevas filas. Esto se puede ver en el dibujo siguiente:
En esta estrategia las claves de las nuevas filas en la tabla de dimensin deben ser
compatibles con las existentes, y tambin se debe de controlar el nivel de agregacin en las
consultas en caso contrario puede aparecer el problema del doble conteo. Este problema
consiste en agregar datos de dos niveles de agregacin distintos, provocando que el mismo
dato se cuente dos veces o ms.

You might also like