Unidad 5: Aplicaciones de negocio - Facultad de...

21
1 Unidad 5: Aplicaciones de negocio Business Intelligence / Data warehouse Tecnología aplicada a la toma de decisiones o malas decisiones en tecnología? Autor: Ernesto Chinkes, 2006 Profesor TI – FCE/UBA 1. Introducción En la denominada “sociedad del conocimiento”, la información ha pasado a ser uno de los activos más preciados de los que disponen las organizaciones. En muchas instituciones, sobre todo las de servicios, es el principal activo; inclusive por encima de los de capital, y en las que no lo es, igualmente tiene una relevancia mayúscula. Para tomar mejores decisiones es fundamental contar con la información adecuada en el momento y lugar preciso. Esto no es nuevo, pero el impacto de no disponer de dicha información cada vez tiene un efecto más nocivo. Esto se debe a que el mundo que nos rodea es cada vez más complejo, cambia más rápidamente y el resto de los actores con los que se convive cada vez cuentan con más y mejor información. Los términos “data warehouse” y “business intelligence” se usan desde hace varios años en la industria de las Tecnologías de la Información (TI), y enmarcan soluciones tecnológicas que a las organizaciones pueden proveerles importantes beneficios alineados con mejorar el proceso de toma de decisiones. Es tecnología aplicada a dar soporte a la toma de decisiones, pero muchas veces los proyectos para su incorporación terminan reflejando simplemente malas decisiones en tecnología. En las secciones que siguen se intenta dar algunos lineamientos para que esto último no ocurra. 2. La información en la toma de decisiones. En el transcurrir cotidiano de las organizaciones, las personas que trabajan en ellas deben enfrentarse a decisiones en forma frecuente y recurrente durante el día, ya sean grandes o pequeños problemas los que deban afrontar y solucionar. Algunas de ellas son decisiones de rutina o intrascendentes mientras que otras tienen una repercusión significativa en las operaciones de la organización y pueden incidir inclusive en la supervivencia.

Transcript of Unidad 5: Aplicaciones de negocio - Facultad de...

1

Unidad 5: Aplicaciones de negocio

Business Intelligence / Data warehouse Tecnología aplicada a la toma de decisiones o malas decisiones en tecnología?

Autor: Ernesto Chinkes, 2006

Profesor TI – FCE/UBA

1. Introducción

En la denominada “sociedad del conocimiento”, la información ha pasado a ser uno de los activos

más preciados de los que disponen las organizaciones. En muchas instituciones, sobre todo las de

servicios, es el principal activo; inclusive por encima de los de capital, y en las que no lo es,

igualmente tiene una relevancia mayúscula.

Para tomar mejores decisiones es fundamental contar con la información adecuada en el momento

y lugar preciso. Esto no es nuevo, pero el impacto de no disponer de dicha información cada vez

tiene un efecto más nocivo. Esto se debe a que el mundo que nos rodea es cada vez más

complejo, cambia más rápidamente y el resto de los actores con los que se convive cada vez

cuentan con más y mejor información.

Los términos “data warehouse” y “business intelligence” se usan desde hace varios años en la

industria de las Tecnologías de la Información (TI), y enmarcan soluciones tecnológicas que a las

organizaciones pueden proveerles importantes beneficios alineados con mejorar el proceso de

toma de decisiones. Es tecnología aplicada a dar soporte a la toma de decisiones, pero muchas

veces los proyectos para su incorporación terminan reflejando simplemente malas decisiones en

tecnología. En las secciones que siguen se intenta dar algunos lineamientos para que esto último

no ocurra.

2. La información en la toma de decisiones.

En el transcurrir cotidiano de las organizaciones, las personas que trabajan en ellas deben

enfrentarse a decisiones en forma frecuente y recurrente durante el día, ya sean grandes o

pequeños problemas los que deban afrontar y solucionar. Algunas de ellas son decisiones de rutina

o intrascendentes mientras que otras tienen una repercusión significativa en las operaciones de la

organización y pueden incidir inclusive en la supervivencia.

2

Toda acción que se realiza, o deja de hacer, en una organización es fruto de las decisiones que

han tomado las personas que la componen. Por lo tanto, es en función de la calidad de dichas

decisiones el futuro de éxitos o fracasos que le deparará.

Para tomar decisiones las personas pueden basarse en información, así como en muchos otros

aspectos menos racionales como la emoción, la percepción, el prejuicio, la intuición, etc. Gran

parte del esfuerzo del proceso decisorio estará destinado a comprender el futuro, ya que es el

terreno en el que transcurrirán finalmente sus acciones. Es por ello que un gran soporte en este

sentido es la posibilidad de analizar los hechos ocurridos, para construir de esta forma el

escenario futuro apoyándose en las experiencias vividas.

Las decisiones deben tomarse sobre una realidad altamente compleja, en la que confluyen un

enorme número de variables que entran en juego, que a la vez tienen una infinidad de

posibilidades. Por otro lado se puede observar que para muchas de las decisiones que se toman

se dedica muy poco tiempo, y ello implica tener en cuenta solamente lo que se siente y vislumbra

en ese momento, no considerando aspectos del pasado donde la rica historia de la organización

pueden dar un panorama que, de ser analizados, llevarían la decisión a un resultado distinto.

Es interesante mencionar las cuatro etapas del proceso decisorio que describe Herbert A. Simon:

a) inteligencia, b) diseño, c) selección y d) implementación; ya que ello permite comprender la

significatividad que puede tener en su resultado la disponibilidad de herramientas adecuadas por

parte de los decisores.

a) Inteligencia: es en esta etapa donde se detectan los problemas. El proceso de toma de

decisiones comienza con el reconocimiento de la necesidad de tomar una decisión, ya sea por que se detecta un problema o el deseo de accionar o cambiar algún aspecto.

b) Diseño: es la base de la toma de decisiones y no es más que desplegar las alternativas. El tomador de la decisión confecciona una lista de las alternativas posibles que se le ocurren como viables para resolver el problema.

