Está en la página 1de 17

Taller de Base de Datos

Consulta Tpica en OLAP


Encontrar el total y nmero de unidades vendidas para
marca en el primer semestre de 1997

Taller de Base de Datos

Formulacin de consultas en OLAP


Inspeccionar las dimensiones
Imponer una condicin sobre las dimensiones (ej.
Semestre=1S97)
Seleccionar atributos y categoras (granularidad).
Seleccionar medidas y agregaciones(ej. Sum(f.pesos))
Observar el resultado, e investigar por qu, lo que implica
una nueva consulta.

Taller de Base de Datos

Operadores OLAP
Roll-up: Cambiar una categora en la granularidad por una categora
menos fina.
Drill-down: inverso de Roll-Up.
Navegacin: secuencia de roll-up y drill-downs
Drill-across: cruzar ms de una tabla de hechos
Slice: imponer condiciones sobre las dimensiones
Pivot: elegir atributos para la tabla de salida y cambiar la disposicin
de los atributos.
Etc.

Taller de Base de Datos

Cubo de Datos

Taller de Base de Datos

Grafo de Dependencia de un Cubo de


Datos

Taller de Base de Datos

Almacenamiento de un Cubo de Datos en


un Sistema OLAP Relacional

Taller de Base de Datos


Un cubo de datos puede tener hasta:
E1xE2xxEn
hechos, donde Ei es el nmero de elementos de la
dimensin i.
Tamao del cubo es cercano a la tabla de hechos base si los
datos son densos y la jerarqua se condensa fuertemente a
medida que nos acercamos a All.
En general puede ser MUCHO MS grande (data cube
explosin)
Ejemplo: benchmark TCP/Dpart customer supplier, la tabla de
hechos base tiene 6 millones de tuplas, el cubo tiene 19
millones.

Taller de Base de Datos

Algoritmo Bsico para calcular un cubo de


datos

1.
2.
3.

Algoritmo 2N para cubos simples (dimensiones tiene


una categora a parte de All).
Procedimiento Iter(&handle,v) agrega el valor v a una
direccin asociada a la tupla (punto) handle.
Leemos la tabla de hechos y por acada tupla t=<x1,
,xn,v> llamamos 2n veces Iter(handle,v).
Para cada tupla handle se despliega final(&handle)
Iter se puede implementar usando una tabla de hash.
Nmero de llamadas a Iter=2nxT,donde n es el nmero
de dimensiones y T es la cardinalidad de la tabla de
hechos base.

Taller de Base de Datos

Computacin Eficiente de Cubos de Datos


Distributivos

Cubos de datos distributivos: funciones de agregacin


distributivas. Ejemplos: SUM, MAX, MIN.
Recordemos que cada granularidad define una vista
cbica.

<codProducto, codSuper, fecha> define un cuboide de 3


dimensiones.
<codProducto, codSuper, All> define un cuboide de 2
dimensiones.

Todo cuboide de dimensin K puede ser computado


usando algn cuboide de dimensin K-1

Ejemplo: Para todo punto <All, p1, All>,


V(All,p1,All)=G({V(All, p1,fi) | fi Mi}).

Taller de Base de Datos

Algoritmo PipeSort y PipeHash

Taller de Base de Datos

Algoritmo PipeHash
Idea general algoritmo PipeHash (S. Agrwal et al,
VLDB 96):

Para cada vista cbica definido por una granularidad G elegir un


cuboide G.
Es decir, tenemos que elegir un rbol del grafo de dependencia que
cubra todos los nodos y cuya raz sea el cuboide inferior (minimun
Spannig Tree)
Hay muchos rboles posibles, si computamos el cubo usando tablas
de hash, elegimos los antecesores ms pequeos.
Particionar el rbol en subarboles, cada subarbol se computa por
separado con una sla lectura del cuboide de su raz.

Taller de Base de Datos

Procesamiento de Consultas en
OLAP

Almacenar slo tabla de hechos base, computar los


cuboides en tiempo de consulta.

Materializar completamente el cubo (no siempre es


posible)

Problema: computar un cuboide sobre dimensiones simples


toma tiempo proporcional al tamao de la tabla de hechos base.

Problema explosin del cubo


Costos de actualizacin

Materializar slo algunos cuboidesy usar navegacin de


agregados (Harinaraya et al 1996).

Taller de Base de Datos

Navegacin en Agregados
Supongamos que queremos computar <All, proveedor,
All> en TPC-D Benchmark

Navegacin en agregados: proceso en que se reformula


un cuboide requerido por el usuario como una consulta
que se refiere a otro(s) cuboide pre- computado.

Taller de Base de Datos

Navegador en Agrados (cont)

Taller de Base de Datos

Navegacin en Agrados (cont)

Cuboide C: <codProducto, semestre>


Consulta Q: Cunto jabn se ha vendido cada ao?
SELECT from C WHERE codProd=Jabn: Roll-Up de
semestre a ao
En general si:

C y Q son sobre el mismo conjunto de dimensiones,


Las condiciones de Q implican las de C y
La granularidad de C es ms fina que la granularidad de Q,
Entonces C se puede usar para responder Q.

Taller de Base de Datos

Herramientas para WareHouses OLAP

Back- End: extraccin de datos, integracin, limpieza,


carga, mantencin incremental
Servidor: procesamiento de consulta
Front-end: clientes OLAP, herramientas de consulta y
visualizacin, reportes
Otras: monitoreo, administracin, meta-datos

Taller de Base de Datos

Actualidad y Futuro de OLAP

Extensiones del modelo multidimensional (ej.,


dimensiones heterogneas), datos semiestruturados
(XML), teora de Diseo en este contexto.
Minera de datos organizados en modelos OLAP.
Sistemas MOLAP escalables: Sistema T3 de Microsoft,
EMC, Knosys, Unisys. Cubo de datos de 1.2 Terabyte de
datos base, 7.6 billones de hechos (tuplas), 50 usuarios
concurrentes, respuestas a consolidaciones toman 0.020.08 seg.

También podría gustarte