SlideShare une entreprise Scribd logo
1  sur  21
#GX2508 Como Implementar un Data Warehouse de manera paulatina Enrique Iglesias enrique@credimas.com.ar
¿Situaciones comunes? “Tenemos muchísimos Datos en los sistemas, pero nos falta Información para decidir” ¿Qué hacemos? “La implementación del Data Warehouse parece muy compleja hay muchas opciones, pero no tenemos tiempo para aprender y necesitamos resultados rápidos” ¿Cómo lo hacemos? “Lo logramos!!! tenemos el Data Warehouse funcionando, pero ahora no es suficiente los usuarios quieren más” ¿Cómo seguimos?
Temas a tratar
¿Qué es un Data Warehouse? “Es un Repositorio de Datos organizado de manera de facilitar el análisis de los mismos para obtener Información” Los datos están organizados en: “Indicadores”: son valores numéricos que permiten medir la performance del Negocio “Dimensiones”: son perspectivas o filtros sobre los cuales puede analizarse los indicadores
¿Qué es un Data Warehouse? Para representar los Datos se utiliza un “Modelo Dimensional”, dicho modelo puede tener esquema: “Copo de Nieve (Snowflake)” “Estrella (Star)” Los datos pueden o no estar resumidos en el Data Warehouse
¿Qué Problemas se presentan? El “Modelo Dimensional” es diferente al “Modelo Relacional” al que estamos acostumbrados por lo cual hay que aprender algo nuevo. La conversión de un modelo a otro requiere un programa de conversión (ETL) que puede ser difícil de desarrollar.
¿Qué Problemas se presentan? Se requiere tiempo para aprender y desarrollar pero también es necesario mostrar resultados. A medida que comienza a utilizarse el Data Warehouse surgen nuevas necesidades que implican incorporar Dimensiones e Indicadores, por lo cual el diseño debe permitir adaptación constante.
¿Cómo Implementarlo con Éxito? Utilizar una metodología Incremental atacando paulatinamente un Producto o Proceso de Negocio por vez:
¿Cómo Implementarlo con Éxito? ,[object Object],Nuevo Data Mart Clientes: 5 Indicadores y 10 Dimensiones Nuevo Data Mart Negocios:  3 Indicadores y 8 Dimensiones Ampliación Data Mart Clientes: 10 Indicadores y 30 Dimensiones Nuevo Data Mart Adelantos: 3 Indicadores y 15 Dimensiones  Ampliación Data Mart Clientes: 16 Indicadores y 75 Dimensiones …. Data Warehouse Integrado: actualmente nuestro Data Warehouse posee 70 indicadores y 200 dimensiones
¿Cómo Implementarlo con Éxito? ,[object Object]
Esquema Copo de Nieve (Snowflake) para las Dimensiones de Fecha:Año [dwAnio.AnioDsc] Mes Letras [dwMes.MesDsc] Fecha(DD/MM/AAAA) [dwDia.AnioMesDia] Día de la Semana [dwDiaSem.DiaSemDsc]
¿Cómo Implementarlo con Éxito? EquemaEstrella (Star) para las Dimensiones de Fecha: Año [dwDate.DateYear] Mes Letras [dwDate.DateCMonth] Fecha (DD/MM/AAAA) [dwDate.DateDes] Día de la Semana [dwDate.DateCDow] Mes Número [dwDate.DateMonth] Día Número [dwDate.DateDay] Año/Mes (AAAA/MM)[dwDate.DateYYMM] Mes Abreviado (mmm-AA)[dwDate.DateCMes] Año Contable [dwDate.DateYCont]
¿Cómo Implementarlo con Éxito? No Resumir los datos en el Data Warehouse por ninguna dimensión,de esta manera el diseño es mas flexible para la incorporación de nuevas dimensiones.
¿Cómo Implementarlo con Éxito? Clientes Registrados:
¿Cómo Implementarlo con Éxito? Adelantos en Efectivo:
¿Cómo hacerlo en GeneXus? ,[object Object]
Con Gxplorer / GXquery
Crear Metadata con “Paradigma Atributos” en GXplorer Manager o con GXquery Manager
Acceder desde GXplorer / GXquery
Con Objeto Query
Crear Objetos Query con las consultas a realizar