c) Selección: una vez identificadas las alternativas, se evalúa de manera crítica cada una de ellas. Se comparan distinguiendo sus consecuencias, ventajas y desventajas, y en particular sus costos1. El tomador de decisiones tiene que elegir una de ellas.

d) Implementación: finalmente se pone en práctica la decisión elegida, se lleva la decisión a la acción, y es a partir de ese momento, en donde se monitorean sus progresos y resultados obtenidos.

Los sistemas informáticos en general, y las soluciones de business intelligence en particular, son

herramientas imprescindibles para dar soporte a este proceso.

En la actualidad, en la mayoría de las organizaciones, prácticamente no existe aspecto sobre el

cual haya que tomar decisiones, del que no se estén guardando datos. Existe gran cantidad de

datos que se almacenan como fruto de la gestión diaria de las operaciones de rutina. Sin embargo,

1El concepto costo no se limita al aspecto monetario, pura y exclusivamente, sino que se lo referencia con un criterio amplio.

3

muchas veces esos datos no están disponibles, accesibles, en el formato y el momento oportuno

para permitir su uso como información que ayude de manera significativa en las decisiones. Es

decir, no se valora y usufructúa el gran potencial de información que existe.

Las soluciones de inteligencia de negocio pueden ser vitales para mejorar el proceso de toma de

decisiones; ya que brindarán información que permita detectar los problemas sobre los cuales

habrá que decidir, desarrollar alternativas, evaluar las posibles consecuencias de las mismas y su

posterior monitoreo cuando se traduzcan en acciones.

En la medida que las decisiones son propias del nivel operativo (por lo general con efectos a corto

plazo, fáciles de revertir y con impacto único) es más fácil que estas sean programadas y que

puedan por lo tanto estar incorporadas en los sistemas de información de nivel operativo (que se

suelen denominar sistemas OLTP). En cambio las de alto nivel (táctico y estratégico) no son

fácilmente programables, y es allí donde es necesario proveerles a los responsables de realizarlas

la mejor infraestructura posible para encararlas.

3. Los problemas de los sistemas operacionales.

Antes de analizar en detalle una solución es conveniente comprender adecuadamente los

problemas que la misma debe solucionar. Cuando ello no es así, lo que se implanta no cubre

necesidades reales, y en lugar de acercar soluciones genera nuevos problemas, a veces inclusive

mayores que los originarios. Es por ello que hace tiempo me ha interesado estudiar y clasificar

estos problemas, que finalmente bauticé con el rótulo de “Los tres problemas del OLTP”.

Si bien existen en las organizaciones distintas estructuras administrativas y procesos de negocio,

es posible generalizar su organización en lo que se denomina la pirámide organizacional. El nivel

operativo es donde se agrupan la mayoría de los trabajadores y donde los procedimientos están

más estructurados y definidos. Los niveles superiores (nivel táctico y estratégico) realizan

actividades más relacionadas con el control y la toma de decisiones.

Los trabajadores del nivel operativo también necesitan información para el control y la toma de

decisiones, pero están más ligados a aspectos puntuales y específicos, como el control si un

cliente está pagando su deuda en forma correcta o la decisión de si debe cobrarle o no un recargo.

En cambio los niveles superiores necesitan información para un control más global y abarcativo y

para decisiones tácticas y estratégicas, como el lanzamiento de nuevos productos y servicios, la

reubicación de recursos, nuevas políticas de motivación del personal, la inversión o eliminación de

una planta de producción, etc.

4

Los sistemas operacionales son sistemas de información que dan soporte a los procesos del nivel

operativo de la estructura organizacional. El nivel operativo es donde se realizan las actividades de

rutina del negocio que permiten su funcionamiento, es donde se atiende y vende, donde se cobra y

paga, donde se produce, donde se liquidan los haberes de los empleados, etc. Cada una de estas

funciones que necesita realizar una organización para cumplir con sus objetivos, se encuentran

apoyadas por sistemas informáticos. A estos se los denomina sistemas transaccionales,

operacionales u OLTP (On Line Transactional Processing).

Estos sistemas necesitan guardar y consultar datos. Las bases de datos que dan soporte a los

sistemas de nivel operativo, se denominan bases de datos OLTP. Estas bases de datos soportan

procesos con las siguientes características:

• Transacciones que actualizan un conjunto de pocos registros. Ejemplo: Las facturas que

un cliente está pagando.

• Transacciones que consultan un conjunto de pocos registros. Ejemplo: El precio de un

producto que está por comprar un cliente.

• Puede existir alto nivel de concurrencia de las transacciones que consultan y actualizan.

Ejemplo: muchos cajeros de una línea de caja, facturando al mismo tiempo.

• Son operaciones de actualización y consultas en línea (“on line”), que deben tener una

respuesta instantánea para no trabar las operaciones de la organización. Ejemplo: el

cobro de un servicio en un banco, que le debe decir al cajero cuanto cobrar, y debe

quedar registrado el pago antes de que el cliente abandone la ventanilla.

Cuando se necesita información para usar en la toma de decisiones tácticas y estratégicas, las

bases de datos OLTP, pueden presentar una serie de deficiencias que no permitan satisfacer las

necesidades que presentan estos niveles de decisión.

Estas deficiencias, como ya se comentó al principio de la sección, las he clasificado mediante “Los

tres problemas del OLTP”.

a) Problema 1: Descentralización de la base de datos.

Los datos que representan la realidad de la organización se encuentran muchas veces dispersos.

Es decir, existen distintas bases de datos (o en algunos casos archivos), que tienen diseños

conceptuales y físicos independientes entre sí, que guardan situaciones parciales no relacionadas

ni integradas.

Esta descentralización de la base de datos dentro de una organización tiene, por lo general, un

origen pluricausal, que se encuentra relacionado con las particularidades que ha asumido el

5

desarrollo y la administración de los sistemas informáticos. En la medida que mayor sea la

complejidad de las instituciones, mayor será la probabilidad de que existan más causas para esta

descentralización de los datos. Es por ejemplo muy común encontrar que el sistema de ventas

