Documentos de Académico
Documentos de Profesional
Documentos de Cultura
EJERCICIO 9 - Denormalizaciones
EJERCICIO 9 - Denormalizaciones
Obtenemos los siguientes resultados: en devolver 9999 filas 1926 lecturas fsicas 0 ordenacin en memria 1 ordenaciones en disco estimacin = 14405 Coste tiempo = 8 Segundos
El mayor peso del coste recae sobre la ordenacin causada por la agrupacin GROUP BY. En el caso de que la informacin de esa tabla no sufriera modificaciones en la actualidad, es decir, se tratara de una tabla con informacin histrica, sera conveniente almacenar una copia de la misma con la informacin agrupada. El siguiente cdigo implementa un CREATE TABLE basado en la consulta anterior:
CREATE TABLE MAESTRO_CLIENTES AS SELECT NIF , NOMBRE , APELLIDOS , CN_CIUDAD CIUDAD, CN_PAIS PAIS, CN_SEXO SEXO, CN_EL ESTADOLABORAL, CN_EC ESTADOCIVIL, AVG(IMPORTE) MEDIA, SUM(IMPORTE) TOTAL FROM CLIENTES, PAISES, CIUDADES, SEXOS, ESTADOSLABORALES, ESTADOSCIVILES, RESERVAS WHERE PAI_ID_PAIS= ID_PAIS AND CIU_ID_CIUDAD= ID_CIUDAD AND SEX_ID_SEXO= ID_SEXO AND EL_ID_EL=ID_EL AND EC_ID_EC=ID_EC AND CLI_NIF=NIF GROUP BY NIF , NOMBRE , APELLIDOS , CN_CIUDAD , CN_PAIS , CN_SEXO , CN_EL , CN_EC;
call count ------- -----Parse 1 Execute 1 Fetch 668 ------- -----total 670
select * from maestro_clientes call count ------- -----Parse 1 Execute 1 Fetch 668 ------- -----total 670 cpu elapsed disk query current -------- ---------- ---------- ---------- ---------0.00 0.06 0 0 0 0.00 0.00 0 0 0 0.06 0.23 148 820 0 -------- ---------- ---------- ---------- ---------0.06 0.30 148 820 0 rows ---------0 0 9999 ---------9999
Resumen de la prctica.
Los entornos datawarehouse rompen la normalizacin de tablas debido a que los accesos generalmente se realizan sobre un volumen alto de registros y el uso de ndices es ineficiente en la mayora de los casos. Las tablas no deberan sufrir transacciones y, en caso de recibir un mnimo de modificaciones, es conveniente contemplar la creacin de vistas materializadas. En Oracle no conviene crear tablas intermedias o temporales para realizar consultas en dos partes. El coste de crear la tabla no debera ser despreciado.