Contenu connexe

Similaire à 066 como implementar un data warehouse de manera paulatina

Implementando un Data Mart con SQL Server 2016
Implementando un Data Mart con SQL Server 2016Implementando un Data Mart con SQL Server 2016
Implementando un Data Mart con SQL Server 2016Raul Martin Sarachaga Diaz
 
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)Titiushko Jazz
 
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)Titiushko Jazz
 
I Congreso de inmersión de Ciencia de datos
I Congreso de inmersión de Ciencia de datosI Congreso de inmersión de Ciencia de datos
I Congreso de inmersión de Ciencia de datosNatali Lujan Allende
 
Minería de datos Presentación
Minería de datos PresentaciónMinería de datos Presentación
Minería de datos Presentaciónedmaga
 
Minera de-datos-presentacin-1205263710628735-3
Minera de-datos-presentacin-1205263710628735-3Minera de-datos-presentacin-1205263710628735-3
Minera de-datos-presentacin-1205263710628735-3Climanfef
 
2 Desa Sincrono 2 Caso Modelamiento.doc
2 Desa Sincrono 2 Caso Modelamiento.doc2 Desa Sincrono 2 Caso Modelamiento.doc
2 Desa Sincrono 2 Caso Modelamiento.docaldair441257
 
Measure camp BCN 2017 - Marc Heymann
Measure camp BCN 2017 - Marc HeymannMeasure camp BCN 2017 - Marc Heymann
Measure camp BCN 2017 - Marc HeymannThe ducks in a row
 
Semana 3 - Bases de Datos Avanzadas - Big Data - Sesion 3.pdf
Semana 3 - Bases de Datos Avanzadas - Big Data - Sesion 3.pdfSemana 3 - Bases de Datos Avanzadas - Big Data - Sesion 3.pdf
Semana 3 - Bases de Datos Avanzadas - Big Data - Sesion 3.pdfromaldonolascorojas1
 
Cuadro de Mando Integral (Balanced Scored Card)
Cuadro de Mando Integral (Balanced Scored Card)Cuadro de Mando Integral (Balanced Scored Card)
Cuadro de Mando Integral (Balanced Scored Card)jorgven
 
Conceptos de minería de datos
Conceptos de minería de datosConceptos de minería de datos
Conceptos de minería de datosedwin
 
Introducción al análisis predictivo con SQL Server
Introducción al análisis predictivo con SQL ServerIntroducción al análisis predictivo con SQL Server
Introducción al análisis predictivo con SQL ServerEduardo Castro
 

Similaire à 066 como implementar un data warehouse de manera paulatina (20)

Implementando un Data Mart con SQL Server 2016
Implementando un Data Mart con SQL Server 2016Implementando un Data Mart con SQL Server 2016
Implementando un Data Mart con SQL Server 2016
 
Taller einstein analytics
Taller einstein analyticsTaller einstein analytics
Taller einstein analytics
 
Trabajo final
Trabajo finalTrabajo final
Trabajo final
 
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
 
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
 
Inteligencia de Negocios – Data Warehouse
Inteligencia de Negocios – Data WarehouseInteligencia de Negocios – Data Warehouse
Inteligencia de Negocios – Data Warehouse
 
I Congreso de inmersión de Ciencia de datos
I Congreso de inmersión de Ciencia de datosI Congreso de inmersión de Ciencia de datos
I Congreso de inmersión de Ciencia de datos
 
Minería de datos Presentación
Minería de datos PresentaciónMinería de datos Presentación
Minería de datos Presentación
 
