miércoles, junio 21, 2006

Mi cerebro.. ¿un producto cartesiano?

Despues de algunos dias sin poder escribir he conseguido sacar algunos minutos para continuar con el blog. Estoy "cerrando" proyectos ya que en breve nacerá mi primer hijo (en 4 semanas) y no quiero dejar ningun cabo suelto.

Hoy me gustaria reflexionar sobre como estructuramos la toma de decisiones. Nuestro cerebro esta acostumbrado a realizar con precisión procesos semiestructurados, en los que hay una parte de incertidumbre que tenemos que despejar. Esto hace de los procesos decisionales algo muy complejo. Trasladarlos a un automatismo es muy complicado ya que no se puede prever con exactitud el tipo de información que vas a necesitar y anticiparte con un informe. Es esta necesidad la que hace nacer los sistemas OLAP (On-Line Analytical Process) que nos ayudarán en la ejecución de los análisis dinámicos. El más conocido de ellos es sin duda el modelo dimensional también conocido por cubos multidimensionales, pero debemos recordar que no es el único..

El modelo dimensional nos representa una actividad que es objeto de análisis a la que se denomina “hecho” y las dimensiones que caracterizan la actividad, estructuradas jerárquicamente. La información relevante sobre el “hecho” (actividad) se representa mediante el uso de medidas o indicadores. Por ejemplo para el hecho venta tendríamos los indicadores unidades y euros, y las dimensiones tiempo, producto, vendedor, zona, almacen, etc… Moviéndonos y cruzando dichas jerarquias obtenemos los valores de los indicadores que necesitamos.

Reflexionad un momento en porque siempre es necesaria la dimensión tiempo, pero tomaos un tiempo antes de seguir leyendo........
........
........
........
otra vez
........
........
........
es necesaria porque los humanos no sabemos tomar ninguna decisión sin hacer referencia a hechos sucedidos en el pasado, es decir sin utilizar nuestra experiencia. Recuerdo cierto episodio de Star Trek Deep Space Nine en que se encontraban con una forma de vida que no tenia la referencia temporal..... l¡¡¡¡ la comunicación era practicamente imposible !!!!!.... y tomar decisiones conjuntas mas todavía. Así que si eres humano necesitas la dimensión tiempo en tu sistema decisional.

Sigamos con las preguntas: ¿Que es un cubo multidimensional?........., pues es un almacén de información en el que calculo previamente todas las combinaciones de todos los niveles de la jeraquía de la dimensión con todas las dimensiones. En otras palabras; un “bonito” producto cartesiano que me almacena todas las combinaciones. El almacén de un hecho en concreto es lo que se denomina Datamart.


Un momento, ¿pero eso no es una salvajada?. Pues en cierto modo si, es una semiestructuración basada en la “fuerza” que nos garantiza poder acceder de forma rápida y sencilla a la necesidad decisional que nos salga en ese momento. Obviamente esto requiere de grandes cantidades de procesos de cálculo y de un almacén de datos que ya no tiene por que ser una base de datos relacional (diseñado para la transacción) sino que puede ser una de las modernas bases de datos multidimensionales, diseñadas específicamente para hacer eficiente este modelo de semiestructuración de la información.

¿Es esta la mejor forma de acometer un sistema decisional?
¿Es mi cerebro un conjunto de productos cartesianos que utilizan la dimension tiempo?
¿Como puedo agilizar entonces la toma de decisiones con un metodo tan poco "agil"?

16 comentarios:

Antonio Valle dijo...

Joder, jorge.. te aseguro que no lo se. Mi sistema de toma de decisiones (que por otra parte siempre me ha funcionado mas o menos bien) es, ¿como te lo diria? Intuitivo. La decision "aparece" en mi mente sin seguir nunca un proceso claro... hay "algo" que me dice cual es la mejor opcion, y no te creas que fallo en el 50% de los casos!

Anónimo dijo...

te pillat!

jorges fernandez gonzalez suposo que n'hi ha bastants, però que hi comenti un tal antonio valle i tracti de sistemes desicionals, no crec que n'hi hagin gaires.

molta sort amb el blog.

FIB power!

PD:podries penjar l'enunciat de SIO aquí un parell de dies abans ;)

Anónimo dijo...

per cert, posa un link al blog de l'antonio no?, no siguem rates ;)

Anónimo dijo...

Hola Jorge,

El texto que expones me ha hecho pensar, así que no escribas muchos más que… mi producto cartesiano no esta preparado para tanto trabajo… así que aquí va mi reflexión…

Bajo mi punto de vista, en muchos casos, creo que la toma de decisiones se realiza en mucha parte descartando opciones. Es decir que la mente hace una primer análisis (una primera pasada, como diría una amigo) sobre las opciones posibles i analiza cuales son aplicables en dicha situación. A partir de este punto sobre las soluciones aplicables analizaremos cuales son la mas apropiadas (una segunda pasada, repetiría mi amigo) …. y así sucesivamente hasta llegar a tomar una decisión.

