jueves, 18 de abril de 2019

Capítulo 4 - Diseño de un Data Mart

1. Diferencias de diseño entre los sistemas tradicionales y los sistemas de Business Intelligence

El diseño de las bases de datos OLAP presenta diferencias fundamentales respecto de los principios de diseño de las bases de datos OLTP. En la figura superior se muestran las principales características de ambos tipos de almacenamiento de datos. Sin embargo, existen otros aspectos de fondo que es relevante mencionarlo está en la capacidad para tomar decisiones de manera rápida para el negocio se ha convertido en una de las claves para que una empresa llegue al éxito. En este contexto, los sistemas de información tradicionales (como la mayoría de los programas de gestión, las aplicaciones a medida, e incluso los ERP más sofisticados), suelen presentar una estructura muy inflexible para este fin.

Aunque su diseño se adapta con mayor o menor medida para manejar los datos de la empresa, no permite obtener la información de los mismos, y mucho menos extrapolar el conocimiento almacenado en el día a día de las bases de datos. Las principales características que limitan estos sistemas son:
  • Rigidez a la hora de extraer datos, de manera que el usuario tiene que ceñirse a los reportes predefinidos que se configuraron en el momento de su implementación, y que no siempre responden a dudas reales que evolucionan en el tiempo.
  • Conocimientos técnicos del personal. Para nuevos informes debe acudirse al área de sistemas, al momento de solicitar una consulta adecuada para interrogar la base de datos.
  • Elevados tiempos de respuesta debido a las consultas complejas que implicar la unión varias tablas operacionales, lo que se traduce en una larga espera del usuario y lentitud en los demás sistemas.
  • Deterioro en el rendimiento del sistema operativo y/o servidor afectando y paralizando a los demás usuarios conectados.
  • Falta de cohesión de datos. Muchas organizaciones disponen de múltiples sistemas de información, incorporados en momentos distintos, para resolver problemáticas diferentes. Sus bases de datos no suelen estar integradas, lo que implica la existencia de islas de información.
  • Datos erróneos, obsoletos o incompletos. El tema de la calidad de los datos siempre es considerado como algo importante, pero esta labor nunca se lleva al extremo de garantizar la fiabilidad de la información aportada.
  • Problemas para adecuar la información. No se trata de que todo el mundo tenga acceso a toda la información, sino de que tenga acceso a la información que necesita para que su trabajo sea lo más eficiente posible.
  • Ausencia de información histórica. Los datos almacenados en los sistemas operacionales son del día al día, pero no permiten comparar la situación actual con otros años.


2. ¿Qué deseo medir?: Concepto de Medida

Measures (medidas):
  • Son valores cuantitativos que almacenan las métricas del negocio y responde a la pregunta ¿Cuánto?
  • Están representados por columnas numéricas en la fact table.
  • En algunos casos provienen directamente de los sistemas transaccionales.
  • Son los valores de negocios por los que queremos analizar nuestra organización :

Ejemplo: Proceso de Negocio y Medidas
  • Ventas
    • Cantidad de Pedidos
    • Comisiones
    • Descuentos
    • Montos Vendidos
    • Cantidades Vendidas
    • Devoluciones
    • Valores Presupuestados
  • Marketing
    • Unidades Vendidas
    • Valores Actuales
    • Valores Presupuestados
  • Logística
    • Unidades Aceptadas
    • Unidades Devueltas
    • Peso
    • Costo Inventario
    • Montos Comprados
  • Producción
    • Tiempo de Producción
    • Capacidad Usada
    • Unidades Embarcadas
    • Unidades Planificadas
    • Unidades Producidas
    • Costos Producción
    • Horas Hombre
    • Peso Ingresado
    • Peso Procesado