Minera de-datos-presentacin-1205263710628735-3
Minera de-datos-presentacin-1205263710628735-3Minera de-datos-presentacin-1205263710628735-3
Minera de-datos-presentacin-1205263710628735-3
 
Kdd fase1
Kdd fase1Kdd fase1
Kdd fase1
 
Proyecto de base ii
Proyecto de base iiProyecto de base ii
Proyecto de base ii
 
Fundamentos dw
Fundamentos dwFundamentos dw
Fundamentos dw
 
Balanced Scoredcard
Balanced ScoredcardBalanced Scoredcard
Balanced Scoredcard
 
2 Desa Sincrono 2 Caso Modelamiento.doc
2 Desa Sincrono 2 Caso Modelamiento.doc2 Desa Sincrono 2 Caso Modelamiento.doc
2 Desa Sincrono 2 Caso Modelamiento.doc
 
Measure camp BCN 2017 - Marc Heymann
Measure camp BCN 2017 - Marc HeymannMeasure camp BCN 2017 - Marc Heymann
Measure camp BCN 2017 - Marc Heymann
 
Semana 3 - Bases de Datos Avanzadas - Big Data - Sesion 3.pdf
Semana 3 - Bases de Datos Avanzadas - Big Data - Sesion 3.pdfSemana 3 - Bases de Datos Avanzadas - Big Data - Sesion 3.pdf
Semana 3 - Bases de Datos Avanzadas - Big Data - Sesion 3.pdf
 
Cuadro de Mando Integral (Balanced Scored Card)
Cuadro de Mando Integral (Balanced Scored Card)Cuadro de Mando Integral (Balanced Scored Card)
Cuadro de Mando Integral (Balanced Scored Card)
 
Hablemos de Big Data
Hablemos de Big DataHablemos de Big Data
Hablemos de Big Data
 
Conceptos de minería de datos
Conceptos de minería de datosConceptos de minería de datos
Conceptos de minería de datos
 
Introducción al análisis predictivo con SQL Server
Introducción al análisis predictivo con SQL ServerIntroducción al análisis predictivo con SQL Server
Introducción al análisis predictivo con SQL Server
 

Plus de GeneXus

After Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsAfter Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsGeneXus
 
Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!GeneXus
 
Live Editing in Action
Live Editing in ActionLive Editing in Action
Live Editing in ActionGeneXus
 
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...GeneXus
 
¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?GeneXus
 
K2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroK2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroGeneXus
 
Sd y Plataformas
Sd y PlataformasSd y Plataformas
Sd y PlataformasGeneXus
 
PXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosPXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosGeneXus
 
APPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaAPPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaGeneXus
 
GeneXus 4 Students
GeneXus 4 StudentsGeneXus 4 Students
GeneXus 4 StudentsGeneXus
 
La importancia de ser responsive
La importancia de ser responsiveLa importancia de ser responsive
La importancia de ser responsiveGeneXus
 
K2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusK2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusGeneXus
 
GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus
 
GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus
 
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosLigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosGeneXus
 
Innovando con GeneXus y SAP
Innovando con GeneXus y SAPInnovando con GeneXus y SAP
Innovando con GeneXus y SAPGeneXus
 
Going mobile
Going mobileGoing mobile
Going mobileGeneXus
 
Audit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusAudit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusGeneXus
 
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusWW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusGeneXus
 
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...GeneXus
 

Plus de GeneXus (20)

After Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsAfter Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) Bots
 
Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!
 
Live Editing in Action
Live Editing in ActionLive Editing in Action
Live Editing in Action
 
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
 
¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?
 
K2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroK2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuro
 
Sd y Plataformas
Sd y PlataformasSd y Plataformas
Sd y Plataformas
 
PXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosPXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivos
 
APPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaAPPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industria
 
GeneXus 4 Students
GeneXus 4 StudentsGeneXus 4 Students
GeneXus 4 Students
 
La importancia de ser responsive
La importancia de ser responsiveLa importancia de ser responsive
La importancia de ser responsive
 