Esto significaría que los sistemas decisionales deberían poder seleccionar las soluciones aplicables y, si pudiera ser, también las más apropiadas desarrollando así, el proceso de razonamiento para tomar una decisión.

Por lo tanto, estos deberían estar dotados de conocimiento, para tener la capacidad de decidir. Quizás, un gran avance seria capacitar a estos de realizar el primer filtrado, es decir, poder decidir si una opción es aplicable sobre la problemática o no.

Para realizar estos procesos de razonamiento existen muchas teorías y técnicas de Inteligencia artificial que podrían ser de gran ayuda. Pero, ¿Cual es la más adecuada? ¿Las bases de datos de conocimiento? ¿Aplicar técnicas de razonamiento? ¿Utilizar algún sistema de árboles de decisión?


Hasta pronto,

Martí

Jorge Fernández González dijo...

Me gusta la idea.
Una posible aproximación sería (si seguimos basandonos en el modelo dimensional) añadir a cada medida de las tablas de hechos unas reglas de análisis en el caso de que esta no alcance el objetivo. Se trataría de generar no solo una alerta cuando la metrica vaya mal, sino mirar cuales son las razones por las que puede ir mal, analizar de forma automática estos caminos en busca del origen del problema y en el caso de encontrarlo mostrar la guia de solución o incluso ejecutar las acciones.

Es decir, una mezcla entre motores de reglas de negocio, modelo dimensional y herramientas de gestión de procesos.

Como cúspide podriamos sazonarlo con un poco de datamining y hacer que los modelos descubiertos fueran testeados y posteriormente incorporados al motor de reglas de negocio.

Pero de esta manera estamos centrándonos de nuevo en la gestión a través de métricas como detonante de un pseudorazonamiento e intuyo que el pilar de los sistemas decisionales ágiles no ha de centrarse de nuevo en el control de métricas, sino en algo bastante mas abstracto.

El problema es que todavía no se como enfocarlo.

Jorge Fernández González dijo...

Un razonamiento al 50% como indica Antonio puede ser síntoma de que las conexiones que realizamos al razonar, no siempre siguen el mismo camino, mientras que en el modelo dimensional el camino de acceso a la información suele ser casi siempre el mismo. Esta característica debería formar parte de lo que busco.

Anónimo dijo...

Esta muy bien lo que comentas, y creo que realmente se puede llegar muy lejos siguiendo este razonamiento. Pero como tu apuntas creo que implementar-lo seria demasiado complicado. Si ya no se implementan prácticamente reglas ni alertas en muchos casos… Creo que menos se haría en un modelo dimensional.

Buscando algo un poco más práctico, quizás un cosa interesante podría ser ver que en lugar que los usuarios te especifiquen unas reglas iniciales. Estas se vayan alimentando a medida que van analizando los resultados. Es decir, hacer como un tipo de histórico de objetivos vs resultados y que el Decisor fuera informando de que valora positivamente y que negativamente. A partir de este punto seguramente se podrían deducir reglas que se podrían ir proponiendo al Decidor, el cual ratificaría dicha regla. La idea seria ir creando un poco un sistema en función de las valoraciones… Porque en la mayoría de casos cuesta mucho tiempo i reflexión establecer algún tipo de valoración y esto en el mejor de los casos… Todos conocemos el principio de Peter

Martí

Jorge Fernández González dijo...

No me parece del todo mal y creo que va en consonancia con el post que acabo de poner hace unos minutos.

Anónimo dijo...

Estimado Jorge, unas puntualizaciones. Si hablamos de BBDD Multidimensionales, entendemos o entiendo bases de datos propietarios y entonces estamos hablando efectivamente de productos cartesianos a lo bestia y NO son bases de datos relacionales. Las bases de datos multidimensionales son lo que solemos denominar MOLAP.

El ser o no un Data Mart obedece más a al alcance de la solución que al tipo de almacenamiento. Tirando de definicion de libro, las cuales conoces de sobra, un Data Mart, es exactamente igual que un DW (que no DWH) pero enfocado a una parte mas concreta del negogio, parte mas pequeña o departamento, etc, etc, etc.

En el caso de soluciones basasa en bases de datos relacionales, incialmente ROLAP, podemos tener modelos en estrella (lo más parecido a los mal llamado cubos) o modelos copo de nieve. Este tipos de modelos por concepto NO son por si mismos productos cartesianos, aunque por tecnicas de optimización tengamos incorporados mas o menos tablas agregadas, jamás llegariamos a tener las combinaciones del productos cartesiano, ademas que tampoco se pretende.