actualiza una base de datos, el de abastecimiento otra y el de liquidación de haberes una distinta,

así mismo podría suceder que distintas sucursales de una empresa se manejen con sistemas

independientes que actualicen sus propias bases de datos.

Surgen, entonces, los siguientes problemas:

• Existen diferentes visiones de una misma realidad entre los decisores de la organización.

• Imposibilidad de obtener información integrada que permita comparar, clasificar y

consolidar la información de las distintas áreas, sectores, procesos, unidades, etc., para

analizar a la organización como un todo.

b) Problema 2: Inadecuados tiempos de respuesta.

Existe en las instituciones la necesidad de realizar consultas de grandes porciones de la base de

datos en forma interactiva. Es decir, gran parte de la información que necesitan los niveles tácticos

y estratégicos para la toma de decisiones, es información que se construye a partir del acceso y

procesamiento de importantes volúmenes de datos.

Por ejemplo, si necesitara comparar los 10 productos más vendidos durante el primer semestre de

este año contra los del semestre del año anterior, debería recorrer los datos correspondientes a

todas las ventas de los seis primeros meses del año anterior y del actual, que podrían ser cientos

de miles (o millones) de registros. Pero esta respuesta debería volver en pocos segundos, ya que

posiblemente en base a dicho resultado el usuario necesite realizar otra consulta, como ampliarlo a

20 productos, o comparar sólo el primer trimestre, o desagregar la información por zona geográfica

de venta, etc.

En la medida que las bases tienen grandes cantidades de datos, se hace muy difícil, obtener

adecuados tiempos de respuesta de las bases de datos OLTP para este tipo de consultas. Por otro

lado este tipo de consultas trae un problema adicional, y es que hace más lento al resto de las

operaciones transaccionales que deben realizarse en esa base de datos, ya que los recursos de la

computadora (principalmente procesador y disco) estarán ocupados con dichas consultas que

hacen un uso muy intensivo de estos recursos.

Surgen, entonces, los siguientes problemas:

• Inadecuados tiempos de respuesta para las consultas que se necesitan para la toma de

6

decisiones.

• Se entorpece el nivel de respuesta de los sistemas de nivel operativo, debido al uso

intensivo de los recursos que genera el procesamiento de las consultas para la toma de

decisiones.

c) Exploración amigable para consultas ad-hoc.

Los tomadores de decisiones necesitan alternativas “amigables” de acceso a los datos. Es decir,

que puedan acceder sin necesitar conocimientos profundos sobre el uso de la tecnología, siendo

ésta lo más “transparente” posible.

Esta amigabilidad se ha logrado muchas veces con consultas pre-planeadas (reportes). Estas son

consultas de rutina, que como los usuarios ya previeron que las iban a necesitar fueron

especificadas, diseñadas y programadas en opciones de un software aplicativo de usuario final,

donde el usuario podrá acceder simplemente seleccionando una opción del software, y a lo sumo

ingresando algunos parámetros claramente identificados (como fechas, ordenamiento, etc.).

El inconveniente surge cuando los decisores necesitan realizar consultas ad-hoc en forma

amigable, ya que si bien existen lenguajes para acceder a los datos y realizar consultas ad-hoc,

como es el caso de SQL (Standard Query Language) o QBE (Query By Example), su uso implica el

conocimiento por parte del usuario del lenguaje y de complejos modelos de datos. Estas

capacidades no son acordes con el perfil de los usuarios que necesitan este tipo de información.

El problema, entonces, es:

Los usuarios no cuentan con herramientas para explorar los datos y obtener información

ad-hoc para la toma de decisiones en forma amigable.

Puede que los problemas enunciados se presenten todos juntos, o que sólo se presente uno o dos

de ellos. Inclusive que no exista ninguno. Sólo en el último de los casos no es necesaria una

solución de business intelligence / data warehouse.

Si existen los problemas 1 y 2 (descentralización de la base de datos e inadecuados tiempos de

respuesta) el data warehouse es el que le acerca los principales beneficios. Si existe el problema 3

(no disponer de herramientas para obtener información ad-hoc en forma amigable), entonces debe

explorar las tecnologías encuadradas bajo el paraguas del business intelligence

7

INFO R M A CIO N P A RA

LA TO M A D E DE CIS IO NES

C om prasVentas

S ucursa l Bs.As.

V entasSucursal Córdoba

N ivel O perativo

N ive l Táctico

N ive l Estratég ico

M arketing

P roducc iónV entas

Sucursal Córdoba ...

D A TA

W A R E H O U S E

D atam in ingO LAP

Tableros

R eporting...

H erram ientas de B I

4. Conceptos y lineamientos de una solución de DW / BI

4.1. El Data Warehouse

El data warehouse (almacén de datos) es una base de datos concebida y administrada para dar

soporte a la toma de decisiones. En forma sintética se puede decir que, cuando se piensa en un

data warehouse se debe considerar una base de datos que debe poseer datos que representen la

realidad integrada de toda la organización y que en ella se desea optimizar el desempeño de las

consultas que impliquen el procesamiento de un gran número de registros.

Una solución de data warehouse debe dejar como resultado una base de datos integrada, con

datos que permitan responder a las necesidades de información para la toma de decisiones,

principalmente de los niveles tácticos y estratégicos. Si bien por lo general, el motivo principal es

brindar información para los niveles superiores de la organización, eso no quita que se use también

para responder consultas de niveles operativos, como podría ser el caso de vendedores que

accedan para obtener información integrada sobre el historial de ventas de los clientes, y de esta

forma poder focalizar mejor su estrategia de relación con los mismos.

4.2. El Business Intelligence

El business intelligence (inteligencia de negocio) define una solución donde se usan los datos para

la administración inteligente de la organización.

Si bien este concepto puede tratarse como un tema de “management”, que denote la importancia

del uso de la información para guiar una organización, desde el punto de vista de la tecnología es

8

posible enfocarlo para describir las herramientas de exploración y explotación de datos para dar

soporte a la toma de decisiones.

Cuando se analiza a las organizaciones en función de su organigrama se detecta que las

