domingo, 1 de septiembre de 2013

De donde vienen los datos para B.I?

DATOS DE ENTRADA PARA B.I

Hacer Inteligencia de Negocios o Business Intelligence no sale da la nada, se alimenta de datos. Recordemos que los datos se van a transformar en información, la información en conocimiento y con el conocimiento se toman las decisiones. Estos datos corresponden  a un tema extenso en B.I por lo que el post de hoy se va a dedicar a las dos principales entradas de un software de Inteligencia de Negocios, los Datamart y el DatawareHouse.

Estructura general Datamart VS DataWareHouse



DATAWAREHOUSE:
Este término acuñado por Bill Inmon, se traduce literalmente como Almacén de Datos. Simeplemente es una base de datos enomres que almacena información histórica para ser analizada integrando todas las áeas y S.I de la compañía. Un solo sistema de consulta, lenguaje y una sola verdad.
Según definió Bill Inmon, el Data Warehouse se caracteriza por ser:

  • Integrado: deben integrarse en una estructura consistente, por lo que las inconsistencias existentes entre los diversos sistemas operacionales deben ser eliminadas. La información suele estructurarse también en distintos niveles de detalle para adecuarse a las distintas necesidades de los usuarios.
  • Temático:. Por ejemplo, todos los datos sobre clientes pueden ser consolidados en una única tabla del Data Warehouse. De esta forma, las peticiones de información sobre clientes serán más fáciles de responder dado que toda la información reside en el mismo lugar.
  • Histórico: la información almacenada en el Data Warehouse sirve, entre otras cosas, para realizar análisis de tendencias., con los distintos valores que toma una variable en el tiempo para permitir comparaciones.
  • No volátil: existe para ser leído, y no modificado. La información es por tanto permanente, significando la actualización del Data Warehouse la incorporación de los últimos valores que tomaron las distintas variables contenidas en él sin ningún tipo de acción sobre lo que ya existía.


Para tener en cuenta….

¿Base de datos histórica?¿ Entonces si levanto un respaldo de mi sistema en otro servidor es un data warehouse? 
 Si levantas el respaldo de los 5 años anteriores del sistema de facturación en otro servidor eso NO es un datawarehouse.

En un DW las tablas que almacenan información se diseñan de una manera especial pensando en que almacenarán cantidades gigantescas de información. Esas maneras especiales o modelos son el copo de nieve y estrella. Cada uno tiene sus ventajas y desventajas. Un DW entonces no es una base de datos normalizada!.



Diferencias entre los modelos de almacenamiento de datos en un DW date cuenta que se desea almacenar la mayor cantidad posible de datos sobre el tiempo, no aplican las reglas de normalización de BD.
  
DATAMART:

  
Generalmente son bases de datos departamentales o para propósitos específicos, también llamados mini Data WhareHouses ya que traen una vista o un extracto de este con temas específicos, por esto se dice que se basa en departamentos (contabilidad, marketing, producción…) o para propósitos como informes, reportes y análisis (orientados a B.I). Para B.I es común  asociar los Datamarts a un motor o herramienta OLAP y OLTP para la extracción de datos.

OLAP ONLINE ANALYTICAL PROCESSING (Proceso analítico relacional en línea.)
OLAP te permite “navegar” fácilmente por la información, solicitándola con el detalle preciso y con los filtros adecuados, y que puedes hacerlo de manera dinámica.


  • Organiza los datos para su explotación y así poder analizarla.
  • Basada en Cubos. 
  • Una pregunta a un sistema OLAP puede ser 
  • ¿Cuánto dinero he ganado vendiendo el producto X en la región Y en el periodo de tiempo Z? 
  • No realizará esta consulta de forma concreta, las estructuras de datos, índices y vistas re calculadas  ya permiten su consulta directamente de forma más sencilla y rápida.
  • Trabaja sobre el Data WhareHouse

FUNCIONES
  • Segmentar: Como cuando pides las ventas por producto y por trimestre
  • Filtrar: Como cuando pides el informe de ventas de España en 2011
  • Profundizar (Drill down): Como cuando ves los datos de trimestre 2 y te interesa el desglose de abril, mayo, junio.
  • Sintetizar (Drill up): Cuando deshaces el desglose anterior y vuelves al desglose por trimestre.
  • Rotar (Drill anywhere): Cuando en lugar de pasar de un desglose por trimestres a uno mensual, te interesa un desglose por familia de producto, o por nacionalidad, es decir, por una característica de una jerarquía distinta a la que lo estás viendo actualmente.
               Un sistema OLAP puede ser de dos tipos.....

MOLAP Multidimensional OLAP:



      • Es la forma original del OLAP, arquitectura de datos en tres dimensiones o más,  se alimenta de un datawarehouse o datamart relacional.
      • Se basa en dos elementos, la base de datos multidimensional, y el motor analítico. Que suelen ser de la misma marca e incompatibles, una base de datos multidimensional o MDDB no puede ser usada por otro motor que no sea del mismo propietario, a diferencia del SQL (Relacional) que es estándar.
      • El proceso es:
        • Usuario Técnico ->Ingresa requerimientos en Aplicación ->Aplicación ejecuta los requerimientos sobre bases de datos relacionales en estrella o copo de nieve->se cargan los datos en la MDDB, -> se realizan una serie de cálculos por lotes para rellenar la MDDB por dimensiones->se generan índices y algoritmos de tablas para mejorar los tiempos de respuesta.
        • El usuario final solamente solicita informes y la aplicación obtiene y muestra el dato.




