P. 1
olapTulua

olapTulua

|Views: 482|Likes:
Published by omjsvr

More info:

Published by: omjsvr on Oct 01, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

11/22/2012

pdf

text

original

Carlos Hurtado Larrain, Congreso de Ciencia y Tecnología Computacional, Tuluá, Abril 2005

Repositorios (data warehouses) OLAP
Carlos Hurtado Larrain Profesor Asistente, Departamento de Ciencias de la Computación, Universidad de Chile

Carlos Hurtado Larrain, Congreso de Ciencia y Tecnología Computacional, Tuluá, Abril 2005

Contenido
• Motivación • Nivel Lógico de un Repositorio OLAP
– Modelo Multidimensional

• Nivel Físico de un Repositorio OLAP
– Almacenamiento y Procesamiento de datos

Carlos Hurtado Larrain, Congreso de Ciencia y Tecnología Computacional, Tuluá, Abril 2005

Contenido
• Motivación • Nivel Lógico de un Repositorio OLAP
– Modelo Multidimensional

• Nivel Físico de un Repositorio OLAP
– Almacenamiento y Procesamiento de datos

– Usuarios y aplicaciones no necesitan conocer las complejidades del almacenamiento físico de los datos – Noción seminal para Bases de Datos (BD) y Sistemas Administradores de BDs. . Abril 2005 Principio de Independencia de los Datos • 1960s: datos se manejaban con sistemas de archivos + operaciones de acceso • 1970: noción de “Independencia de los Datos” (Ted Codd). Congreso de Ciencia y Tecnología Computacional. Tuluá.Carlos Hurtado Larrain.