K2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusK2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXus
 
GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus 15 (Salto)
GeneXus 15 (Salto)
 
GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.
 
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosLigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
 
Innovando con GeneXus y SAP
Innovando con GeneXus y SAPInnovando con GeneXus y SAP
Innovando con GeneXus y SAP
 
Going mobile
Going mobileGoing mobile
Going mobile
 
Audit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusAudit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXus
 
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusWW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
 
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
 

066 como implementar un data warehouse de manera paulatina

  • 1. #GX2508 Como Implementar un Data Warehouse de manera paulatina Enrique Iglesias enrique@credimas.com.ar
  • 2. ¿Situaciones comunes? “Tenemos muchísimos Datos en los sistemas, pero nos falta Información para decidir” ¿Qué hacemos? “La implementación del Data Warehouse parece muy compleja hay muchas opciones, pero no tenemos tiempo para aprender y necesitamos resultados rápidos” ¿Cómo lo hacemos? “Lo logramos!!! tenemos el Data Warehouse funcionando, pero ahora no es suficiente los usuarios quieren más” ¿Cómo seguimos?
  • 4. ¿Qué es un Data Warehouse? “Es un Repositorio de Datos organizado de manera de facilitar el análisis de los mismos para obtener Información” Los datos están organizados en: “Indicadores”: son valores numéricos que permiten medir la performance del Negocio “Dimensiones”: son perspectivas o filtros sobre los cuales puede analizarse los indicadores
  • 5. ¿Qué es un Data Warehouse? Para representar los Datos se utiliza un “Modelo Dimensional”, dicho modelo puede tener esquema: “Copo de Nieve (Snowflake)” “Estrella (Star)” Los datos pueden o no estar resumidos en el Data Warehouse
  • 6. ¿Qué Problemas se presentan? El “Modelo Dimensional” es diferente al “Modelo Relacional” al que estamos acostumbrados por lo cual hay que aprender algo nuevo. La conversión de un modelo a otro requiere un programa de conversión (ETL) que puede ser difícil de desarrollar.
  • 7. ¿Qué Problemas se presentan? Se requiere tiempo para aprender y desarrollar pero también es necesario mostrar resultados. A medida que comienza a utilizarse el Data Warehouse surgen nuevas necesidades que implican incorporar Dimensiones e Indicadores, por lo cual el diseño debe permitir adaptación constante.
  • 8. ¿Cómo Implementarlo con Éxito? Utilizar una metodología Incremental atacando paulatinamente un Producto o Proceso de Negocio por vez:
  • 9.
  • 10.
  • 11. Esquema Copo de Nieve (Snowflake) para las Dimensiones de Fecha:Año [dwAnio.AnioDsc] Mes Letras [dwMes.MesDsc] Fecha(DD/MM/AAAA) [dwDia.AnioMesDia] Día de la Semana [dwDiaSem.DiaSemDsc]
  • 12. ¿Cómo Implementarlo con Éxito? EquemaEstrella (Star) para las Dimensiones de Fecha: Año [dwDate.DateYear] Mes Letras [dwDate.DateCMonth] Fecha (DD/MM/AAAA) [dwDate.DateDes] Día de la Semana [dwDate.DateCDow] Mes Número [dwDate.DateMonth] Día Número [dwDate.DateDay] Año/Mes (AAAA/MM)[dwDate.DateYYMM] Mes Abreviado (mmm-AA)[dwDate.DateCMes] Año Contable [dwDate.DateYCont]
  • 13. ¿Cómo Implementarlo con Éxito? No Resumir los datos en el Data Warehouse por ninguna dimensión,de esta manera el diseño es mas flexible para la incorporación de nuevas dimensiones.
  • 14. ¿Cómo Implementarlo con Éxito? Clientes Registrados:
  • 15. ¿Cómo Implementarlo con Éxito? Adelantos en Efectivo:
  • 16.
  • 17. Con Gxplorer / GXquery
  • 18. Crear Metadata con “Paradigma Atributos” en GXplorer Manager o con GXquery Manager
  • 21. Crear Objetos Query con las consultas a realizar
  • 22.
  • 23. ¿Cómo hacerlo en GeneXus? Desde Objeto Query:
  • 24. Resumiendo … 1 Paulatinamente por Producto o Proceso 2 Modelo Dimensional Esquema Estrella 3 No Resumir por ninguna Dimensión
  • 25. Para profundizar los conceptos Artículos Interesantes: www.kimballgroup.com Libros:
  • 26. Conferencias relacionadas BI AGIL + SaaS + Cloud = TDA, Sala 2A Martes 12:15 Sacándole el jugo al Objeto Query, Sala 2A Martes 10:30 Una nueva forma de hacer consultas con GXplorer 7.0, Sala 2A Martes 11:00 Enrique Iglesias, Gerente de Sistemas, Credimas S.A. enrique@credimas.com.ar