necesidades con respecto a la información no son iguales para todos los niveles jerárquicos, ni

tampoco para las diferentes áreas funcionales. Un gerente general necesita evaluar la situación

global de la compañía mediante la medición de una serie de indicadores definidos como

estratégicos a nivel directivo, para lo que lo ayudará la utilización de unos pocos indicadores

integrales de rápida detección (como pueden ser semáforos, tacómetros, etc.) sobre la “salud” de

la organización. En cambio un analista de producto de una región particular seguramente no

necesite visualizar el desempeño de esos indicadores globales y esté mucho más interesado en

ver la evolución diaria de las ventas de un producto en la región que él tiene a cargo. Asimismo, no

serán las mismas necesidades las que tiene un analista contable que necesitará crear reportes

sobre el balance, con el formato corporativo, para enviar a la casa matriz o para presentar ante

organismos regulatorios, que las que tiene un analista de marketing cuando quiera saber cuáles

son las combinaciones de productos que más adquieren las personas que tienen entre 20 y 30

años y viven en zona norte de la Ciudad de Buenos Aires.

Este amplio espectro de necesidades es el que debe ser abarcado por las herramientas de

business intelligence. Existe entonces una clasificación de diversos tipos o estilos que puede

asumir el acceso a la información mediante el software de business intelligence. Un usuario

particular puede utilizar uno o más de estos tipos, pero seguramente estará más cerca de uno u

otro, de acuerdo a sus funciones y responsabilidades en la institución y a su forma personal de

relacionarse con la información disponible.

Las categorías de business intelligence son:

1. Reportes (Reporting).

2. Análisis multidimensional (exploración OLAP).

3. Tableros de Control / Balance Scorecard.

4. Minería de datos (Data Mining).

5. Distribución pro activa.

Estas herramientas se conciben para tomadores de decisiones que sean autosuficientes a la hora

de obtener la información que necesitan. Si bien algunas herramientas de las categorías

mencionadas no lo necesitan con tanta fuerza, implantar estas herramientas plantea un cambio

cultural difícil para organizaciones donde los decisores prefieren contar con un área que les provea

información, en lugar una infraestructura tecnológica preparada para acceder a ella por su cuenta.

9

Cuando se encara una solución de business intelligence, ella incluye la existencia de una base de

datos (por lo general un data warehouse) y la implantación de una o varias de estas herramientas.

4.3. La arquitectura de la solución

Es importante describir los componentes que integran la arquitectura de una solución de data

warehouse / business intelligence. La que se plantea es un arquitectura bastante particular, que a

criterio de este autor tiene importantes beneficios, pero con esto no se desea expresar que ésta es

la única arquitectura viable, ni tildar de erróneas otras que puedan ser consideradas.

En esta arquitectura se plantean tres grandes áreas o componentes: 1) Fuentes de datos, 2) área

del data warehouse y 3) herramientas de acceso y exploración.

1. Fuentes de Datos: incluye a todos los datos en su lugar de origen (bases de datos o archivos

planos) que se extraerán mediante los correspondientes ETL2 que permitirán incorporar el

contenido del data warehouse. Esta área se compone principalmente de los datos que

almacenan los sistemas operacionales, pero también pueden existir datos externos, así como

datos internos no sistematizados.

Arquitectura de una solución de Data warehouse / Business Intelligence

2 ETL (Extract, Transformation, Load) es la forma a que se denominan los procesos de extracción, transformación y carga

que se usan para nutrir a un data warehouse.

Sistema operacional A

Sistema operacional B

Sistema operacional N

Datos Externos

Datos Internos no Sistematizados

Fuentes de datos Área del Data warehouse

Area de trabajo

Data warehouse detallado u “objetivo”

Data warehouse agregado o “subjetivo”

Extracción

Transformación

Datamart A Datamart B Datamart N

Carga (Load)

T, L

Análisis Multidimensional

Datamining Tablero de

comando. Balance scorecard Alertas Reporting Etc.

A

B

C

Herramientas de acceso y exploración

10

2. Área del data warehouse: incluye a todos los datos que se integran para brindar información

para la toma de decisiones en forma eficaz y eficiente. Este área puede ser dividida en tres sub

áreas para su mejor análisis:

o Área de trabajo: aquí se realizan las principales transformaciones de datos, que

incluyen su limpieza, combinación, homogeneización de unidades de medida,

equivalencias de códigos, agregaciones de consistencia, etc.

o Data warehouse “objetivo” o detallado: es una base de datos que contiene los datos

integrados de toda la organización, con el mayor nivel de desagregación posible. Es

decir, que es una base de datos que representa la realidad de la organización desde

una mirada puesta en los datos de origen, intentando reproducir con la mayor

objetividad las transacciones como fueron capturadas.

o Data warehouse “subjetivo” o agregado: podrá estar compuesto por una única base de

datos o por múltiples (data marts), o por ambas. Esta o estas bases de datos están

construidas según las necesidades de la información para la toma de decisiones de los

usuarios y de las herramientas de exploración. Se nutre del data warehouse “objetivo”.

El data warehouse subjetivo, a diferencia del “objetivo”, es una representación

integrada de la realidad desde la perspectiva de la exploración de la información que

podrán hacer los tomadores de decisiones (subjetiva).

3. Las herramientas de acceso y exploración de datos: Es el componente que usufructúa los

beneficios de la solución. Es lo que ven los usuarios. Se compone de las distintas herramientas

que se implanten para explorar los datos, permitiendo cubrir diversos criterios y estilos de

análisis de la información: como el análisis multidimensional, datamining, reporting, alertas,

tablero de comando, balance scorecard, etc.

Los datos del data warehouse se obtienen del área de fuentes de datos, a través de procesos

informáticos que se encargan de la extracción de datos.

Todos estos datos por lo general tienen como destino una base de datos (o el área de una base

de datos) que se denominó “Área de trabajo”. Es allí donde se correrán procesos informáticos que

realicen la transformación de datos. Es un área que contendrá datos que todavía no están listos