2.1 Clasificación de las Medidas

  • Naturales: Son aquellas que se obtienen por agregación de los datos originales.
    • Suma : Suma los valores de las columnas
    • Cuenta : Conteo de los valores
    • Mínima : Valor mínimo
    • Máxima : Valor máximo
    • Cuenta de Distintos : Valores Diferentes
  • Calculadas: Si se derivan de una medida natural
    • Cálculos matemáticos
    • Expresiones condicionales
    • Alertas

3. ¿Qué criterios uso para agrupar la información?: concepto de Dimensión

Dimensión:
  • Es la parte cualitativa (características) de los reportes
  • Las preguntas que nos permiten identificarlas son:
  • Es una entidad de negocios respecto de la cual, se deben calcular las métricas.

Ejemplo: Proceso de Negocio y Dimensiones
  • Ventas
    • Producto
    • Organización
    • Tiempo
    • Cliente
    • Formas de Pago
  • Marketing
    • Producto
    • Organización
    • Tiempo
    • Segmento de Clientes
    • Medios de Entrega
    • Territorios
  • Logística
    • Estado
    • Proveedores de Inventario
    • Materiales
    • Productos
    • Ubicación
    • Organización
    • Tiempo
  • Producción
    • Organización
    • Producto
    • Procesos
    • Estaciones de Trabajo
  • Es preciso que toda dimensión signifique lo mismo para cada tabla de hechos con la que se relacione. Fechas, Productos, Geografía, Cliente …
  • Generalmente provienen de las tablas maestras de los sistemas transaccionales.
  • En cantidad de registros las Dimensiones son las tablas más pequeñas.
  • Las dimensiones están compuestas de dos partes:
    • Atributos
    • Jerarquías
  • Las dimensiones conformadas hacen posible que:
    • Una única dimensión se puede utilizar frente a varias tablas de hechos.
    • El contenido de los datos sea coherente
    • Haya una interpretación uniforme de los atributos

4. Atributos, jerarquías y niveles

4.1 Atributos

  • Son las características del Negocio.
  • Un conjunto de atributos forman una Dimensión.
  • Constituyen los criterios de análisis que se utilizarán para analizar los indicadores dentro de un cubo multidimensional.
  • Se basan en una gran mayoría, en los campos de las tablas de dimensiones.

4.2 Jerarquías y niveles

  • Es la distribución de los atributos en niveles.
  • Pueden existir varias en un mismo cubo.
  • Están compuestas por dos o más niveles.
  • Se tiene una relación “1-n” o “padre-hijo” entre atributos consecutivos de un nivel superior y uno inferior.
  • Un nivel representa un nivel particular de agregación dentro de una dimensión; cada nivel sobre el nivel base representa la sumarización total de los datos desde el nivel inferior.
  • Es una forma de organizar los atributos de una dimensión y permite realizar la técnica denominada Drill Down / Drill Up.
  • La ventaja reside en poder analizar los datos desde su nivel más general al más detallado y viceversa, al desplazarse por los diferentes niveles.

5. Funciones de agregación de las medidas


Las medidas tienen propiedades que permiten definir su funcionamiento, así como controlar cómo aparecen ante los usuarios.

El modelo multidimensional OLAP proporciona funciones para agregar medidas en las dimensiones que se incluyen en los grupos de medidas (Tablas de hechos). De manera predeterminada, las medidas se suman al relacionarse con cada dimensión. Sin embargo, se permite modificar este comportamiento.

El grado de agregación de una función de agregación determina cómo se agrega la medida en todas las dimensiones del cubo. Las funciones de agregación pertenecen a uno de tres niveles de grado de agregación:

5.1 Aditivas

Una medida aditiva, también denominada medida completamente aditiva, se puede agregar en todas las dimensiones que están incluidas en el grupo de medidas que contienen la medida, sin restricciones

5.2 Semiaditivas

Una medida semiaditiva se puede agregar en algunas, pero no todas, las dimensiones que están incluidas en el grupo de medidas que contienen la medida.