relación. Tuluá. byte. cilindro. campo. archivo. • Nivel Lógico: – Representación: entidad.Carlos Hurtado Larrain. registro. SQL) . etc.. dirección física. clase. – Acceso: lenguaje de consulta (ej. – Acceso: acceso secuencial. Abril 2005 Nivel Físico vs. atributo. acceso directo. etc. etc. Congreso de Ciencia y Tecnología Computacional. tabla. tupla. Nivel Lógico • Nivel Físico: – Representación: bit. llave. bloque.

. etc. Redes (IDS). Relacional.Carlos Hurtado Larrain. Congreso de Ciencia y Tecnología Computacional. etc. Multidimensional (OLAP).Orientado a Objetos (O2). Abril 2005 Nivel Lógico: Modelo de Datos • Conceptos para “imaginar” datos • Lenguaje para manipular y extraer datos • Elija el de su preferencia: – Jerárquico (IMS). Tuluá. RDF (Web Semántica). etc. Semiestructurado (XML).

Carlos Hurtado Larrain, Congreso de Ciencia y Tecnología Computacional, Tuluá, Abril 2005

Modelos de Datos: ¿qué tienen en común?
• Registro: unidad atómica de información sobre el mundo.
Juan Pérez Nombre 30 Edad

Lo mismo que: “entidad”, “tupla”, “objeto”, etc.

Carlos Hurtado Larrain, Congreso de Ciencia y Tecnología Computacional, Tuluá, Abril 2005

Modelos de Datos: ¿en qué se diferencian?
• Forma de agrupar registros:
– Conjuntos
• Modelo Relacional

– Grafo
• Modelo de Redes, Orientado a Objetos, XML, RDF, etc.

Carlos Hurtado Larrain, Congreso de Ciencia y Tecnología Computacional, Tuluá, Abril 2005

Conjuntos vs. Grafo

Grafo • Conjuntos: – Orientado a encontrar grupos de registros – Ejemplo: personas mayores que Juan • Grafo: – Orientado a encontrar conexiones de registros – Ejemplo: árbol genealógico de Juan . Tuluá.Carlos Hurtado Larrain. Abril 2005 Conjuntos vs. Congreso de Ciencia y Tecnología Computacional.

Acceso: navegación recorriendo enlaces Variante: Modelo Jerárquico (IBM-IMS 1970) . Congreso de Ciencia y Tecnología Computacional.Carlos Hurtado Larrain. Tuluá. Abril 2005 Ejemplo “Grafo”: Modelo de Redes • • • • CODASYL (1971) Representación: registro lógico. enlace.

Acceso: conjuntos de tuplas a la vez (SQL) Modelo dominante en la actualidad – Industria de Bases de Datos Relacionales en año 2004: $US 9000 millones (Gartner). Congreso de Ciencia y Tecnología Computacional. tabla. . Abril 2005 Ejemplo “Conjuntos”: Modelo Relacional • • • • Ted Codd (1970) Representación: tupla.Carlos Hurtado Larrain. Tuluá.

. recursos humanos etc. transacciones y facturas Programa clientes frecuentes. Congreso de Ciencia y Tecnología Computacional..Carlos Hurtado Larrain. . Tuluá. Abril 2005 Ejemplo: Cadena de Supermercados • Datos: – – – – – – – – – Supermercados y sus descripciones Productos (SKU) y descripciones Precios de productos y promociones Transacciones de ventas en cada supermercado Proveedores y partes entregadas por ellos Inventario en bodegas y supermercado Ordenes de compra a proveedores.

ComunaId. . . ContratoId. .) Comuna(ComunaId. AdminId. . .) . Sueldo. .Carlos Hurtado Larrain. Area. . .ProdId. Numero.) Region(RegionId.CajaId) Supermercado(SupId. Tipo. . Congreso de Ciencia y Tecnología Computacional. . PaisId.. RegionId. Abril 2005 Cadena de Supermercados: Tablas Venta(SupId. . ) Direccion(DireccionId.Precio. .Cantidad. NumHabitantes. Texto. Nombre.Fecha. .) Administrador(AdministradorId. Calle. . AreaDeVentaId. Tuluá. . NumHabitantes.. . DireccionId.) Contrato(ContratoId.

Fecha. ComunaId. AdminId. .ProdId. . . . Tuluá.Carlos Hurtado Larrain. Abril 2005 Modelo Relacional: también necesitamos representar grafos Claves ajenas: Venta(SupId. Numero. Congreso de Ciencia y Tecnología Computacional.Precio..Cantidad.CajaId) Supermercado(SupId.. Area. Calle. ) Direccion(DireccionId.) . DireccionId.

Abril 2005 Esquema de una BD Relacional .Carlos Hurtado Larrain. Congreso de Ciencia y Tecnología Computacional. Tuluá.

Congreso de Ciencia y Tecnología Computacional. pagos. etc.Carlos Hurtado Larrain. . Abril 2005 ¿Por qué tantas tablas? • BD soporta procesos – ventas. Tuluá. • BD optimizada para procesamiento transaccional en línea (OLTP) – Normalizada • Abundan BD productivas con cientos de tablas. compras de insumos. traspasos de bodegas.

supermercado y tipo de producto. . Congreso de Ciencia y Tecnología Computacional. – Productos más vendidos en los últimos dos meses.Carlos Hurtado Larrain. Abril 2005 Consultas Analíticas • No todo es transacciones. Tuluá. – Clientes que compraron más el mes pasado... – . que sucede si queremos analizar tendencias: – Ventas totales por semana.

Congreso de Ciencia y Tecnología Computacional.DirId = Direccion. Abril 2005 Ejemplo: Ventas totales por país Select pais. Direccion. Supermercado.ComunaId. Tuluá.Carlos Hurtado Larrain. Direccion.RegionId Group By pais . Region where Venta.DirId.ComunaId=Comuna. Comuna. Supermercado. Comuna.SupId.SupId = Supermercado. SUM(Precio*Cantidad) From Venta.RegionId=Region.

.. Tn.Ai = Tj. Abril 2005 Consulta Analítica en SQL Select T1.Am.A2 . .. Tn where (Ti. . ..Aj)* Group By T1.. Tn. .A1.A1. T1. Congreso de Ciencia y Tecnología Computacional.Ap) From T1.. . .A2 . Tuluá.Carlos Hurtado Larrain. T1.An . SUM(Tk.

Tuluá. Administrador BD Administrador BD Analista Consulta analítica Datos (reporte) . Congreso de Ciencia y Tecnología Computacional.Carlos Hurtado Larrain. Abril 2005 Analista vs.

quiere saber por qué. Congreso de Ciencia y Tecnología Computacional.. • Administrador BD: programa nueva consulta y envia reporte • Analista: analiza resultado y solicita otra consulta • Administrador BD: programa consulta y entrega reporte • Etc..Carlos Hurtado Larrain.. Abril 2005 Ciclo Analista-Administrador BD • Analista: recibe reporte y observa que ventas en semana 10/2002 son altas. Tuluá.... etc . etc. etc. Solicita ventas por día en semana 10/2002.

Abril 2005 Ciclo Analista . Tuluá.) While (analista no enemigo de Administrador BD) do analista: analiza reporte actual y pide nuevo reporte administrador BD: programa nueva consulta y entrega reporte .Carlos Hurtado Larrain. Congreso de Ciencia y Tecnología Computacional.Administrador BD (cont.

Tuluá. Abril 2005 Limitación del Modelo Relacional Complejidad para visualizar datos y formular consultas analíticas . Congreso de Ciencia y Tecnología Computacional.Carlos Hurtado Larrain.

Carlos Hurtado Larrain. Abril 2005 Procesamiento Analítico en Línea (OLAP) (1) Consulta y visualización de datos de acuerdo al modelo de datos multidimensional . Tuluá. Congreso de Ciencia y Tecnología Computacional.

. Arborsoft. Congreso de Ciencia y Tecnología Computacional. Gray et al. Statistical Object Representation Model (STORM) Rafanelli y Shoshani) – Agregación en SQL (SELECT-FROM-WHERE-GROUPBY) – 1993. Benchmark para OLAP (APB-1). Abril 2005 Historia de OLAP • Pre-historia – 80’s Bases de datos estadísticas (ej. Data Cube: A relational Operator Generalizing Group-By. cross-tab and sub totals. – 1995. – 1996.Carlos Hurtado Larrain. Codd et al. Tuluá. Providing OLAP to useranalysts: an IT mandate. • Despegue .

OLTP .Carlos Hurtado Larrain. Tuluá. Congreso de Ciencia y Tecnología Computacional. Abril 2005 OLAP vs.

Abril 2005 Repositorio (data warehouse) OLAP .Carlos Hurtado Larrain. Tuluá. Congreso de Ciencia y Tecnología Computacional.

Tuluá.Carlos Hurtado Larrain. Congreso de Ciencia y Tecnología Computacional. Abril 2005 Contenido • Motivación • Nivel Lógico de un Repositorio OLAP – Modelo Multidimensional • Nivel Físico de un Repositorio OLAP – Almacenamiento y Procesamiento de datos – Extracción Transformación y Carga .

Congreso de Ciencia y Tecnología Computacional. Abril 2005 Modelo de Datos Multidimensional • Datos describen un proceso. Tuluá. que se representa como: • Dimensiones: • Hechos: – Perspectivas que usamos para visualizar el proceso – Asignaciones de mediciones a puntos en espacios – Formados por dimensiones .Carlos Hurtado Larrain.

semana. Tuluá.Carlos Hurtado Larrain. • Dimensiones: – Producto: código. etc. etc. categoría. marca. etc. tipo. día. – Lugar: código. año. Abril 2005 Ejemplo: Cadena de Supermercados • Hecho: n unidades de un producto p fueron vendidas en una fecha d por x pesos en una tienda s. descripción. nombre. mes. Congreso de Ciencia y Tecnología Computacional. • Medidas: – Número de unidades – Precio de Venta – Costo . – Tiempo: fecha. dirección. semestre.

Carlos Hurtado Larrain. Congreso de Ciencia y Tecnología Computacional. Tuluá. • Dimensiones: – – – – Latitud Longitud Altitud Fecha • Medidas: – Temperatura – Presión . longitud y. Abril 2005 Ejemplo: Registro Meteorológico • Hecho: en la latitud x. altitud a y fecha d fue medida una temperatura t y presión p.

Carlos Hurtado Larrain. Tuluá. Abril 2005 OLAP Relacional: Esquema Estrella . Congreso de Ciencia y Tecnología Computacional.

Tuluá. Abril 2005 OLAP Relacional: Esquema Copo de Nieve .Carlos Hurtado Larrain. Congreso de Ciencia y Tecnología Computacional.

Congreso de Ciencia y Tecnología Computacional. Grafos en OLAP • Necesitamos algo más que OLAP Relacional – OLAP Multidimensional • Dimensiones: – Grafos: registros conectados • Tablas de Hechos: – Conjuntos de registros . Tuluá.Carlos Hurtado Larrain. Abril 2005 Conjuntos vs.

Tuluá.Carlos Hurtado Larrain. Congreso de Ciencia y Tecnología Computacional. Abril 2005 Dimensión OLAP .

Abril 2005 Dimensión OLAP (irregular) . Congreso de Ciencia y Tecnología Computacional. Tuluá.Carlos Hurtado Larrain.

Tuluá.Carlos Hurtado Larrain. Congreso de Ciencia y Tecnología Computacional. Abril 2005 Importancia de Jerárquías • Análisis de canasta en transacciones: .

Congreso de Ciencia y Tecnología Computacional. Abril 2005 Importancia de Jerarquías (cont.Carlos Hurtado Larrain.) . Tuluá.

Congreso de Ciencia y Tecnología Computacional. Tuluá. Abril 2005 Ejemplo: Modelo multidimensional de un Buscador Web .Carlos Hurtado Larrain.

. Abril 2005 Consultas Analíticas sobre Modelo Multidimensional • Inspeccionar las dimensiones • Imponer una condición sobre las dimensiones – Ejemplo: “semestre = 1S97” • Seleccionar atributos y categorías (granularidad) • Seleccionar medidas y funciones de agregación – Ejemplo: SUM(f. .Carlos Hurtado Larrain.. Tuluá.pesos) • Observar el resultado e investigar por qué – Nueva consulta. Congreso de Ciencia y Tecnología Computacional.

Congreso de Ciencia y Tecnología Computacional. Tuluá.Carlos Hurtado Larrain. Abril 2005 Interfaz de Consulta OLAP .

Abril 2005 Interfaz de Consulta OLAP (cont. Tuluá. Congreso de Ciencia y Tecnología Computacional.Carlos Hurtado Larrain.) .

• Drill-down: inverso de Roll-Up. Abril 2005 Operadores OLAP • Roll-up: Cambiar una categoría en la granularidad por una categoría menos fina. Tuluá.Carlos Hurtado Larrain. • Navegación: sequencia de roll-ups y drilldowns • Drill-across: cruzar más de una tabla de hechos . Congreso de Ciencia y Tecnología Computacional.

Tuluá. Congreso de Ciencia y Tecnología Computacional.Carlos Hurtado Larrain. . Abril 2005 Operadores OLAP (cont.) • Slice: imponer condiciones sobre las dimensiones • Pivot: elegir atributos para la tabla de salida y cambiar la disposición de los atributos.

Abril 2005 Cubo de Datos • Gray et al. Congreso de Ciencia y Tecnología Computacional. Tuluá.Carlos Hurtado Larrain. (1996) • Cuboide: .

Tuluá.Carlos Hurtado Larrain. Abril 2005 Cubo de Datos (cont) . Congreso de Ciencia y Tecnología Computacional.

Tuluá. Abril 2005 Grafo de Dependencia de un Cubo de Datos .Carlos Hurtado Larrain. Congreso de Ciencia y Tecnología Computacional.

Tuluá.Carlos Hurtado Larrain. Abril 2005 Contenido • Motivación • Nivel Lógico de un Repositorio OLAP – Modelo Multidimensional • Nivel Físico de un Repositorio OLAP – Almacenamiento y Procesamiento de datos – Extracción Transformación y Carga . Congreso de Ciencia y Tecnología Computacional.

Abril 2005 Procesamiento Analítico en Línea (OLAP) (1) Consulta y visualización de datos de acuerdo al Modelo Multidimensional y (2) Cálculo de respuestas en pocos segundos .Carlos Hurtado Larrain. Tuluá. Congreso de Ciencia y Tecnología Computacional.

Tuluá.Carlos Hurtado Larrain. 30000 ventas cada día en cada supermercado – 730 x 100 x 30000 = 2190 millones hechos – Tamaño tabla de hechos: 2190 millones x 4 bytes x 6 = 52 GB . Congreso de Ciencia y Tecnología Computacional. Abril 2005 Tamaño de Dimensiones y Hechos: Ejemplo • Dimensión Tiempo: • Dimensión Lugar: – 2 años x 365 días = 730 días – 100 supermercados • Dimensión Producto: • Tabla de hechos: – 30000 productos.

Abril 2005 ¿Cómo procesar consultas analíticas en pocos segundos? • Un disco duro de 10 MB/seg vel. de transferencia tomaría 50 minutos sólo para calcular el total vendido por la cadena. . Congreso de Ciencia y Tecnología Computacional. • Problema: el cálculo de una vista cúbica es proporcional al tamaño de la tabla de hechos que se accede.Carlos Hurtado Larrain. Tuluá.

Tuluá. Congreso de Ciencia y Tecnología Computacional. Abril 2005 Tamaño de un Cubo de Datos .Carlos Hurtado Larrain.

part customer supplier. • Tamaño del cubo es cercano a tamaño de tabla de hechos. Tuluá. el cubo tiene 19 millones. si los datos son densos y la jerarquía se condensa fuertemente hacia arriba. la tabla de hechos tiene 6 millones de tuplas.) • Un cubo de datos puede tener hasta: E1 × E2 × . Abril 2005 Tamaño de un Cubo de Datos (cont. • En general puede ser MUCHO mayor • Ejemplo: benchmark TPC/D. Congreso de Ciencia y Tecnología Computacional. .Carlos Hurtado Larrain. donde Ei es el número de elementos de la dimensión i. × En • hechos. . .

1996): • Leer la tabla de hechos y por cada tupla leida. etc) . Congreso de Ciencia y Tecnología Computacional. Tuluá.Carlos Hurtado Larrain. Abril 2005 Cálculo de un Cubo de Datos Algoritmo Básico (Gray et al. MAX. MIN. actualizar las tuplas asociadas del cubo en cada cuboide Algoritmos Avanzados • Algunos cuboides se pueden calcular de otros cuboides • Podemos computar el cubo por niveles. • Sólo sirven para cubos distributivos (ejemplo: SUM.

computar los cuboides en tiempo de consulta – Problema: computar un cuboide sobre dimensiones simple toma tiempo proporcional al tamaño de la tabla de hechos base • Materializar sólo algunos cuboides y usar navegación de agregados (Harinaraya et al 1996) . – Costo de actualización • Almacenar sólo la tabla de hechos base.Carlos Hurtado Larrain. Tuluá. Abril 2005 Procesamiento de Consultas en OLAP • Calcular y materializar completamente el cubo (no siempre es posible) – Problema explosión del cubo. Congreso de Ciencia y Tecnología Computacional.

Congreso de Ciencia y Tecnología Computacional. All) en TPC-D Benchmark . • Supongamos que queremos computar (All. Proveedor.Carlos Hurtado Larrain. Tuluá. Abril 2005 Navegación en Agregados • Derivar un cuboide requerido por el usuario a partir de otro(s) cuboide del cubo.

) . Congreso de Ciencia y Tecnología Computacional.Carlos Hurtado Larrain. Tuluá. Abril 2005 Navegación en Agregados (cont.

Tuluá.Carlos Hurtado Larrain. Abril 2005 Navegación en Agregados y Grafo de Dependencia . Congreso de Ciencia y Tecnología Computacional.

Abril 2005 Herramientas • Servidor OLAP: – procesamiento de consultas. . etc. planillas de cálculo. administración.Carlos Hurtado Larrain. almacenamiento de cubos • Front-end: – clientes OLAP. Tuluá. visualización • Back-End – extracción. transformación y carga de datos (ETL) • Otras: – monitoreo. Congreso de Ciencia y Tecnología Computacional.

Tuluá. Abril 2005 Herramientas: Servidores OLAP • Microsoft SQL Server Enterprise Edition – OLAP Server • IBM/DB2 – OLAP Server Enterprise Edition • Oracle 9i Enterprise Edition – Express Server .Carlos Hurtado Larrain. Congreso de Ciencia y Tecnología Computacional.

Congreso de Ciencia y Tecnología Computacional. Tuluá.Carlos Hurtado Larrain. Abril 2005 Herramientas: Aplicaciones Medianas • • • • • Cognos Brio Business Objects OLAPX Mondrian (código abierto) .

Tuluá.0 (Informatica) • Data Transformation Services 2000 (Microsoft) . Abril 2005 Herramientas: ETL • DataStage XE 6. Congreso de Ciencia y Tecnología Computacional.Carlos Hurtado Larrain.0 Suite (Ascential Software) • PowerCenter 6.

Abril 2005 Actualidad y Futuro de OLAP • Extensiones del Modelo Multidimensional: – Dimensiones irregulares. • Diseño de Equemas • Sistemas OLAP escalables . Tuluá.Carlos Hurtado Larrain. Congreso de Ciencia y Tecnología Computacional. datos semiestructurados (XML).

Abril 2005 Diseño de Esquemas . Tuluá. Congreso de Ciencia y Tecnología Computacional.Carlos Hurtado Larrain.

Carlos Hurtado Larrain. Congreso de Ciencia y Tecnología Computacional. Abril 2005 Dimensiones Irregulares . Tuluá.

Tuluá. Congreso de Ciencia y Tecnología Computacional.Carlos Hurtado Larrain. Abril 2005 Sistemas OLAP Escalables • Ejemplo: Sistema T3 de Microsoft. • Pruebas con 50 usuarios concurrentes y respuestas entre 0. EMC..02-0.08 seg. • Cubo de datos sobre 7600 millones de hechos (1. . Knosys y Unisis.2 TB).

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->