para ser consultados por los usuarios. Es un espacio de almacenamiento donde se estarán

preparando los datos.

11

Una vez que los datos estén listos se pasarán a los sectores A, B, y/o C (según la figura de página

9) del área del data warehouse. El sector dependerá de la arquitectura que la organización elija. En

caso de existir una arquitectura completa, como la que aquí se plantea, entonces en primer lugar

se correrían procesos de carga que permitan dejar listo el data warehouse objetivo (sector A),

luego a partir de allí cargar el data warehouse subjetivo (sectores B y/o C), realizando

principalmente transformaciones de agregación según los criterios de exploración que se definan

para los usuarios.

En caso de co-existir los sectores B y C, en B se dispondrá de una base de datos integrada,

mientras que en C los datamarts que se corresponden con visiones parciales de la organización y

serán el resultado de particionar B. Su principal objetivo es lograr mejor performance o explotar

una visión parcial con mayor detalle que el que se encuentra en B. En este último caso el contenido

de C se generaría directamente desde A.

También es posible definir una arquitectura donde sólo exista B o C (sin que exista A). Este

esquema es bastante común, y se da cuando los datos en el data warehouse se guardan

directamente en forma agregada bajo los criterios de las dimensiones de explotación.

El ETL

El ETL, que significa Extraction, Transformation and Load (extracción, transformación y carga), es

la forma en que se denomina al conjunto de procesos mediante los cuales se genera y actualiza el

contenido del data warehouse.

Estos procesos deben resolver el mayor problema con el que suele toparse la construcción de un

data warehouse: la homogeneización de los datos provenientes de fuentes diversas.

Estos procesos deben:

• acceder y tomar datos de las distintas fuentes (Extract),

• realizar las transformaciones que sean necesarias para dejar los datos en el formato, con

la codificación, niveles de agregación, de calidad y criterios de integración que se definan

(Transform), y

• actualizar el data warehouse con dichos datos ya transformados (Load)

Los procesos que componen el ETL necesitan ser ejecutados en base a una programación

temporal. Esta debe ser definida en función de las necesidades de actualización que amerite el

data warehouse. La programación incluye periodicidad (cada cuanto tiempo se ejecuta), el horario,

12

y la secuencia. Hay que determinar la secuencia en que se ejecutarán los n proceso que integren

el ETL, ya que de lo contrario correría riesgo la integridad de la base de datos.

El datamart

El datamart (mercado de datos), es el nombre que se le asigna a una base de datos que asume las

características que se definieron para un data warehouse, pero en lugar de representar la realidad

de toda una organización sólo lo hace respecto de un área o función de ella. De esta forma, por

ejemplo, podrán existir datamarts para el área de ventas, de finanzas, para el departamento de

recursos humanos, etc.

Es un concepto que ha tomado bastante relevancia principalmente debido a la complejidad que

implica la implantación de un data warehouse. Es por ello que muchas veces se avanza sobre

proyectos que consideran la implantación de datamarts.

5. Los factores críticos.

En este apartado se explican algunos criterios que deben considerar quienes construyan e

implementen este tipo de soluciones, principalmente en lo referente a consideraciones o enfoques

acerca de su diseño, construcción e implantación.

5.1. Se trata de un desarrollo a medida.

Un primer punto que vale la pena destacar es que una solución de business Intelligence / data

warehouse necesita un proyecto que se desarrolle a la medida de cada organización.

Es necesario diseñarla considerando las necesidades de la información, el tipo de decisiones que

se deben soportar y la realidad de datos que tiene cada institución en particular. Esto no quiere

decir que el software que integre este tipo de soluciones hay que desarrollarlo a medida, ya que

sería poco inteligente no aprovechar la existencia de una variedad de productos de software que

proveen herramientas para soportar estas soluciones. Lo que debe entenderse es que habrá un

conjunto importante de necesidades particulares que implicarán soluciones propias no replicables

de otras experiencias.

Sin lugar a dudas, dentro del proceso de construcción, el desarrollo del data warehouse es el que

más características de individualidad tendrá. No sólo se debe construir una base de datos que

satisfaga las necesidades de información propias de cada institución, sino que también debe

adaptarse a la realidad de los datos existentes.

13

Este segundo punto es el que más diferencia a cada solución del resto, ya que si bien las

necesidades de información en cada organización podrían definirse también como únicas, es muy

probable que una organización pueda beneficiarse en gran medida de imitar determinados modelos

que ya se usaron en otras empresas de su misma industria. Sin embargo la compleja realidad de

los datos existentes en una organización muy difícilmente se repita en otra (sobre todo en la

medida que sean instituciones de mediana o gran envergadura).

5.2. Partir desde la información o desde los datos

Como se expresó en el punto 5.1. para desarrollar una solución de estas características es

necesario considerar tanto las necesidades de información que tiene la organización, así como

entender cabalmente cual es la realidad de las fuentes de datos a partir de las cuales se podrá

nutrir el data warehouse. A partir de ello es posible considerar dos criterios opuestos para guiar el

desarrollo:

a) Partir desde las necesidades: este criterio considera que debe comenzarse por definir

claramente las necesidades de la información (que deberá proveer la solución) y a partir de allí

diseñar el data warehouse deseado.

b) Partir desde las fuentes de datos: éste considera que debe comenzarse por entender que

datos existen y a partir de allí diseñar el data warehouse posible.

Si bien a) sería lo que se impone como más criterioso, alineándose con las buenas prácticas en

sistemas, donde primero es necesario entender la necesidad a satisfacer y recién allí construir la

mejor solución, quienes defienden b) plantean que de nada sirve que los usuarios “fantaseen”

sobre que información les gustaría obtener, si luego no existen los datos necesarios para lograrlo.

Como ambos criterios tienen una verdad a considerar, se plantea como recomendación, una

tercera alternativa:

c) Equilibrio entre necesidades y datos existentes: se plantea comenzar el análisis a partir

de las necesidades de la información, que permitan fijar el alcance que determine la dirección

hacia la cual avanzar. Luego trabajar en un proceso iterativo entre la formalización de los datos