Por ejemplo: una medida que representa la cantidad disponible para inventario puede agregarse en una dimensión de geografía para generar una cantidad total disponible para todos los almacenes, pero la medida no se puede agregar en una dimensión de tiempo porque representa una instantánea periódica de las cantidades disponibles. Agregar dicha medida en una dimensión de tiempo generaría resultados incorrectos.

5.3 No aditivas

Una medida no aditiva no se puede agregar en ninguna dimensión en el grupo de medida que contienen la medida. En su lugar, la medida debe calcularse de forma individual para cada celda del cubo que representa la medida. Por ejemplo, una medida calculada que devuelve un porcentaje, por ejemplo, un margen de beneficio, no se puede agregar a partir de los valores de porcentaje de los miembros secundarios en cualquier dimensión.

En la siguiente tabla se enumeran las funciones de agregación y se describen el grado de agregación y el resultado esperado de la función.


6. Documentación de los elementos de diseño

Para el modelamiento dimensional se tienen documentos que nos permiten tener un mejor y más claro concepto del modelo final.
Así tenemos:
  • Herramientas de Diseño
    • Entrevistas
    • Matriz Bus
    • Start Net
    • Jerarquías
    • Modelo Dimensional
  • Entregables formales de Diseño de un Data Mart
    • Diseño de las estructuras multidimensionales
    • Mapeo de datos


6.1 Herramientas de Diseño

a) Entrevistas
  • Definir y utilizar templates con anticipación para el levantamiento de requerimientos. Posteriormente, consolidar y analizar la información obtenida e incrementar las versiones de ser necesario.
  • Efectuar el levantamiento de requerimientos a detalle con los usuarios de negocio y TI.
  • Obtener las definiciones del negocio y asegurar que sea entendido por toda la organización. Definir cada término desde la perfectiva de negocio y solicitar ejemplos de cada definición.
  • Identificar a los usuarios de negocio correctos. Se requiere información de todos los niveles de usuarios y grupos dentro de la organización.
  • Identificar a los usuarios técnicos correctos para poder validar las información proporcionado por los usuarios de negocio sobre las BD, diseños físicos, herramientas de ETL, OLAP, entre otros.
  • Identificar el valor para el negocio de cada dato y el impacto de no tenerlo.
  • Dar al usuario la oportunidad de revisar en “blanco y negro” los resultados del levantamiento de requerimientos – cambios, aclaraciones, omisiones, aprobación
  • Ejemplo: Template de levantamiento de información consta de tres secciones:
    • Problemas Detectados: El enfoque garantizará detectar los posibles y actuales problemas presentados con la información en la organización.
    • Necesidades: El enfoque garantizará identificar las necesidades actuales y esperadas de la información en la organización.
    • Análisis: El enfoque garantizará mapear los diferentes reportes con los datos fuentes de la organización. En el cual se identificarán las métricas para el análisis.

b) Matriz Bus
Es un diagrama de matriz que permite identificar qué dimensiones intervienen en qué proceso de negocio o hecho.

Esta matriz tiene en sus filas los procesos de negocio (métricas) y define al menos una tabla de hechos y en sus columnas sus dimensiones asociadas.

Las coincidencias entre los procesos de negocio y las dimensiones determinan la cantidad de tablas de hechos presentes en el modelo dimensional.

c) Start Net
Es un diagrama que nos muestra a través de líneas, círculos y rectángulos la representación de un modelo dimensional.

El rectángulo representa los hechos (medidas), los círculos mayores son las dimensiones, los círculos pequeños corresponden a los atributos de las dimensiones y las líneas permite la relación entre estos elementos.

d) Jerarquías
Muestran las diferentes formas de analizar una perspectiva del negocio. Definiendo criterios de agrupamiento de los atributos de una dimensión.
Ejemplo :

e) Modelo Dimensional

Es una adaptación del modelo relacional.
Es un modelo desnormalizado basado en dos entidades: Tablas Dimensionales (tablas periféricas) y Tablas de Hecho (tabla central).
La información sobre un hecho (actividad) se representa mediante indicadores (medidas o atributos del hecho)
La información de cada dimensión se representa por un conjunto de atributos (atributos de dimensión)