Como logicamente los tiempos de repuesta de los primeros tipos los MOLAP y de los segundos los ROLAP son bien diferentes, existen soluciones que permiten sus combinaciones, los HOLAP y otras muchas cosas que bien sabes y que poco a poco iras explicando en tu interesante blog.

Un saludo de un colega y admirador.
José María Arce.
www.josemariaarce.es

Jorge Fernández González dijo...

Efectivamente Jose Maria, tienes razón. A medida que subimos la granularidad de la información, cuanto mas agregación tenemos , los sistemas MOLAP son los mas eficientes, pero cuando en la trazabilidad del sistema decisional tenemos que llegar al nivel de detalle mas bajo, la implementacion en ROLAP es la adecuada. Cuando no podemos renunciar ni a la agregación ni al detalle, entonces necesitamos el HOLAP. Pero ultimamente me estoy encontrado con que el nivel de trazabilidad de los indicadores a veces tiene que llegar al detalle operacional vigente (esto me esta pasando mucho en los cuadros de mando)
Lo que se esta llamando BI Operacional y que tan bien has descrito en tu articulo del mes pasado (yo tambien soy un admirador tuyo
Os recomiendo a todos que visiteis http://josemariaarce.blogspot.com/)

Pues con el "BI Operacional" a mi me pasa lo mismo que a ti que no veo que el "palabro" BI tenga nada que ver con una consulta concreta.

Tiene sentido para ilustrar un aspecto en concreto de un indicador o métrica decisional pero no para monitorización continua, para eso ya estan los BAM (Business Activity Monitoring).

Lo de ir poniendo nomenclatura clásica y conceptos, los iré definiendo a medida que los vaya introduciendo en mi disertación en busca del Santo Grial.
Me alegro de volver a contactar contigo

Un saludo

Anónimo dijo...

Jorge como estas soy Jose de Datamarting.org, queria comentarte que hace unos meses escribi algo sobre la forma como se hace un reporte o consulta dentro de un sistema de toma de desiciones.

A esto le llame la tecnica de las 6 preguntas

Primero: Todas las consultas empizan siempre con la pregunta cuanto....?

Por ejemplo Cuanto vendi, cuando compre, etc,

Si la pregunta no empieza con cuanto probablmente se refiera a un listado.

Segundo: Siempre se requiere utilizar por lo menos 2 dimensiones para que un reporte tenga sentido caso contrario es un listado. (Tambien creo que si una de ellas no es tiempo, el reporte no sirve de mucho pero creo que es por que casi siempre un datamart tiene data historica y por lo tanto uno trata de separar para saber en que momento de la historia se hizo).

Tercero:
Yo siempre asocio a las dimensiones por preguntas de negocio (Incluso le pono colorcitos y algunas mariconadas que ayudan mucho a abstraerse y lograr modelos mas analiticos), por ejemplo.

Que : Producto
a Quien: Cliente
Donde : Geografia, Zona, Territorio, etc
Quien : Vendedor, Empleado, Distribuidor, Canal de Venta, Medio de promocion, etc
Cuando : Tiempo, Hora, Periodo, Ciclo.
Como : Medio de pago, Forma de pago, Contado o Credito, Tipo de embasem, tipo de embalaje, tipo de medida, etc

Por otro cuando hablas de los BI Operacionales te refires que los ROLAP (Ejemplo Microstrategy.com) tienen capacidad para ver el detalle eso es cierto pero tambien es cierto que es una locura administralos, ultimamente estoy prefiriendolo los MOLAP(Ejemplo biquery.com) por que utilizando los Drill Forzados puedes llegar a datos que estan fuera del cubo en las base de datos operativas, sin necesidad de agregar la informacion de cubo.

Jorge Fernández González dijo...

Hola Jose

La tecnica de las 6 preguntas, esta muy bien. Supongo que son Que. a Quien, Donde, Quien, Cuando y Como ¿no?

¿Que pasa cuando te dejas alguna pregunta sin responder?

Lo del tiempo es porque los humanos basamos todo nuestro conocimiento en la experiencia y siempre lo almacenamos con la coordenada tiempo.

Ojo no todos los ROLAP son BI Operacional, solo algunos pocos, generamelmente no lo son.

¿Donde tienes escrito lo de las 6 preguntas que quiero mirarlo?

Anónimo dijo...

Hola a todos:

Todos vuestros comentarios son interesantes.

Deseo conocer mas sobre estos temas y tengo algunas dudas que quisiera que me aclaren:
1. Hablar del DataWarehouse es lo mismo que hablar del modelo multidimensional.
2. Hablar de MOLAP es lo mismo que hablar del Modelo multidimesional.
3. Como se hacen las consultas en MOLAP, cual es la logica que se utiliza, como funciona internamente.
4.Se podria utilizar una BDOO para construir MOLAP.

Estas dudas nacen a raiz de que al leer muchos articulos, manuales, libros, etc. encontre que cada autor tiene un concepto direrente de cada tema por ejm para algunos decir OLAP es lo mismo al Modelo Multidimensional.

Estos conceptos me estan confundiendo.

Podrian explicarme o talvez darme direcciones en la Web donde realmente pueda encontrar infromacion confiable.

Gracias sus respuestas.

Jorge Fernández González dijo...

Vamos a ver si te puedo aclarar algo.

1. Hablar del DataWarehouse es lo mismo que hablar del modelo multidimensional.

Para nada, un modelo multidimensional es una estructura del DWH orientada a facilitat el análisis, el podernos mover por jerarquias buscando el origen del problema, este modelo lo invento Kimball pero mucho antes Inmon ya habia inventado el concepto de DWH, en el que las estructuras estan optimizadas para la consulta y el reporting, no necesariamente para el análisis.

2. Hablar de MOLAP es lo mismo que hablar del Modelo multidimesional.

Sim pero con un matiz, cuando hablamos de MOLAP estamos diciendo que nuestra estructura es multidimensional y que además la implemento en una base de datos multidimientonal, si lo hicera en una realcional hablariamos de ROLAP y si lo hiciera en una mixta hablariamos de HOLAP

3. Como se hacen las consultas en MOLAP, cual es la logica que se utiliza, como funciona internamente.

Son motores de bases de datos específicos para MOLAP, los motores que tradicionales relacionales se consultan con SQL, los multidimentionales las consultas las hacemos con MDX.

4.Se podria utilizar una BDOO para construir MOLAP.

Si lo hicieras no seria MOLAP, seria OO-OLAP (me lo acabo de inventar ;-D)

Espero que te sirva de guia

Anónimo dijo...

Hola Jorge

A LOS TIEMPOS.... Ley que me hiciste algunas preguntas:

PREGUNTA:
La tecnica de las 6 preguntas, esta muy bien. Supongo que son Que. a Quien, Donde, Quien, Cuando y Como ¿no?

RESPUESTA:
ASI ES.... OJO QUE EL CUANTO? TE AYUDA A DETERMINAR LA FACT TABLE Y SUS INDICADORES.

PREGUNTA:
¿Que pasa cuando te dejas alguna pregunta sin responder?

RESPUESTA:
HAY 2:
1.- QUE NO ESTES HABLANDO CON EL USUARIO CORRECTO YA QUE NO PUEDE O NO LE INTERESA LA RESPUESTA DE ESA PREGUNTA OARA SU ANALISIS DIARIO.

2.- QUE NO TENGA.... A VECES HAY FACT TABLE MUY SENCILLAS QUE NO RESPONDEN A TODAS LAS PREGUNTAS----OTRA COSA DEBES TENER EN CUENTA QUE
PUEDEN HABER MAS DE 1 RESPUESTA A LA PREGUNTA.

UNA BUENA PRACTICA QUE SIGO ES DE PONERLE UN COLOR DIFERENTE A CADA LOOKUP QUE RESPONDE A UNA DE LAS PREGUNTAS.


COMENTARIO:
Lo del tiempo es porque los humanos basamos todo nuestro conocimiento en la experiencia y siempre lo almacenamos con la coordenada tiempo.

AGREGO: ASI ES, ADEMAS ES EL PRIMER BECHMARK QUE NOS ENSEÑARON NUESTROS JEFES---- ES DECIR COMPARNOS CONTRA NOSOTROS MISMOS PERO EN TIEMPO DIFERENTE..... ESTOY ESCRIBIENDO ALGO SOBRE ESTO EN www.datamarting.org, ojala puedas leerlo----

COMENTARIO:
Ojo no todos los ROLAP son BI Operacional, solo algunos pocos, generamelmente no lo son.

AGREGO: QUIERES QUE TE ENVIE AL VENDEDOR DE MI COMPAÑIA.... JEJEJE-... SI TIENES RAZON PEOR NO QUE SE ENTERE LA GENTE DE MICROSTRATEGY POR QUE ME MATAN....


PREGUNTA
¿Donde tienes escrito lo de las 6 preguntas que quiero mirarlo?


RESPUESTA:
WWW.DATAMARTING.ORG

CUALQUIER COSA ME AVISAS A MI EMAIL jzarate@soluciones.cl

Anónimo dijo...

hola sabe qe buen texto escribe me gustaria qe leyera esto pues yo creo qe nuestro cerebro es como un un enorme plano carteciano pues solo con colocarle la informacion exacta te podra mostrar todo lo qe deseas pero al mismo tiempo da miedo al pensar qe alguien lograra poder colocar toda al informacion en su cerebro pues cuando sea eso, sera nuestra propia inteligencia la qe termine con nosotros bueno eso es todo felicidades