existentes, las necesidades de información y el diseño del data warehouse.

14

5.3. Redundancia.

La redundancia en las bases de datos, no debe ser considerada como una mala palabra que debe

ser eliminada de la faz de la tierra. No sólo trae perjuicios, que son los que por lo general se

mencionan cuando se estudian o pregonan los conceptos referidos a la normalización (con las

formas normales), sino que también puede traer beneficios. Es por ello que es necesario analizar

ventajas contra desventajas y decidir cuál conviene priorizar.

La redundancia es una de las principales herramientas con que se cuenta para acelerar las

consultas y la implementación de controles. El primer aspecto, que es el que interesa

principalmente al data warehouse, tiene como explicación que la redundancia posibilita almacenar

precalculados los resultados totales o parciales de las consultas.

Entre las desventajas de la redundancia, se pueden mencionar, la mayor probabilidad de que

existan inconsistencias y los mayores tiempos de actualización (ya que es ese el momento en que

se realizaría por ejemplo el “precalculo” que se mencionaba en el párrafo anterior).

En las bases de datos OLTP tiene mayor impacto las desventajas de la redundancia que las

ventajas que puede proveer. Es por ello que no es aconsejable su aplicación, salvo en casos muy

controlados y en la medida que sea la mejor entre otras alternativas que se hayan evaluado. En el

caso del data warehouse pasa lo contrario. Es una excelente solución para lograr importantes

mejoras de desempeño en las consultas. Por otra parte por lo general no es un costo significativo

el tiempo extra en la actualización que es necesario pagar por ello.

En el siguiente cuadro se detallan pros y contras de la redundancia en los dos tipos de bases de

datos.

Análisis de las necesidades de información

Alcance

Formalizar datos existentes

Necesidades de información

Diseño del data warehouse

15

Efecto que causa en las bases de datos. Características de la redundancia en las bases de datos

Base de datos OLTP Data warehouse

a. Acelerar consultas con datos precalculados

En la mayoría de los sistemas no es un beneficio significativo, debido a que la mayoría de las consultas, son sobre una cantidad de registros pequeña.

Es un beneficio significativo por que el objetivo es realizar consultas a grandes porciones de la base de datos, que en caso de estar precalculados, permite evitar recorrer todos los registros desagregados.

b. Demora la actualización de los datos, al guardar en forma redundante datos calculables (datos precalculados).

Es un perjuicio significativo, ya que en la mayoría de los sistemas la actualización es en línea, conllevando demoras en la misma. Por lo que está íntimamente relacionado con la eficiencia de las operaciones (como por ejemplo la línea de caja).

No es un perjuicio significativo, ya que en la mayoría de los casos la actualización es “batch” y no trae mayores problemas una demora en dicho proceso.

c. Existe mayor probabilidad de generar inconsistencias.

Es un perjuicio significativo, ya que existe la posibilidad de que se actualicen los datos correspondientes a una transacción en forma incompleta.

No es un perjuicio significativo, dado que los datos son una copia de otra base de datos, que contiene a los originales, y debido a que el proceso de actualización es más controlado. No obstante habrá que controlar que el ETL actualice en forma consistente todos los datos.

d. Redundancia para controles.

Pude ser un beneficio y un perjuicio significativo a la vez. Puede ser una herramienta muy importante para insertar controles que mejoren la confiabilidad de los datos almacenados (digito verificador, totales de control, registros duplicados en distintos servidores, etc), pero por el otro lado tiene los mismos perjuicios que los vistos en el retraso de la actualización.

No es significativo, ya que la actualización está controlada desde el ETL y se está realizando una copia de los sistemas transaccionales donde deberían estar dichos controles.

Observación: En el punto b es necesario realizar la siguiente salvedad: existen procesos de ETL donde el volumen de datos y la complejidad de los procesos hacen que los periodos de inactividad de los sistemas de nivel operativo no alcancen para su ejecución. En estos casos mayor redundancia puede transformarse en un perjuicio significativo.

5.4. El costo de la integración de datos y el nivel de desagregación.

Como se explicó en forma precedente la construcción de un data warehouse implica diseñar e

implantar una base de datos integrada. Es por ello, que salvo rarísimas excepciones, ello implica

una ardua tarea que permita integrar en una única base, datos que se vienen almacenando (y

seguramente se seguirán almacenando) en forma descentralizada.

Esta actividad de integración tiene dos componentes principales, uno el del diseño y generación de

una base de datos que pueda contemplar las distintas realidades parciales que se deben conjugar,

y el otro el del diseño y desarrollo de los procesos ETL que deberán mapear el contenido de las

fuentes de datos con el data warehouse.

Esta actividad probablemente sea una de las que más tiempo y recursos insuma en la construcción

16

de una solución de este tipo, ya que implica conocer adecuadamente los modelos de cada una de

las fuentes de datos, conocer las necesidades de información para la toma de decisiones, y

comenzar a trabajar en forma conjunta entre el diseño del data warehouse y de los ETL necesarios

para llenarlo con datos homogéneos y de calidad aceptable.

Ya que los cambios en la solución que se implemente serán inevitables, sobre todo por que es

normal que las necesidades de los tomadores de decisiones deban adaptarse constantemente,

tener que encarar este proceso de integración cada vez que haya que implementar modificaciones

conlleva una solución no sustentable en el tiempo.

Por este motivo es que el diseño de la solución debe ser fácilmente adaptable a los cambios y no

estático a las necesidades específicas del momento de su construcción.

En línea con este análisis se planteó en la sección anterior la arquitectura con un data warehouse

desagregado (“objetivo”) que fuera el que tratara por única vez esta problemática, y otro subjetivo

(más orientado al software de business intelligence y el análisis del negocio) que trabajará con las

agregaciones necesarias según las necesidades de información que surjan en cada momento.

Este esquema permite que cuando surjan cambios no haya que trabajar nuevamente, o solo en

forma mínima, con la integración; porque dichos datos ya existirán en el data warehouse objetivo.