6.2 Entregables de Diseño de un Data Mart

a) Diseño de las estructuras multidimensionales
  • Entregable que detalla el diseño de la arquitectura de la solución y el diseño lógico del modelo dimensional.
  • Se desarrollará el diseño lógico de las dimensiones representado por cada una sus jerarquías, describiendo los atributos que forman los niveles de dichas jerarquías y mostrar los respectivos posibles valores.

b) Proceso de Transformación
  • Documento que detalla el diseño de los procesos de extracción, transformación y carga de datos al Data mart.
  • Se detallará por cada Tabla de dimensión el mapeo de datos de los campos de la (s) fuentes de datos origen y su correspondiente atributo de la tabla dimensión destino,
  • Se detallará por cada Tabla de hechos el mapeo de datos de los campos de la (s) fuentes de datos origen y su correspondiente atributo de la tabla de hechos destino.

7. Modelo Físico del Data Mart

El modelo físico puede ser de dos tipos Star Schema (Modelo en Estrella) o tipo Snowflake (Copo de Nieve).

El modelo Físico está compuesto de dos tipos de tablas: tablas dimensionales y tablas de hechos.

7.1 Tablas Dimensionales

Para entender el negocio, es fundamental conocer los valores de las ventas, los costos y los gastos. Sin embargo, estos números son de escasa utilidad si no se definen los criterios que se usarán para cruzar la información.

Por ejemplo, la medida Ventas, por sí sola, no brinda suficiente información. En un reporte, ¿estamos visualizando el total de ventas desde que se fundó la empresa? ¿O las ventas para un determinado período de tiempo? ¿Es necesario ver las ventas desglosadas por cliente y producto? ¿Se desea visualizar las ventas por distribuidor?

En este caso, tiempo, cliente, producto y distribuidor constituyen ejemplos de lo que, en la terminología de Business Intelligence, se denomina dimensiones. Las dimensiones contienen las descripciones de las entidades principales del negocio, respecto de las cuales se calcularán las medidas.

Las dimensiones tienen múltiples criterios de agrupación. Por ejemplo, una dimensión de ubicación geográfica puede agrupar su información en continentes, regiones, países y ciudades. Estos criterios de agrupación se denominan niveles (levels). La principal característica de los niveles es que cada nivel se encuentra contenido en su nivel superior: una ciudad está contenida en un país, dicho país en una región, y la región en un continente.

Las dimensiones se almacenan en tablas de dimensión. 

Las características de una tabla de dimensión son:
  • Tienen una relación uno a muchos con la tabla de hechos (fact table).
  • Incluyen una clave primaria, de preferencia numérica y auto incrementado.

7.2 Tablas de Hechos

Un Data Mart está orientado a brindar a los usuarios información numérica, que contribuya a entender el comportamiento del negocio y tomar mejores decisiones. Esta información numérica recibe el nombre de medida (measure). Algunos ejemplos de medidas comúnmente utilizadas por todo tipo de negocio son: ventas, unidades vendidas, costo, gasto, etc.

Las medidas se almacenan en una o más tablas de hechos (fact tables). Toda tabla de hechos contiene una cantidad variable de columnas numéricas, que almacenan los valores de las medidas.

Una tabla de hechos tiene las siguientes características:
  • Es la tabla central en un esquema dimensional.
  • Contiene las claves externas (FK), que se relacionan con sus respectivas tablas de dimensiones, y las columnas con los valores (métricas) que serán analizados.
  • Almacenan las mediciones numéricas del negocio.
  • El grano o la granularidad de la tabla queda determinada por el nivel de detalle que se almacenará en la tabla.
  • Cada medida es tomada de la intersección de las dimensiones que la definen.

7.3 Modelo Star (Estrella)

