El documento habla sobre los conceptos de inteligencia de negocios, data warehouse y data marts. Explica que un data warehouse es una estructura de datos diseñada para consultas analíticas que integra datos históricos de varios sistemas operativos. Los data marts son repositorios de datos enfocados en una temática específica. También compara las metodologías de Kimball y Inmon para el desarrollo de data warehouses, señalando que Kimball se enfoca en modelos estrella y copo de nieve basados en hechos y dimensiones.
2. Data Warehouse
En la entrega anterior hablamos un poco de inteligencia de negocios y mencionábamos que
inteligencia de negocio es una estrategia empresarial, que tiene como objetivo cambiar la forma
de hacer negocios, implementando estrategias desde áreas operativas a alta gerencia.
El potencial de Inteligencia de negocios se basa en la utilización de herramientas que faciliten el
control y monitoreo continuo de las estrategias implementadas, mediante la evaluación de
indicadores que provee una visión acertada del cumplimiento de objetivos.
Del planteamiento anterior, surgen los sistemas especializados de inteligencia de negocios, cuyo
núcleo y esfuerzo está enfocado a la creación del Data Warehouse.
¿Qué es el Data Warehouse?
Basado en la definición de “The Data Wareousing Institute (TDWI)”, “Un Data Warehouse es una
estructura de datos optimizada para consultas analíticas, Que recopila e integra datos históricos
de múltiples sistemas operaciones para alimentar uno o más Data Mart. Con el objetivo de
proporcionar un acceso único a los usuarios finales, apoyando la exploración y visualización de
los datos corporativos”
¿Qué es Data Mart?
Es un repositorio de datos que tiene como objetivo proveer información que apoyen a la
obtención de respuestas de una temática específica. Las principales características son:
Enfocado a satisfacer necesidades de áreas de negocio (Departamentos, Divisiones,
Filiales, etc).
Permiten una implementación rápida, al proveer productos funcionales en corto tiempo.
Generalmente se diseñan para el análisis MulDimensional.
Kimball versus Inmon
Aunque en el Mercado existen muchas metodologías de desarrollo de Data Warehouse,
generalmente se utilizan dos propuestas que han probado tener gran éxito en el desarrollo de
soluciones BI. A estas propuestas las conoceremos como “Bus Data Warehouse” de Kimball y
“Data Warehouse Empresarial o Repositorio central de datos” de Inmon.
Data Warehouse de Inmon (Top-Dow)
“Un Data Warehouse es un conjunto integrado de bases de datos, con orientación temática, que
están diseñados para el apoyo a la toma de decisiones, y donde cada unidad de datos es relevante
en algún momento del tiempo”, Inmon nos indica que los Data Mart surgen a partir del EDW
(Data Warehouse Empresarial)
2|Page
3. Origenes de Datos
Sql
Server
EDW (3NF)
Staging
Data Mart
Visualización
ERP
Eni y e
t t Nam
PK
at r ut na e
ti e m
b
at r ut na e
ti e m
b
Eni y e
t t Nam
PK
Ventas
at r ut na e
ti e m
b
at r ut na e
ti e m
b
at r ut na e
ti e m
b
Mercadeo
Workstation
at r ut na e
ti e m
b
CRM
Oracle
ETL
Data
Laptop
ETL
Eni y e
t t Nam
Eni y e
t t Nam
PK
PK
at r ut na e
ti e m
b
at r ut na e
ti e m
b
at r ut na e
ti e m
b
at r ut na e
ti e m
b
at r ut na e
ti e m
b
Finanzas
at r ut na e
ti e m
b
DB2
SCM
Eni y e
t t Nam
PK
at r ut na e
ti e m
b
Eni y e
t t Nam
PK
at r ut na e
ti e m
b
at r ut na e
ti e m
b
at r ut na e
ti e m
b
XML
at r ut na e
ti e m
b
at r ut na e
ti e m
b
Workstations
Otros
Arquitectura Data Warehouse (Inmon)
Imagen 01
Inmon define las siguientes características que debe cumplir un Data Warehouse:
Orientados a Temas
(Subject-oriented)
Variante en el Tiempo
(Time-variant)
No Volatil
(Non-volatile)
Integrado
(Integrated)
Los datos son almacenados y organizados para que cada elemento
registrado este relacionado a un mismo evento del mundo real.
Todos los cambios producidos en los datos deben ser registrados,
para poder reflejar todas las variaciones en el tiempo.
Una vez los datos son registrados estos no deben ser modificados
ni eliminado.
Debe estar diseñado para almacenar todo los datos empresariales.
Data Warehouse de Kimball (Bottom-Up)
“Una copia de las transacciones de datos específicamente estructurada para consultas y análisis”,
Kimball define que el Data Warehouse empresarial surge de la unión de todos los Data Mart que
pueden relacionarse por medio de las “Conformed Dimension”.
3|Page
4. Origenes de Datos
Sql
Server
Bus Data Warehouse
(Star Model)
Staging
ERP
DimTime
Visualización
DimCustomer
Workstation
CRM
Oracle
ETL
DB2
Data
Laptop
Fact
ETL
SCM
DimLocation
DimEmployee
Workstations
Otros
XML
Arquitectura Data Warehouse (Kimball)
Imagen 02
Conceptos del modelo dimensional
Granularidad: Es el nivel de detalle que posee una tabla de hechos o dimensiones, un ejemplo
seria la relación jerárquica que pueden tener los atributos de una misma dimensión, un ejemplo
clásico es la dimensión de “Ubicación Geográfica”, donde existen diferentes forma de clasificar
la distribución geográfica, imaginemos que la distribución geográfica de clasifica en
PaísProvinciaCantónDistrito, el nivel más bajo de esta relación jerárquica es Distrito
siendo “Distrito” el máximo detalle que puede proveer.
Medidas: Son valores que aplica a un contexto MulDimensional y describen un evento del
negocio. La medida es un dato numérico que representa una agregación de un conjunto de datos.
Un ejemplo seria el Monto Total de Ventas. Las medidas pueden ser clasificadas como:
Aditivas: Son las más comunes dentro de las tablas de hecho y puede ser analizadas por
cualquier dimensión que está relacionada con la tabla de hecho.
Semi-Aditivas: Son aquellas que puede aplicar a algunas de las dimensiones relacionadas
con la tabla de hecho.
No Aditivas: Son aquellas que están relacionadas a una única dimensión.
Dimensiones: Son tablas que agrupan distintos atributos relacionados sobre una entidad de
negocios, algunos de los ejemplos más comunes son: Clientes, Proveedores, Tiempo, etc.
También podemos definir las dimensiones como los atributos que nos ayuden a generar
preguntas y navegar la información dentro del espacio Multidimensional. Las principales
características de las dimensiones son:
Poseen 3 tipos de atributos: Llave primaria, Niveles de jerarquía y atributos normales.
4|Page
5.
Cada nivel de jerarquía equivale a un atributo dentro de la dimensión.
Las llaves primarias pueden ser llaves de negocios o llaves artificiales que son conocidas
como Surrogated Keys
Junk Dimension: Son dimensiones de baja Cardinalidad que se utilizan para agrupar valores que
no pueden estar en ninguna dimensión o tabla de hecho. Generalmente se utiliza para almacenan
banderas o indicadores, un ejemplo podría ser un indicador sobre las acciones de un cliente
“Cliente Hace un Pedido”, etc.
Degenerate Dimension: Es aquella que agrupa valores que son muy granulares, por su naturaleza
están asociados a un único registro y son requeridos por el negocio. Generalmente son atributos
dentro de una tabla de hechos y contienen datos discretos, pero que en algún momento pueden
ser utilizados como filtros de análisis, un ejemplo seria el código de la facture, un numero de
orden, etc.
Conformed Dimension: Son dimensiones diseñadas para ser relacionadas con múltiples tablas
de hechos que comprarte el mismo nivel granularidad.
Tablas de Hechos: Son las que almacena las Medidas del negocio, las cuales dan sentido al análisis
dimensional. Las principales características de las tablas de hechos son:
Almacenan más del 97% de la información del Data Warehouse.
El crecimiento es constante y dependerá de las estrategias de carga de datos.
La información no es actualizable, una vez insertada esta debería ser de solo lectura.
No deben permitirse valores nulos.
Están compuestas por Llaves y Medidas
Modelo Estrella: Es un modelo de datos que contiene una tabla de hechos la cual está
relacionada con distintas dimensiones que describen los hechos.
DimTime
DimCustomer
Fact
DimLocation
DimEmployee
Ejemplo de Modelo Estrella
Imagen 03
5|Page
6. Modelo Copo de nieve: Es una estructura más compleja que un modelo Estrella, ya que las tablas
de dimensionales presentan un diseño más normalizado, de esta forma la tabla de hecho deja de
ser la única tabla del esquema que se relaciona con otras tablas.
DimTime
DimCustomer
DimGender
DimEmployee
DimDepartment
Fact
DimLocation
DimStore
Ejemplo de Modelo Copo de Nieve
Imagen 04
Similitudes y diferencias
Kimball
Se alimenta de diferentes fuentes.
Requiere Staging
Contienen Data Mart
Surgen de los requerimientos del negocio
Contienen Dimensiones o Tablas de tiempo
Su visión surgen como un repositorio empresarial
Se basa en el modelado relacional
Se basa en la desnormalizacion
El diseño implica alta complejidad, para crear un esquema
optimizado de consulta
Se orienta a temáticas o procesos específicos de negocio
Se basa en el modelado de hechos y dimensiones
6|Page
Inmon
Si
Si
Si
Si
Si
No
No
Si
No
Si
Si
Si
Si
Si
Si
Si
No
Si
Si
Si
No
No
7. Pro y contra
Kimball
Construcción e
implementación
Mantenimiento
Costos
Enfoque de usuario
Equipo de Trabajo
Integración de datos
Inmon
Productos funcionales
en menores tiempos.
Fácil
Implica costo bajos
IT
Equipo heterogéneo
Enfocado a datos
estructurados
Altos tiempos de desarrollo sin
ver resultados.
Implica grandes dificultades
Implica grandes costos
End user
Esquipo Especializado
Enfocado a datos estructurados y
no estructurado, con la propuesta
del Data Warehouse 2.0
Conclusión
Aunque muchos especialista creen que la era del Data Warehouse puede estar llegando a su fin
por la evolución tecnológica que están eliminando las limitantes por la que nació el DW, hoy por
hoy los DW, son el corazón de las soluciones BI, por esa razón una de las principales claves de
éxito es poder seleccionar correctamente la metodología para el desarrollo del proyecto.
Desde mi punto de vista la metodología más recomendada es la propuesta por Kimball, ya que
permite proveer productos funcionales en cortos tiempos, de esta forma los Stakeholder pueden
tener una visión general del avance del proyecto.
Nota: Puedes consultar más recursos especializados en base de datos y BI en los siguientes link:
7|Page
http://www.elrincondesqlserver.com/
https://www.facebook.com/groups/elrincondesqlserver/
http://www.youtube.com/user/elrincondesqlserver