Solamente habrá que adaptar el data warehouse subjetivo, que es una tarea más fácil de

implementar.

5.5. Del data warehouse al datamart o a la inversa ?

El uso de datamart en el proceso de construcción, es otro aspecto que divide posturas opuestas.

Una de ellas recomienda construir el data warehouse desde los datamats, por lo tanto pregona que

primero se vayan realizando proyectos de construcción de datamarts que cubran distintas

necesidades parciales de la organización, como sería el caso del datamarts para el departamento

de ventas, de recursos humanos, de compras, de finanzas, de producción, etc. y luego desde estas

soluciones avanzar hacia la construcción del data warehouse que integre estas soluciones.

La otra postura plantea la construcción del data warehouse primero, y recién luego avanzar hacia

los datamarts en la medida que los mismos sean necesarios. Es decir, el camino exactamente

inverso.

Los patrocinadores del segundo camino expresan con razón que encarar una solución bajo la

17

primera postura, conserva el problema de las visiones parciales desintegradas, y hasta las agrava

por que las consolida mediante el datamart. En cambio los que propician lo contrario, plantean

también con razón, que es imposible encarar un data warehouse en forma integral, sobre todo en

organizaciones medianamente complejas, y que por ello la única solución es comenzar con

soluciones más pequeñas como son los datamarts.

Como se desprende del párrafo anterior, ambas posturas tienen causas razonables, y es por ello

que mi recomendación es comenzar con soluciones chicas, como es un datamart, que permita

mostrar un resultado en el mediano plazo y de esta forma conseguir mayor apoyo para la

continuación del proyecto, pero a la hora de continuar sumando otras áreas de la organización, no

hacerlo construyendo otro datamarts, sino integrando las mismas a un único data warehouse.

Luego si es necesario se podrán subdividir datamarts.

5.6. El recupero de la inversión.

Los proyectos de tecnologías de la información (TI) en general, y los de data warehouse / business

intelligence en particular, son inversiones de capital que, como tales, deben competir con otras

inversiones de la organización. Es por ello que es frecuente la solicitud de justificación de un

proyecto de esta naturaleza desde una perspectiva que demuestre por qué usar el dinero en éste,

en lugar de usarlo en otro proyecto de inversión ya sea de TI o no.

Para calcular el recupero de una inversión de capital se suelen utilizar algunos de los métodos más

conocidos, como el ROI, TIR, VAN, etc.

Estos métodos son de utilidad tanto en la fase inicial, para justificar la factibilidad económica de

realizar el proyecto, como luego de su implementación, para evaluar el desempeño de la solución

lograda.

Para usar cualquiera de estos métodos se necesita especificar los flujos de ingresos y egresos del

proyecto que permitirán realizar el calculo numérico que arroje finalmente el resultado.

Obtener el flujo de egresos al finalizar el proyecto no tiene mayores problemas, ya que los costos

son fácilmente calculables (si se registraron adecuadamente). Para obtenerlo al inicio de un

proyecto hará falta una estimación de los mismos, en los que tendrá fundamental importancia la

utilización de determinadas técnicas de estimación así como la experiencia del administrador de

proyectos.

Pero el principal problema para el cálculo del recupero de la inversión está dado en la

18

determinación de los ingresos a los que se arribará como resultado de la implementación de la

solución (que podrán ser ingresos reales o disminución de costos).

Los ingresos que se generen por la implementación de una solución de este tipo dependerán muy

fuertemente del nivel de las decisiones que se tomen al usar la información que les brindará. Es

decir, en gran parte por la capacidad de los decisores que la usen. Es por ello, que será

sumamente difícil estimar los ingresos al inicio del proyecto, pero inclusive igual grado de dificultad

podrá tener su determinación al final del mismo, donde si bien se podrán observar nuevos ingresos

desde su implementación, habrá que determinar cuantos de ellos son asignables a la información

obtenida por los decisores.

No obstante lo dicho, creo que igualmente debe justificarse económicamente un proyecto de esta

naturaleza, dejando claro que la misma estará muy lejos de ser exacta. Es decir, que por un lado

se deben estimar los costos y por otro lado ejemplificar que tipo de decisiones debería permitir esta

solución para lograr los ahorros o ingresos que lo justifiquen.

Para esquematizar los tipos de decisiones conviene dividirlas entre ingresos duros (reducción de

costos, retención de clientes, adquisición de nuevos clientes, aumento de la porción del mercado,

etc.) e ingresos blandos (aumento de la satisfacción del cliente, empleados más satisfechos,

empleados con mayor autonomía, aumento de la imagen organizacional, etc.).

5.7. Que se use la solución: todo un desafío.

Como en tantos otros proyectos de TI, la construcción es relativamente fácil en relación a lo difícil

que puede ser que el producto desarrollado finalmente se use y que le brinde beneficios a la

organización usuaria.

Las soluciones que aquí se plantean, no son la excepción a este comentario, e inclusive tener que

trabajar con los niveles altos de una organización los convierte en proyectos más vulnerables.

Estos usuarios suelen ser más complicados que el resto, dado el poco tiempo que están

dispuestos a destinar, lo poco dispuestos que se encuentran para acatar instrucciones o recibir

capacitación.

Para lograr una buena implementación hay que conseguir que desde el inicio los potenciales

usuarios entiendan y “comprendan” los beneficios que les proveerá la solución. Otro aspecto

relevante es comenzar a pensar en la implementación desde las etapas iniciales de la

construcción. En este sentido se debe generar una relación con los usuarios, durante el desarrollo,

pensando en la implementación. Por ejemplo, considerando sus decisiones de diseño, sus

19

opiniones y haciéndolos sentir en todo momento que el proyecto es suyo.

Los proyectos de data warehouse / business intelligence suelen destinar mucho tiempo para

resolver los aspectos tecnológicos, sin hacer lo propio en las tareas que permitan una adecuada

implementación. Esto se debe a que en muchas ocasiones pareciera que es posible desarrollar la

solución sin la participación de los usuarios, y que, como se dijo antes, muchos usuarios dado su

