Integraciones entre sistemas:
A menudo un sistema tiene la necesidad de contener información de otro sistema distinto. Las grandes empresas no sólo tienen un sistema, sino que normalmente tienen entre 50 y 100 sistemas. Seguramente exista por ejemplo uno de ellos que gestione las altas de "clientes" (habitualmente es llamado CRM - Customer Relationship Management). Resulta que es muy normal que el resto de todos los otros sistemas requieran de la información de los clientes, pero no resulta muy cómodo operativamente hablando que se genere el alta manualmente en cada sistema.Para resolver este tipo de situaciones como muchas otras que puedan surgir existe en parte el ETL, para mover este tipo de info que requieren múltiples sistemas y en background, sin que ningún usuario se entere, estará moviendo información de un sistema a otro según los requerimientos que se decida.
No sólo es movimiento de información, también puede ser verificaciones, envío de mails con aviso, generación de planos, envíos de archivos por mail, ejecuciones de procesos externos, etc.
BI - Business Intelligence - Datawarehouse:
En las grandes empresas, existe un sector dedicado a armar modelos que sirvan para la toma de decisiones de las distintas gerencias mediante análisis de la información.
Para poder realizar análisis de la información se utilizan herramientas de explotación de datos, es decir, herramientas para tomar información y mostrarla del modo que cada uno quiera verla.
Existen muchsa herramientas, les comento las que yo conozco:
- OBIEE: Oracle Business Intelligence Enterprise Edition.
- Cognos: Herramienta de reporting de IBM.
- MicroStrategy: Herramienta de reporting muy buena también.
Para que estas herramientas puedan realmente ser útiles, la información que se utiliza no debería ser de una base de datos con arquitectura relacional, sino que debería ser multidimensional.
Como este artículo es sólo un resúmen, no me voy a explayar en el tema, sino que en resumen les cuento que se deben armar mediante ETL, una estructuras de tabla (generalmente de tipo estrella), donde los datos están desnormalizados y por tipo de información (por ejemplo de ventas). Se arma una tabla llamada FÁCTICA o de HECHOS (que sólo debe contener IDs y datos sumarizables, y a su alrededor múltiples dimensiones por las que se puede relacionar.
A modo de ejemplo: Fáctica Ventas (FT_VENTAS), contendría como ejemplo básico:
- ID_FECHA - > Join hacia DIMENSIÓN FECHAS
- ID_CLIENTE - > Join hacia DIMENSION CLIENTES
- ID_REGION - > Join hacia DIMENSIÓN REGIONES
- ID_VENDEDOR - > Join hacia DIMENSION VENDEDORES
- IMPORTE (dato en la fáctica)
Cada dimensión es una tabla que contiene la vista actualizada de la información al día de hoy (ejemplo, REGIONES contiene todas las regiones, las que existieron viejas y las que existen nuevas, no se pueden reutilizar los IDs).
La tabla fáctica (FT_VENTAS) contiene la información histórica, fecha por fecha como fueron quedando las fotos día a día.
* Reporting: Al realizar los reportes, siempre se utilizará por ejemplo SUMA(IMPORTE), y dependiendo que columnas se seleccionen, podremos ver la información resumida por región, abierta por cliente, filtrar fechas, etc. Las herramientas de BI permiten al usuario realizar online esta clase de consultas.
También existe la posibilidad de realizar 'cubos', que sirven cuando un usuario siempre realiza consultas exactas por ejemplo por región. Se deja ya pre-calculada en memoria las sumarizaciones agrupadas por región y el usuario tendrá una respuesta más rápida a los reportes.
* Ventajas y desventajas: En general es la mejor opción para realizar reportes por su flexibilidad para el usuario y por la rapidez en la resolución de los mismos. Como desventaja, es que se requiere de herramientas caras (las caras son las mejores, aunque las hay open source). El espacio que ocupa es muchísimo, ya que guarda la historia completa de todos los movimientos y las tablas están desnormalizadas (es decir, se repiten muchos campos que en la base relacional no).
No hay comentarios.:
Publicar un comentario