ROLAP Relational OLAP
      • No crea bases de datos multidimensionales, trabaja directamente sobre la base de datos relacional para simular MOLAP.
      • Trabaja en función de queri, donde cada dimensión se traduce en un “where”.
      • El proceso es:
        • El sistema coge los datos de datawarehopuse o datamart -> el motor proporciona el análisis ejecutando las consultas digitadas en la capa de aplicación->se crean indicies y visitas para optimizar ->
        • Los usuarios finales usan la capa de la aplicación sencilla -> el motor de la aplicación ROLAP transforma las peticiones en Query sql dinámicos-> se cruzan las tablas con los índices para optimizar y simular MOLAP.
      • ROLAP emula el cubo con tablas relacionales, como muchos emuladores (De consolas de Videojuegos por ejemplo) presentan un rendimiento menor, pero otros beneficios como escalabilidad y flexibilidad a la hora de construir el cubo simulado!

HOLAP Hybrid OLAP


                     Existen sistemas híbridos,  cuando quieres realizar una consulta sencilla usa ROLAP, cuando quieres un detalle usa MOLAP.


RESUMEN....

MOLAP
ROLAP
Rendimiento
Ofrece un rendimiento teóricamente superior al reorganizar físicamente los datos
El rendimiento es peor, y si no se organizan los datos un poco, es desastroso
Tamaño
Al ser una estructura propietaria, se suelen aplicar técnicas de compresión. Pero cuidado, una mala planificación de las dimensiones de los cubos y podemos gastar muchísimo espacio.
No creamos nuevas estructuras, aunque si no lo hemos hecho antes deberíamos montar un esquema estrella normalizado, lo que consumirá espacio
Funcionalidad
Normalmente dan más funcionalidad, permitiendo operaciones específicas sobre el cubo para potenciar su análisis
Aquí tenemos SQL, aunque en las últimas versiones de algunas bases de datos ya tenemos instrucciones específicas como CUBE o ROLLUP que imitan la funcionalidad de una herramienta MOLAP
Escalabilidad
Cada cubo ha de crearse bajo demanda, y refrescarse etc… Difícil de  escalar.
En teoría es más escalable y maneja mejor grandes volúmenes de datos con dimensiones de alta cardinalidad.

Observa como el cubo es el de mejor rendimiento, pero poco escalable.


OLTP es la sigla en inglés de Procesamiento de Transacciones En Línea(OnLine Transaction Processing)

Es un tipo de procesamiento que facilita y administra aplicaciones transaccionales, usualmente para entrada de datos y recuperación y procesamiento de transacciones.
    • Las aplicaciones de OLTP están organizadas para ejecutar las transacciones para los cuales fueron hechos, como por ejemplo: mover dinero entre cuentas, un cargo o abono, una devolución de inventario, etc.
    • Es común encontrar que los sistemas transaccionales son accedidos por cientos de usuarios simultáneamente, realizan cientos de transacciones por segundo, los OLTP
    • Trabaja sobre los procesos de Negocio.
    • Son continuamente actualizados por los sistemas operacionales del día con día.


FUNCIONES


    • Eliminar los retardos de los procesos empresariales que resultan de información incorrecta, inconsistente y/o no existente. 
    • Integrar y optimizar procesos empresariales a través del uso compartido e integrado de las fuentes de información. 
    • Eliminar la producción y el procesamiento de datos que no son usados ni necesarios, producto de aplicaciones mal diseñados o ya no utilizados.



RESUMEN...


Característica


OLTP System

Online Transaction Processing

(Operational System)


OLAP System

Online Analytical Processing

(Data Warehouse)
Origen de datos
Datos operacionales; OLTPs son los datos originales de acceso
Datos consolidados; OLAP los datos de OLAP vienen de varios OLTP ó Data WhareHouse
Propósito
Para controlar last areas de negocio
Para ayudar a la planeación, resolución de problemas y toma de decisiones
Qué muestra del dato?
Revela una vista instantánea de los procesos de negocio en curso
Vistas Multi-dimensionales de varios tipos de actividades de negocio
Inserts y Updates
Cortos y rápidos inserts and updates hechos por usuarios finales
Trabajos por lotes de larga, duración y actualización periódica de los datos
Queries
Relativamente simples y estándares, retornan pocos datos
Complejos queris que involucran agregaciones
Velocidad de Procesamiento
Rápidos
Lentos: aún más lentos dependiendo de la arquitectura, la dimensión de los datos y la solicitud.
Requerimientos de espacio
Puede ser relativamente pequeño
Grandes espacios para estructuras, agregaciones y datos históricos.
Diseño
Tablas altamente Normalizadas
Comúnmente desnormalizadas
Backup y Recovery
Backup periódicamente y constante por los datos que manejas son de operación crítica para el negocio, si hay peridades de datos en un día puede ser catastrófico.
En lugar de copias de seguridad periódicas, algunos entornos pueden considerar simplemente recargar los datos OLTP como un método de recuperación
Estructura de datos
Tablas relacionales
Cubos puros (MOLAP), cubos simulados (ROLAP)

En el siguiente diagrama que hemos hecho entenderás como se comportan los datos en las compañías  grandes con soluciones de software implementadas, ten en cuenta que los modelos teóricos varían de los prácticos debido a la cantidad de aplicaciones y sistemas que existen hoy en día, por esto te resumimos las relaciones más comunes.



RESUMEN...

Observa como OLTP puede estar a nivel de las aplicaciones, extrayéndose del DW, alimentando o nó Datamarts de análisis. Observa también como OLTP se enfoca a reportes para la gerencia y OLAP en sus tres formas para informes de análisis y alertas. Las arquitecturas en la práctica varían mucho, todo puede estar integrado bajo un sistema o todo puede estar conectado por varios sistemas separados, ETL y las salidas del B.I serán para el otro Post!


Bibliografía:








No hay comentarios:

Publicar un comentario