escaso tiempo prefieren que avancen sin ellos.

Quienes opinan que es posible llegar a un producto sin consensuar demasiado con los usuarios,

tienen razón, pero también deben entender que deberán poner en duda la factibilidad de su

implementación. En la mayoría de los casos, cuando no se involucró a los usuarios desde el

principio, no se dedica el debido tiempo para lograr una comunicación adecuada y fructífera, luego

del desarrollo ya será tarde.

La inexistencia de una adecuada comunicación es la mayor causa de los fracasos, y no la no

resolución de los aspectos técnicos del data warehouse, o de haber elegido la herramienta

informática errada. Posiblemente haya que rever las prioridades a la hora de dedicar tiempos y

recursos.

5.8. La única verdad ?

Se ha planteado al inicio de este trabajo, en “los tres problemas del OLTP”, que los sistemas

operacionales para brindar información para la toma de decisiones muchas veces tienen el

inconveniente de brindar visiones parciales y que, en muchos casos, ofrecen distintas visiones de

una misma realidad, y no es fácil determinar cual es la verdadera. Por ejemplo cuando el Gerente

de marketing dice que el importe vendido en lo que va del año es de $1.000.000, mientras que el

de Finanzas por su parte consigue información de sus sistemas por $1.250.000 y el de Ventas por

$800.000: cuál tiene razón ? cada uno está tomando decisiones para la misma empresa pero

mirando realidades distintas.

Es por ello que se plantea como una solución el data warehouse, que permite integrar en una sola

base de datos una representación integrada de la realidad de la organización. Sobre ella se

trabajará con herramientas de business intelligence que permitan a todos los decisores obtener

exactamente la misma información. Siguiendo con el caso planteado todos verían, por ejemplo,

que las ventas en el año ascendieron a $1.100.000.

No obstante lo dicho, es fundamental que quienes implementen soluciones de data warehouse /

business intelligence reflexionen que con la mera implantación de estas soluciones no

20

necesariamente se resolverá el problema original. Por el contrario podría agravarse, como suele

suceder cuando se piensa que un problema está resuelto sin que sea cierto (ya que se

despreocupa del mismo).

Por más que exista un indicador unificado, y que cualquier persona que consulte el data warehouse

obtenga el importe de $ 1.100.000 para las ventas, lo que puede no estar unificada es la

interpretación que cada decisor hace de dicho indicador. Es decir, cómo se construyó el número

mostrado (por ejemplo si incluye o no impuestos, si descuenta bonificaciones o promociones, si

incluye los productos discontinuados, etc.). Según la compresión que haga el decisor de dicho

indicador es la decisión que finalmente tomará, y esto es lo que realmente importa.

En el ejemplo (importe vendido) es una variable bastante sencilla, mucho peor será en otras de

construcción más ambigua, como sería la rentabilidad, el valor de un cliente, etc. Es por ello que si

se desea mejorar la percepción unificada de la realidad, por parte de los distintos decisores de la

organización, será deseable incorporar explicaciones accesible por los usuarios acerca de su

significado (ello incluye describir como se calculan dichas variables).

6. Conclusión

Mucho se ha dicho y escrito sobre las falencias que existen en las organizaciones, a la hora de

obtener información adecuada para la toma de decisiones, sobre los aportes que pueden hacer en

este sentido las soluciones de business intelligence (y los data warehouse) y sobre las formas que

deben asumir dichas tecnologías. Pero quienes deben encarar estos proyectos, muchas veces, no

comprenden en profundidad los problemas con los que se enfrentan e intentan simplemente

implantar una tecnología, desconociendo temas que exceden dichas fronteras, y ameritan análisis,

estudio y reflexión de una problemática compleja.

Este trabajo, así como la publicación en la que este autor está trabajando, intentan abordar este

camino, a la espera de generar alertas y disparadores para futuros debates, que nos permitan

mejorar las soluciones que las organizaciones necesitan, para que buenas decisiones en

tecnología implique buenas decisiones de negocio.

21

Bibliografía:

• Silberschatz, Korth, Sdarshan. “Fundamentos de Bases de datos”. Quinta Edición. Mc Graw Hill. Madrid, 2006.

• Thomas M. Connolly, Carolyn E. Begg. “Sistemas de bases de datos”, Cuarta edición. Pearson Educación. Madrid, 2005.

• Jose Hernández Orallo, M. José Ramírez Quintana, César Ferri Ramírez. “Introducción a la Minería de Datos”. Pearson Educación. Madrid, 2004.

• Elizabeth Vitt , Michael Luckevich, Stacia Mister. “Business Intelligence, técnicas de análisis para la toma de decisiones estratégicas”. Mc Graw Hill. 2003

• Ralph Kimball, Margy Ross. “The Data Warehouse Toolkit", Segunda edición. Wiley, EEUU 2002.

• Kenneth C. Laudon, Jane P. Laudon. “Sistemas de Información Gerencial”, Sexta edición. Pearson Education. Mexico, 2002.

• Robert Kaplan, David Norton. “Cuadro de Mando Integral (The balance scorecard)”. Gestión 2000. Barcelona, 2002.

• Effy Oz. “Administración de sistemas de información”, Segunda edición. Thomson. 2001.

• Jill Dyché. “E-data” Prentince Hall. Buenos Aires, 2001.

• Jean-Michel Franco, EDS-Institut Prometheus. “El Data Warehouse. El Data Mining”. Gestión 2000. Barcelona, 1997.

• Harjinder S. Gill, Prakash C. Rao. “Data Warehousing. La integración de información para lamedor toma de decisiones”. Pretince Hall. México, 1996.

• William H. Inmon. "Building the Data Warehouse". Wiley, EEUU 1992.

ACTIVIDADES Con sus propias palabras describa los problemas de los sistemas operacionales y justifique porqué son resueltos con las herramientas de data warehouse y business intelligence. Con sus propias palabras describa qué es un data warehouse, datamart y business intelligence. Cuáles son sus aplicaciones en un entorno de negocios ? Cómo puede justificar proyectos de data warehouse y business intelligence