Notes de l'éditeur

  1. Me gustaría comenzar planteando situaciones que se nos fueron presentando en diferentes momentos:Inicialmente se nos presentó que nosotros como desarrolladores, sabíamos que teníamos muchos datos, pero los usuarios no lo sabían, por eso nos planteaban que les faltaba información para decidir. Nos surgió la pregunta de ¿Qué Hacemos?, es fácil implementar un Data Warehouse.Cuando comenzamos a encarar el proyecto de Data Warehouse nos dimos cuenta que parecía ser bastante mas complicado de lo que pensábamos y no disponíamos de tiempo, entonces se nos planteo “¿Como lo hacemos?”esto es lo que tratare de explicarles.Luego de implementar algunas etapas del proyecto llegamos a otra situación de éxito o de problemas? “Lo logramos!!!, pero los usuarios quieren mas. Entonces se nos planteo “¿Cómo seguimos? También encaramos esto en nuestra estrategia.
  2. Para poder exponer como lo hicimos voy a responder a estas 4 preguntas que nos planteamos en nuestra implementación.¿Que es un Data Warehouse?¿Que problemas se presentan?¿Cómo implementarlo con exíto?¿Cómo hacer en GeneXus?
  3. Básicamente un Data Warehousees un repositorio de Datos pero que esta organizado de una manera particular.Esta organización desde el punto de los usuarios es en Indicadores y Dimensiones de análisis.Los indicadores pueden ser por ejemplo la cantidad de productos u operaciones, importes vendidos o comprados, etc. Mientras que las dimensiones pueden ser las sucursales o provincias donde opera la empresa, el tipo de producto que comercializa, etc.
  4. Desde el punto de vista del desarrollador, el repositoriotambién tiene una estructura particular. El mismo esta organizado en lo que se conoce como Modelo Dimensional. Es un modelo adaptado para el análisis Multidimensional. El modelo Relacional que utilizamos normalmente esta optimizado para la actualización de datos, mientras que el modelo Dimensional esta optimizado para la consulta de datos.Dentro del Modelo dimensional existen dos variantes que se llaman esquema Copo de nieve (Snowflake) y estrella (Star), el nombre se origina en la estructura visual que presentan las tablas al dibujar los diagramas de entidades.A su vez, dentro del Modelo Dimensional es posible que por razones de performance, los datos se encuentren resumidos por diferentes dimensiones.
  5. Al iniciar nuestro proyecto de Data Warehouse nos surgieron los siguientes problemas.Como vimos ante los datos se organizan en un modelo Dimensional, el cual presenta características y reglas diferentes al modelo Relacional por lo cual hay mucho que aprender y practicar.Como los datos que queremos analizar están en un Modelo Relacional, debemos pasarlos al modelo dimensional. Esto se realiza mediante un programa llamado ETL. Por lo que comentaba antes este programa es inicialmente difícil de entender y desarrollar hasta que se adquieren los conocimientos necesarios.
  6. Lamentablemente como siempre sucede no podemos dedicarnos a estudiar y desarrollar durante el tiempo suficiente para aprender para recién mostrar resultados a la empresa.Cuando logramos implementar nuestra solución, los usuarios descubren nuevas dimensiones e indicadores por lo cual debemos volver a empezar.
  7. Para solucionar los problemas enunciados, planteamos una serie de estrategias que nos facilitaron el camino.La primera fue hacerlo de manera incremental, implementando pequeños Data Mart o unidades de análisis circunscriptas a una pequeña parte de la empresa.En nuestro caso propusimos estas etapas.
  8. A su vez cada etapa poseía diferentes iteraciones a medida que los usuarios iban aprendiendo el uso del sistema por lo cual el proyecto siguió un avance como este.
  9. Al estudiar los diferentes esquemas del modelo relacional, descubrimos que el esquema copo de nieve requería mas tablas para implementar las dimensiones de análisis. Notamos que por cada dimensión era necesario una o mas tablas para implementarlo.Además si luego queríamos aumentar dimensiones, implicaba modificar y agregar varias tablas.Les muestro como sería el caso de implementar algunos elementos de la Dimensión Fecha.
  10. Por eso estudiamos el esquema estrella, descubriendo que requería muchas menos tablas para representar múltiples dimensiones.Además al agregar dimensiones era casi siempre solo cuestión de agregar atributos a una tabla.
  11. También descubrimos que recomendaciones tradicionales de resumir los datos por las dimensiones, implicaba que al aumentar dimensiones, los datos ya cargados en el Data Warehouse no tenia valor y debíamos volver a cargarlos. Por tal motivo optamos por no resumir o agrupar los datos en el modelo, de esta manera al agregar una dimensión la misma podía incorporarse sin inconvenientes y en el peor de los casos solo se podía utilizar la dimensión de análisis para los datos cargados a posterior, pero los datos anteriores no perdían validez. En caso de presentarse problemas de performance, atacamos los mismos mediante índices de diferente tipo en la base de datos y utilizando la funcionalidad de partición de las tablas.
  12. Con estas premisas armamos uno de los primeros modelos con una estructura similar a la siguiente.Como se observa existen múltiples dimensiones que a su vez las hemos agrupado en dimensiones similares.Esta esquema que sería una representación del modelo lógico y comprensible por los usuarios, es muy similar a la implementación del modelo físico.
  13. Al llegar a la etapa de las transacciones/operaciones, podemos ver que todas las dimensiones expuestas anteriormente se convierten en dimensiones de análisis de los indicadores de las operaciones ampliando aún mas la posibilidades. Brindando además una integración de los componentes ya desarrollados.
  14. Cuando comenzamos a implementar en GeneXus, descubrimos que el paradigma propuesto de GXplorer para el análisis dimensional era el esquema copo de nieve que expusimos anteriormente, por lo cual decidimos utilizar las funcionalidades de reporting mediante el paradigma de atributos.También pudimos implementarlo en la herramienta GXquery que utilizamos para reporting.Por ultimo también pudimos utilizar nuestra estrategia desde EV1 utilizando el Objeto Query.
  15. En el caso de GXplorer y GXqueryveremos como se utilizan las dimensiones e indicadores.Podemos ver como se realiza la selección de la Dimensión Provincia dentro del grupo de Dimensiones Geográficas dentro de la Dimensión Clientes.Por otra parte vemos como se selección el indicador cantidad de clientes.
  16. Ahora vemos como se implementa la misma consulta mediante el Objeto Query observando que GeneXus genera correctamente la selección de las tablas requeridas.
  17. Para continuar aprendiendo, les recomiendo los siguientes libros sobre Modelado Dimensional y diseño de Data Warehouse.Además en la pagina del Dr. Kimball pueden encontrar muchos artículos muy interesantes sobre el tema.