Data Warehouse
TOPICOS ESPECIALES DE INGENIERIA
28/09/15
Definiciones de Data
Warehouse
Un Data Warehouse es un conjunto integrado de bases de
datos, con orientacin temtica, que estn diseados
para el apoyo a la Toma de Decisiones, y donde cada
unidad de datos es relevante en algn momento del
tiempo
Bill H. Inmon
"una copia de las transacciones de datos especficamente
estructurada para la consulta y el anlisis o"la unin de
todos los Data marts de una entidad
Ralph Kimball
Yo considero al DW como algo que provee dos beneficios
empresariales reales: Integracin y Acceso de datos. DW
elimina una gran cantidad de datos intiles y no
deseados, como tambin el procesamiento desde el
ambiente operacional clsico
Susan Osterfeldt
2
Objetivos
Hacer la informacin de la organizacin accesible
Hacer a la informacin de la organizacin consistente
Controlar el acceso efectivo a los datos
Generar informacin de manera flexible
Servir de ayuda a la toma de decisiones
En resumen
Un Data Warehouse tiene como objetivo almacenar y
proveer a la Organizacin de informacin relevante y a
tiempo
Importancia del Data
Warehouse
Mejorar la Entrega de Informacin:.
Mejorar el Proceso de Toma de Decisiones
Impacto Positivo sobre los Procesos Empresariales
A pensar antes de implementar
un Data Warehouse
La amplitud; el nmero de diferentes temas y puntos de foco
Fuentes que proveern datos brutos.
Los medios por los cuales los datos se transportan de las
aplicaciones fuente y son cargados al Data Warehouse.
Las reglas de negocio que se aplican a la data en bruto para
producir activos de datos de alta calidad.
Las bases de datos receptoras, en la que estos activos de datos
sern almacenados.
Los activos de datos; los elementos, el nivel de detalle de cada
elemento, y cunta historia se ha mantenido, por ejemplo.
La Inteligencia de negocio
Herramientas de nivel usuario para acceder a los activos de datos.
La arquitectura y complejidad en general del entorno.
6
Empresas que usan DATA
WAREHOUSE
Royal bank of canada
Paypal
3M
Coca-Cola Company
Verizon
Ford Motor Company
Herramientas de nivel usuario para acceder a los activos de datos.
La arquitectura y complejidad en general del entorno.
Productos (suites) de DATA
WAREHOUSE y BI
IBM Cognos
http://www-01.ibm.com/software/data/cognos/
Teradata
http://www.teradata.com
Oracle Hyperion
http://www.oracle.com/hyperion/index.html
MicroStrategy
http://www.strategy.com
SAS
http://www.sas.com
9
Caractersticas de un Data
Warehouse
Orientado a un tema
Administra grandes cantidades de informacin
Guarda informacin en diversos medios de
almacenamiento
Comprende mltiples versiones de uno (o varios)
esquema de base de datos
Condensa y agrega informacin
Integra y asocia informacin de muchas fuentes
10
Diferencias entre un sistema de
Data Warehouse y aplicaciones
SISTEMAS TRADICIONALES
DATAWAREHOUSE
tradicionales
Predomina la actualizacin.
Actividad operativa (da a da).
Proceso puntual.
Estabilidad.
Datos desagregados.
Dato actual.
Respuesta de la transaccin
inmediata.
Estructura relacional.
Usuarios de perfiles bajos.
Explotacin de la informacin
relacionada con operatividad de
cada aplicacin
Predomina la consulta
Anlisis y decisin estratgica.
Proceso masivo.
Dinamismo.
Niveles de detalle/agregacin.
Dato histrico.
Respuesta masiva
Estructura Multidimensional
Usuarios de perfiles altos.
Explotacin de informacin
interna y externa relacionada con
el negocio.
11
Metodologas de Diseo de
Data Warehouse
Metodologa de Inmon (Top Bottom)
12
Metodologa de Kimball
(Bottom-up)
13
Metodologa agil para la
implementacin de un dw
14
Arquitectura de un Data
Warehouse
15
Page 15
Flujo de Datos de un DW
Production
systems
CRM
Querying &
Reporting
tools
OLAP
cubes
DataWarehouse
Billing
Activation
systems
Other sources
ETL
Datamarts
Other
DBs
Files
Acquisition
Storage /
Archiving
16
Restitution
Business
Users
Arquitectura de un Data
Warehouse
Base de datos operacional / Nivel de base de datos
externo.
Nivel de acceso a los datos
Nivel de organizacin de datos
Nivel de data warehouse
Nivel de acceso a la informacin
Nivel de gestin de proceso
17
Page 17
Elementos de la Arq. De un DW
Base de datos operacional / Nivel de base de datos
externo (Fuentes de datos)
Los sistemas operacionales procesan datos para apoyar
las necesidades operacionales crticas, tales como
ERPs, SCMs, tambin se procesa informacin de fuentes
de datos externas, tales como de la internet, INEI, BCRP.
Nivel de acceso a los datos
Es responsable de la interfaces entre las herramientas
de acceso a la informacin y las bases de datos
operacionales. En algunos casos, esto es todo lo que un
usuario final necesita para realizar estas interfases se
utiliza el SQL (Standar Query Lenguaje)
18
Page 18
Elementos de la Arq. De un DW
Nivel de organizacin de datos
El componente final de la arquitectura data Warehouse
es la organizacin de los datos, incluye todos los
procesos necesarios como seleccionar, editar, resumir,
combinar y cargar datos en el depsito y acceder a la
informacin desde bases de datos operacionales y/o
externas
Nivel de data warehouse
En un data Warehouse fsico, el almacenaje de data
procesada, incluso en forma redundante
19
Elementos de la Arq. De un DW
Nivel de acceso a la informacin
Este nivel se incluye el hardware y software
involucrados en representar y proveer de informacin al
usuario final normalmente usa da a da. Por ejemplo:
Excel, Lotus 1-2-3, Focus, Access, SAS, etc.
Nivel de gestin de proceso
El nivel de gestin de procesos tiene que ver con la
programacin de diversas tareas que deben realizarse
para construir y mantener actualizado el data warehouse
y la informacin del directorio de datos.
20
PROYECTO DE ELABORACION DE UN DATA
WAREHOUSE
Fase 1: Organizacin
1 FACTORES EN LA PLANIFICACION DE UN DATA WAREHOUSE
Establecer una asociacin de usuarios, gestin y grupos
Construir prototipos rpida y frecuentemente
Implementacin incremental
Reportar activamente y publicar los casos exitosos
21
PROYECTO DE ELABORACION DE UN DATA
WAREHOUSE
2 ESTRATEGIAS PARA EL DESARROLLO DE UN DATA WAREHOUSE
Quin es el auditorio?
Cul es el alcance?
Qu tipo de data warehouse
debera construirse?
1ra.: Establecer un ambiente "data warehouse virtual.
2da.: Construir una copia de los datos operacionales desde un sistema
operacional nico y posibilitar al data warehouse de una serie de
herramientas de acceso a la informacin.
3ra.: Finalmente, la estrategia data warehousing ptima es seleccionar el
nmero de usuarios basados en el valor de la empresa y hacer un anlisis de
sus puntos, preguntas y necesidades de acceso a datos. 22
PROYECTO DE ELABORACION DE UN DATA
WAREHOUSE
3 ESTRATEGIAS PARA EL DISEO DE UN DATA WAREHOUSE
1ra. : Los usuarios de los data warehouses
usualmente no conocen mucho sobre sus
requerimientos y necesidades como los
usuarios operacionales.
2da.: El diseo de un data warehouse, con
frecuencia involucra lo que se piensa en
trminos ms amplios y con conceptos del
negocio ms difciles de definir que en el
diseo de un sistema operacional. Al respecto,
un data warehouse est bastante cerca a
Reingeniera de los Procesos del Negocio
(Business Process Reengineering).
3ra.: Finalmente, la estrategia de diseo ideal
para un data warehousing es generalmente de
afuera hacia adentro (outside-in) a diferencia
de arriba hacia abajo (top-down).
23
PROYECTO DE ELABORACION DE
UN DATA WAREHOUSE
4 ESTRATEGIAS PARA LA GESTION DE UN DATA WAREHOUSE
1ra.: Un data warehouse es una inversin buena slo si los
usuarios finales realmente pueden conseguir informacin vital
ms rpida y ms barata de lo que obtienen con la tecnologa
actual.
2da.: La administracin debe reconocer que el mantenimiento
de la estructura del data warehouse es tan crtico como el
mantenimiento de cualquier otra aplicacin de misin-crtica.
3ra.: La gestin debe comprender tambin que si se embarcan
sobre un programa data warehousing, se crearn nuevas
demandas sobre sus sistemas operacionales, que son:
Demandas para mejorar datos
Demandas para una data consistente
Demandas para diferentes tipos de datos, etc.
24
PROYECTO DE ELABORACION DE
UN DATA WAREHOUSE
Fase 2: Desarrollo
1. PORQUE CONSTRUIR BLOQUES DE DATA WAREHOUSE?
Se
ha reconocido los beneficios del
procesamiento analtico en lnea (On Line
Analytical Processing - OLAP), ms all de
las reas tradicionales de marketing y
finanzas.
El
crecimiento
de
la
computacin
cliente/servidor, ha creado servidores de
hardware y software ms poderosos y
sofisticados que nunca. Los servidores de
hoy compiten con las mainframes de ayer y
ofrecen
arquitecturas
de
memoria
tecnolgicamente superiores, procesadores
de alta velocidad y capacidades de
almacenamiento
masivas.
25
PROYECTO DE ELABORACION DE UN DATA
WAREHOUSE
2 CONSIDERACIONES PREVIAS AL DESARROLLO DE UN DATA WAREHOUSE
Hay muchas maneras para
desarrollar data warehouses
como tantas organizaciones
existen. Sin embargo, hay un
nmero de dimensiones
diferentes que necesitan ser
consideradas:
Alcance de un data
warehouse
Redundancia de datos
Tipo de usuario final
26
PROYECTO DE ELABORACION DE UN DATA
WAREHOUSE
3 ELEMENTOS CLAVES PARA EL DESARROLLO DE UN DATA WAREHOUSE
Si se escoge incorrectamente, el data warehouse se convierte en una
gran empresa con problemas difciles de trabajar en su entorno, costoso
para arreglar y difcil de justificar.
Para conseguir que la implementacin del depsito tenga un inicio
exitoso, se necesita enfocar hacia tres bloques claves de construccin:
Arquitectura total del depsito
Arquitecturas del servidor
Sistemas de Gestin de Base de Dato
Hay muchas maneras para desarrollar data warehouses como tantas
organizaciones existen. Sin embargo, hay un nmero de dimensiones
diferentes que necesitan ser consideradas:
Alcance de un data warehouse
Redundancia de datos
Tipo de usuario final
27
PROYECTO DE ELABORACION DE UN DATA
WAREHOUSE
4 CONFIABILIDAD DE LOS DATOS
La data "sucia" es peligrosa. Las herramientas de
limpieza especializadas y las formas de programar
de los clientes proporcionan redes de seguridad.
No importa cmo est diseado un programa o
cun hbilmente se use. Si se alimenta mala
informacin, se obtendr resultados incorrectos o
falsos.
Desafortunadamente, los datos que se usan
satisfactoriamente en las aplicaciones de lnea
comercial operacionales pueden ser basura en lo
que concierne a la aplicacin data warehousing
28
PROYECTO DE ELABORACION DE UN DATA
WAREHOUSE
5 FACTORES DECISIVOS PARA DECIDIR EL DESARROLLO DE UN DATA WAREHOUSE
La data sucia es un serio peligro para el xito de un
proyecto de data warehouse. Dependiendo del
alcance del problema, simplemente podra no ser
posible
dirigirlo
rpidamente
y
abaratarlo.
Los principales factores son:
El tiempo que toma la programacin interna
- El costo de las herramientas
-
Los gerentes de proyectos de Data Warehouse
necesitan evaluar el problema con realismo, los
recursos internos disponibles para distribuirlos y
seleccionar la solucin que se adapte a la planilla y
presupuesto del proyecto, o modificar la planilla y el
presupuesto
para
solucionar
el
problema.
29
PROYECTO DE ELABORACION DE
UN DATA WAREHOUSE
FASE 3: IMPLEMENTACION
1 ELEMENTOS A CONSIDERAR EN LA IMPLEMENTACION
Proyecto Total o Proyecto en Fases
Es ms viable el desarrollo de un proyecto en fases que produzcan resultados a
corto plazo que el desarrollo de un proyecto que entregue resultados al trmino de
varios aos. Por ello, el proyecto debe estar centrado en un rea o un proceso.
Modelo lgico de datos
El modelo lgico de datos debe tener un alcance ms alto y cubrir todas las reas de
inters, as como los procesos ms estratgicos de cada una de ellas.
Proyecto Especializado o Proyecto Base
Decidir sobre qu tipo de proyecto, es algo complicado. Un proyecto especializado
soporta directamente un proceso especfico, por ejemplo: retencin de clientes.
Un proyecto base entrega capacidad genrica de anlisis a todos los usuarios que
tengan acceso al data warehouse, pero no tiene, entre sus funcionalidades, la
solucin de un problema especfico o el soporte especializado de un proceso
especfico.
PROYECTO DE ELABORACION DE UN DATA
WAREHOUSE
2 ESTRATEGIAS PARA EL PROCESO DE IMPLEMENTACION
Identificar el problema en el cual el uso
estratgico de la informacin detallada,
permita conseguir una solucin para
generar una ventaja competitiva o un
ahorro
de
costos.
Definir el modelo lgico de datos a
implementar para resolver el problema
planteado.
31
PROYECTO DE ELABORACION DE UN DATA
WAREHOUSE
3 ESTRATEGIAS EN LA IMPLEMENTACION
Definir el mejor diseo fsico para el modelo de datos. El diseo fsico debe estar
orientado a generar buen rendimiento en el procesamiento de consultas, a diferencia del
modelo lgico que est orientado al usuario y a la facilidad de consulta.
Definir los procesos de extraccin, filtro, transformacin de informacin y carga de datos
que se deben implementar para poblar ese modelo de datos.
Definir los procesos de administracin de la informacin que permanece en el data
warehouse
Definir las formas de consultas a la informacin del data warehouse que se le
proporcionar al usuario. Para sto, debe considerarse la necesidad de resolver un
problema y la potencia de consulta.
Completar el modelo de consulta base, relativo al rea seleccionada.
Implementar los procesos estratgicos del rea de trabajo, es decir, implementar
herramientas especializadas de scoring, herramientas especializadas para induccin de
conocimiento (Data Mining), etc.
Completar las reas de inters, en forma similar a lo descrito anteriormente.
32
PROYECTO DE ELABORACION DE
UN DATA WAREHOUSE
FASE 4: EVALUACION
1 EVALUACION DE RENDIMIENTO DE LA INVERSION
Qu clases de costos excedieron el
presupuesto en ms del 10% en cada uno de
los 12 meses pasados?
Se aumentaron los presupuestos en ms de
5% para cualquier rea dentro de los ltimos
18 meses?
Cmo especificar las clases de gasto entre
diferentes departamentos? Entre divisiones?
A travs de las regiones geogrficas?
Cmo tener mrgenes de operacin sobre
los dos ltimos aos en cada rea de
negocio? Donde han disminuido los
mrgenes, se han incrementado los costos?
33
PROYECTO DE ELABORACION DE UN DATA
WAREHOUSE
CASO PRACTICO
En un estudio encargado por 20 vendedores y consultores, se encontr un
Retorno Promedio Total de la inversin (Return On Investment-ROI) de
401%.Tambin, se excluyeron los proyectos fracasados, as como los
ejecutados excepcionalmente, tanto buenos como malos.
CAMBIOS DE VALOR
ROI promedio total
401%
ROI promedio del proyecto ms grande
322%
ROI promedio del modelo complementario de datos
533%
ROI mediano
160%
Perodo de reembolso promedio
Costo promedio
2.3 Aos
2.2 Millones
34
PROYECTO DE ELABORACION DE UN DATA
WAREHOUSE
1.1 COSTOS Y BENEFICIOS
Costos preliminares
Planificacin
Diseo
Modelamiento /Ingeniera de
Informacin
Costos iniciales
Plataforma de hardware
Software de base de datos
Costos en procesamiento
Mantenimiento de datos
Desarrollo de aplicaciones
Capacitacin y soporte
Beneficios Tcticos
Impresin y emisin de reporte
reducido
Demanda reducida para consultas de
clientes
-
Entrega ms rpida de informacin a los
usuarios
Beneficios Estratgicos (Potencialidad)
Aplicaciones y herramientas de
acceso para los usuarios finales
Decisiones con mayor informacin
Toma de decisiones ms rpida
Capacidad de soporte a la
informacin organizacional
35
PROYECTO DE ELABORACION DE UN DATA
WAREHOUSE
2 BENEFICIOS A OBTENER
Para la Empresa
El data warehouse hace lo posible por aprovechar el valor
potencial enorme de los recursos de informacin de la
empresa y volver ese valor potencial en valor verdadero.
Para los Usuarios
El data warehouse extiende el alcance de la informacin
para que puedan accesar directamente en lnea, lo que a la
vez contribuye en su capacidad para operar con mayor
efectividad las tareas rutinarias o no.
Para la Organizacin en Tecnologas de Informacin
El data warehouse enriquece las capacidades del usuario
autosuficiente y hace lo factible para ofrecer nuevos
servicios a los usuarios, sin interferir con las aplicaciones
cotidianas de produccin
36
Importante: El Modelo de Datos
Es el modelo por el cual se disea el esquema de funcionamiento de la
Base de Datos que provee al Data Warehouse.
Existen varios enfoques en este sentido:
Fbrica de informacin corporativa (CIF): incluyen ODS, data warehouse y data
marts, junto con otras varias interfaces de aplicaciones y el ambiente operacional,
fue desarrollada por Bill Inmon, Claudia Imhoff, y Ryan Sousa
Esquema en estrella: Este mtodo replica las estructuras multidimensionales de
hechos y dimensiones, pero usa tablas de RDBMS, especficamente tablas de
hechos y tablas de dimensiones. Se dejan de lado las reglas de normalizacin de
base de datos y se ponen los datos donde tienen ms sentido
Data vault (Arquitectura de modelado fundacional comn -CFIMA):
Esta es una arquitectura de integracin de datos que contiene una base de datos
orientada al detalle que contiene un conjunto de tablas normalizadas nicamente
enlazadas que soportan una o ms reas funcionales de las tablas de negocio con
tablas satlites para rastrear cambios histricos. Este enfoque hbrido
rene lo
37
mejor del cruce entre la tercera forma normal (3NF)
DATA WAREHOUSE VS BD
OPERACIONAL
Uso de Base de Datos
Operacionales
Uso de
Data Warehouse
Muchos usuarios concurrentes
Pocos usuarios concurrentes
Consultas predefinidas y
actualizables
Consultas complejas,
frecuentemente
no anticipadas.
Cantidades pequeas de datos
resumidas.
Cantidades grandes de datos
resumidas.
Requerimientos de respuesta
inmediata
Requerimientos de respuesta no
crticos
38
Page 38
Modelo de Estrella
39
Extraccin, Transformacin y Carga
Extraccin
Multiples Fuentes
Orientadas a trabajo Batch : cagas de estos sistemas son ms fuertes cuando los sistemas de
produccin tienen poca carga
Conectvidad a diferentes tecnologas, diferentes manejadores de BDs
Transformacin
Manipulacin de data compleja
Reunin de diferentes fuentes
Implementacin de reglas de negocio
Limpiado, ordenado, eliminacin de duplicidades
Optimizado para el desempeo y para grandes volmenes
Carga
Cargar la data en tablas de hechos y dimensiones
Produce un historial en archivos o en la BD para trazabilidad
Otros
Controla los flujos de ejecucin: maneja las dependencias entre tareas, control de
ejecucin, gestin de errores, registros histricos.
40
Ejemplos de transformacin
Transformacin de Bsqueda difusa
Busca valores en las tablas usando criterios difusos
Ejemplo: Para un campo de texto la data puede contener muchas variantes de la misma palabra
(friend, a friend, freind, etc). La lgica difusa puede ayudar a reunir las variantes.
Transformacin de dimensiones de cambio lento
Ayuda a manejar la actualizacin de una dimensin de cambio lento
Ejemplo : la informacin sobre los consumidores cambia constantemente, pero queremos una historia de
estos
Cambio de direccin no queremos el valor anteiror (reemplazo)
Un cambio en el valor VAT duplicamos la entrada del consumidor agregando los datos adicionales (para propsitos
financieros)
Clave sustituta
41
Control de la Ejecucin
Los datos son muy sensibles, la calidad de los reportes
depende la calidad de estos
Cargar un Data Warehouse puede implicar reglas
complejas de extraccin, transformacin y carga
Los usuarios del negocio no confiarn en un DW si no
confan en su carga
42
Ejemplos de paquetes en ETL
Flujo de control y flujo de datos
43
Middleware
Son Instancias intermedias a la carga y al acceso que sirven
para verificar la calidad y fiabilidad de la data
Estacin de transformacin interina: un rea en la cual grupos
de datos extrados de alguna de las fuentes pasan por un
proceso de transformacin antes de moverse hacia la base de
datos del almacn.
Estacin de aseguramiento de la calidad: Un rea en la cual
grupos de datos pasan por un conjunto de intensas revisiones
de aseguramiento de la calidad antes de pasar hacia el
almacn de datos.
44
Middleware (2)
45
Problema: al crecer el DW. El rendimiento de las consultas decae y el modelo
centralizado deja de ser optimo.
Solucin: crear almacenes de datos especializados por rea, que
reciben los datos desde el almacn centralizado, estos almacenes se
conocen como Data Marts.
46
Toma de decisiones
DATAMART
Un Datamart es una base de
datos departamental,
especializada en el
almacenamiento de los datos
de un rea de negocio
especfica.
Se caracteriza por disponer la
estructura ptima de datos para
analizar la informacin al
detalle desde todas las
perspectivas que afecten a los
procesos de dicho
departamento.
47
Data Mart
Puede
ser alimentado desde los datos de un
DWH, o integrar por si mismo un compendio de
distintas fuentes de informacin.
48
Data Warehouses Vs. Data Marts
Data
Warehouse
Data Mart
Propiedad
Data Warehouse
Data Mart
Alcance
Empresarial
Departamental
Tema
Fuente de datos
Mltiples
Muchas
Un solo tema
Pocos
<
Tamao (tpico)
100 GB to > 1 TB
100 GB
Tiempo de implementacin
Meses a aos
Meses
49
Soporte anlisis multidimensional y
procesamiento analtico en lnea(OLAP)
Su objetivo es agilizar la consulta de grandes cantidades de
datos. Caracteriza la Arquitectura necesaria para la
implementacin de un sistema de ayuda en la toma de
decisiones. La consultas son pocas pero son muy
consumidoras de tiempo (pueden correr horas), las
actualizaciones son menos frecuentes y/o la respuesta a la
consulta no depende del hecho de tener actualizada la base
de datos.
50
CARACTERISTICAS
Soporte anlisis multidimensional y
procesamiento analtico en lnea(OLAP)
Los datos son clasificados en diferentes
dimensiones y pueden ser vistas unas con otras en
diferentes combinaciones para obtener diferentes
anlisis de los datos que contienen.
Los Usuarios pueden formular consultas complejas,
arreglar datos en un reporte, cambiar de datos
resumidos a datos detallados.
51
Clasificacin segn el tipo de motor en el
que estn almacenados los datos:
ROLAP (Relational OLAP)
MOLAP (multidimensional
OLAP)
Almacena los datos en un motor
relacional
Almacena los datos en una base de
datos multidimensional
Muchas dimensiones
Diez o menos dimensiones
Soportan analisis OLAP contra
grandes volumenens de datos
Se comportan razonablemente en
volumenes de datos mas reducidos
(menos de 5Gb)
Herramienta flexible y general
Solucin particular con volmenes
de informacin y numero de
dimensiones mas modestos
52