El modelo estrella (Star Schema) está compuesto de una tabla central llamada tabla de Hechos (Fact Table) y de una o varias tablas periféricas llamadas Tabla de Dimensiones (Dimensional Table).
Consta de una tabla de hechos central y de varias tablas de dimensiones relacionadas a esta, a través de sus respectivas claves. Debe estar desnormalizado.

Una estrella no debería tener más de 15 tablas de dimensión:
  • Un exceso de dimensiones (más de 25) denota que varias no son independientes.
  • En este caso, deben combinarse en dimensiones más simples.
  • Características
    • Posee los mejores tiempos de respuesta.
    • Su diseño es fácilmente modificable.
    • Existe paralelismo entre su diseño y la forma en que los usuarios visualizan y manipulan los datos.
    • Simplifica el análisis.
  • Inconvenientes
    • Este modelo es el menos robusto para la carga y es el más lento de construir.

7.4 Modelo Snowflake (Copo de nieve)

En el modelo STAR, cada nivel es representado por una columna en la tabla de dimensión. En el modelo SNOWFLAKE, cada nivel está representado por una tabla. Por tanto, en este modelo una dimensión puede estar formada por varias tablas.
Representa una extensión del modelo en estrella, en el que las tablas de dimensión se normalizan en múltiples tablas.
  • Características
    • Su diseño es fácilmente modificable.
    • Posee mayor complejidad en su estructura.
    • Hace una mejor utilización del espacio.
    • Es muy útil en tablas de dimensiones de muchas tuplas.
    • Las tablas de dimensiones están normalizadas, por lo que requiere menos esfuerzo de diseño.
    • Puede desarrollar clases de jerarquías fuera de las tablas de dimensiones, que permiten realizar análisis de lo general a lo detallado y viceversa..
  • Inconvenientes

    • Si se poseen múltiples tablas de dimensiones, cada una de ellas con varias jerarquías, se creará un número de tablas bastante considerable, que pueden llegar al punto de ser inmanejables.
    • Al existir muchas uniones y relaciones entre tablas, el desempeño puede verse reducido.
    • La existencia de las diferentes jerarquías de dimensiones debe estar bien fundamentada, ya que de otro modo las consultas demorarán más tiempo en devolver los resultados, debido a que se deben realizar las uniones entre las tablas.

En un modelo STAR, la performance de las consultas y del procesamiento del Data Mart mejora considerablemente debido a que el número de uniones necesarias para obtener los datos es menor. En cambio, el modelo SNOWFLAKE, debido al alto número de tablas que produce, tiene un tiempo de procesamiento y respuesta más alto.

Por otro lado, un modelo STAR es bastante más sencillo que un modelo SNOWFLAKE. El modelo SNOWFLAKE es más difícil de entender, y sus procesos de carga de datos son más complejos.


VIDEOS COMPLEMENTARIOS

Exposición Modelo Multidimensional -2015 BD
https://www.youtube.com/watch?v=j0kl1vZjsGE

Modelo Multidimensional
https://www.youtube.com/watch?v=gqftTcKvGvQ

LECTURAS COMPLEMENTARIOS

1. Modelo dimensional de un proceso de negocio
http://es.slideshare.net/miguelorquera/modelo-dimensional-de-un-proceso-de-negocio-12802599?next_slideshow=1

2. Construcción de un DataWareHouse - FISI - UNMSM - DataWareHouse
http://es.slideshare.net/juliopari/t218162dw-t-construcciondatawarehouse?related=1

3. Sistema de información de gestión de tarjetas de crédito usando Datamart e inteligencia de negocios para el área comercial del banco RIPLEY PERU.
http://ateneo.unmsm.edu.pe/ateneo/bitstream/123456789/2654/2/Morales_Huanca_Luis_Alberto_2012.pdf



No hay comentarios:

Publicar un comentario

Capítulo 9 - Medidas

1. Cubos Un cubo contiene un subconjunto de la información de un Data Mart o Data Warehouse. Su información se almacena en una estr...