bodegas de datos y olap en unicauca virtual · no se puede hablar de dss si no se incluyen las...

12
BODEGAS DE DATOS y OLAP EN UNICAUCA VIRTUAL MARTHA MENDOZA Ingeniera de Sistemas, Magfster en Informática Departamento de Sistemas, Facultad de ingeniería Electrónica y TelecolJlunicaciones UniJ!ersidad del Cauca [email protected] CARLOS COBOS Ingeniero de Sistemas, Magíster en Departamento de Sistemas, Facultad de ingeniería Electrónica y Telecomunicaciones Universidad del Cauca [email protected] JAIME MUÑOZ Estudiante de Ingeniería de Sistemas Décimo Semestre Programa de Ingeniería de Sistemas, Facultad de ingeniería Electrónica y Telecomunicaciones Universidad del Cauca [email protected] LlSANDRO ACOSTA Estudiante de Ingeniería de Sistemas Décimo Semestre Programa de Ingeniería de Sistemas, Facultad de Ingeniería Electrónica y Telecomunicaciones Universidad del Cauca [email protected] LUIS CARWS GOMEZ FLOREZ Ingeniero de Sislemas. Magíster en Informática Escuela de Sistemas, Facultad de Ingeniertas Fisico Mecánicas Universidad Industrial de Santander [email protected] RESUMEN Fecha Recepción: 7 de marzo de 2006 Fecha Aceptación: 13 de junio de 2006 El análisis de ü?formación se ha convertido en uno de los procesos más importantes de la mayoría de empresas que manejan gran cantidad de clientes. Ellas, han encontrado en la información generada por sus propios sistemas, conocimiento valioso que les puede ayudar a mejorar sus procesos internos, mejorar la relación con los clientes, ser más competitivos, minimizar costos e incrementar utilidades entre muchas otras cosas. Sin embargo, no solamente en las empresas grandes, con procesos industriales y gran cantidad de clientes es útil el análisis de información, existen casos exitosos del uso de tecnologías de análisis en áreas como el transporte, la medicina, la biología, la química, la genética y por supuesto la educación. Es así como en la Universidad del Cauca, apoyados por el Grupo de l+D en Tecnologías de la información y Colciencias, se ha iniciado un proyecto en el cual se pretende implementar un Sistema de Soporte a la toma de Decisiones (DSS), que permita a directivos y profesores de Unicauca Virtual (Universidad Virtual del Cauca), utilizar la potencialidad de las tecno!flgías Data Warehouse y OLAP en el análisis de ü?fonnación generadas en la interacción del estudiante y el sistema gestor de aprendizaje (LMS) de Unicauca Virtual. Este artículo presenta el proceso de desarrollo de este proyecto haciendo énfasis en el modelado y la construcción de la bodega de datos en el motor de base de datos Gracle IOg Release 2. PALABRAS CLAVE: Modelado dimensional, bodega de datos, herramienta OLAP, ciclo de vida.

Upload: ngohanh

Post on 09-Jul-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

BODEGAS DE DATOS y OLAP EN UNICAUCA VIRTUAL

MARTHA MENDOZA

Ingeniera de Sistemas, Magfster en InformáticaDepartamento de Sistemas, Facultad de ingeniería Electrónica y TelecolJlunicaciones

UniJ!ersidad del [email protected]

CARLOS COBOSIngeniero de Sistemas, Magíster en ¡'~formática

Departamento de Sistemas, Facultad de ingeniería Electrónica y TelecomunicacionesUniversidad del Cauca

[email protected]

JAIME MUÑOZEstudiante de Ingeniería de Sistemas Décimo Semestre

Programa de Ingeniería de Sistemas, Facultad de ingeniería Electrónica y TelecomunicacionesUniversidad del Cauca

[email protected]

LlSANDRO ACOSTAEstudiante de Ingeniería de Sistemas Décimo Semestre

Programa de Ingeniería de Sistemas, Facultad de Ingeniería Electrónica y TelecomunicacionesUniversidad del Cauca

[email protected]

LUIS CARWS GOMEZ FLOREZIngeniero de Sislemas. Magíster en Informática

Escuela de Sistemas, Facultad de Ingeniertas Fisico MecánicasUniversidad Industrial de Santander

[email protected]

RESUMEN Fecha Recepción: 7 de marzo de 2006Fecha Aceptación: 13 de junio de 2006

El análisis de ü?formación se ha convertido en uno de los procesos más importantes de la mayoría de empresas quemanejan gran cantidad de clientes. Ellas, han encontrado en la información generada por sus propios sistemas,conocimiento valioso que les puede ayudar a mejorar sus procesos internos, mejorar la relación con los clientes, sermás competitivos, minimizar costos e incrementar utilidades entre muchas otras cosas. Sin embargo, no solamente enlas empresas grandes, con procesos industriales y gran cantidad de clientes es útil el análisis de información, existencasos exitosos del uso de tecnologías de análisis en áreas como el transporte, la medicina, la biología, la química, lagenética y por supuesto la educación. Es así como en la Universidad del Cauca, apoyados por el Grupo de l+D enTecnologías de la información y Colciencias, se ha iniciado un proyecto en el cual se pretende implementar unSistema de Soporte a la toma de Decisiones (DSS), que permita a directivos y profesores de Unicauca Virtual(Universidad Virtual del Cauca), utilizar la potencialidad de las tecno!flgías Data Warehouse y OLAP en el análisisde ü?fonnación generadas en la interacción del estudiante y el sistema gestor de aprendizaje (LMS) de UnicaucaVirtual. Este artículo presenta el proceso de desarrollo de este proyecto haciendo énfasis en el modelado y laconstrucción de la bodega de datos en el motor de base de datos Gracle IOg Release 2.

PALABRAS CLAVE: Modelado dimensional, bodega de datos, herramienta OLAP, ciclo de vida. esn"e~o O"~""~

REVISTA DE LA FACULTAD DE INGENIERíAS FI51COMECÁNICA5100

En segunda instancia construir un prototipo de unaherramienta OLAP que permita obtener y procesarinfonnación contenida en la bodega de datos, para apoyarla toma de decisiones estratégicas de los docentes ydirectivos de Unicauca Virtual. Este prototipo tendrá lassiguientes funcionalidades:

El proyecto del cnal trata este articulo, pretende en ténninosmas específicos, en primera instancia, diseñar y construiruna bodega de datos que pennita almacenar infonnaciónrelacionada con las actividades académicas que desarrollael estudiante en Unicauca Virtual y que será utilizada por elsistema de soporte a decisiones.

Unicauca VIrtual siendo un ambiente de aprendizaje virtual,planeó incluir en su segunda fase un servicio en el cual seutilicen estas tecnologías como soporte al análisis de lasdiferentes actividades que realizan los estudiantes dentrodel ambiente y que ayuden a tomar decisiones importantesque pueden afectar el desempeño del estudiante dentrodel sistema.

ÁBSTRACT

The analysis of information has become one af mostimportan! processes in majar enterprises who count witha high numberofcustomers. These Enterprises, havefoundin information generated by its own systems, valuableknowledge thal might help fa improve inner process,customers relationship, competitiveness, minimize costsand increase revenue, etc. However, not only majorenterprises with industrial process and great quantity ofcustomer, .find useful the analysis of infonnation; thereare successful cases in use of lhis kind of technology inother areas like transport, health, biology, chemistry,genetic, and education. This is why in the University aleauca, sponsored by The InfomUltion Technology Groupand Calciencias, has begun a project that want toímplement a Decision Support System (DSS), that letdirectives and teachers of Unicauca Virtual, use the datawarehouse potentiality and OLAP technologies to analyzeinfarmation generated between students and the LeamingManagement System (LMS) 01 Unicauca Virtual. Thisarticle, present the develapment process ol this projectemphasizing in modeling and constructian ol the datawarehause in the Oracle lOg Release2 database engine.

KEYWORDS: Dimensional Modeling, Data Warehouse,Online Analytical Processing (OLAP), Lije Cycle, StarSchema.

lNrRODUCOÓN

* Gestionar un conjunto de consultas analíticas (se refierea un conjunto de infOlmes o reportes que presentaninfonnación en un formato determinado, por ejemplo:graficas, estadísticas y/o, tablas) predefinidas quecumpla con las necesidades de información requeridapara apoyar la toma de decisiones estratégica de losusuarios.

Muchas empresas utilizan sistemas de información quesoportan toda su operación diaria, es decir, todas lastransacciones que se pueden generar en una jornada nonnalde trabajo. Estos sistemas permiten gestionar datos, hacerlos procesos del negocio más fácil y se caracterizan porrecolectar gran cantidad de infonnación.

* Gestionar nuevas consultas analíticas definidas por losusuarios.

Este proyecto se enmarca dentro del macroproyectoUnicauca Virtual planteado por el Grupo de !+D enTecnologías de la infonnacián (GTI) de la Universidad delCauca, que es cofinanciado por Colciencias.

La búsqueda de formas para aprovechar la informaciónalmacenada en las bases de datos transaccionales, hallevado a diferentes expertos a plantear nuevasmetodologías y estándares centrados en el análisis deinformación, conocidos en el 'ambiente tecnológico comoBodegas de Datos (Data Warehouse), ProcesamientoAnalítico en Línea (OLAP) y Minería de Datos (DataMining). Todos estos terminan convirtiéndose en sistemasinformáticos muy robustos denominados Sistemas deSoporte para la toma de Decisiones (DSS), qne son mnyutilizados por empresas en distintas áreas como: ventas,transporte, seguridad, sector financiero, medicina,educación, entre otras.

CONTEXTO TEÓRICO

Para la construcción de un DSS, se deben tener claroconceptos como: Bodegas de datos, Metodología deDesarrollo de la Bodega de Datos, y OLAP. Las definicionesde estos conceptos se presentan a continuación.

SISTEMAS DE SOPORTE PARA LA TOMA DE

DECISIONES (Dss)

Se puede pensar en los sistemas de soporte para la toma dedecisiones como sistemas que ayudan en el análisis de

BODEGAS DE DATOS Y OLAP EN UNICAUCA VIRTUAL

infonuación de negocios. Su propósito es ayudar a la administración para que "marquetendencias, señale problemas y tome.... decisiones inteligentesl! [1].

Sin embargo, no se pueden vincular los DSS solamente al mundo de los negocios ya queexisten diferentes escenarios que involucran también la toma de decisiones y en loscuales resultaría muy útil analizar información como en la genética o en la educación,como es el caso de Unicauca Virtual.

BODEGAS DE DATOS

No se puede hablar de DSS si no se incluyen las bodegas de datos, las cuales han sidoconcebidas como repositorios de gran cantidad de datos que se encuentran organizadospara optimizar' la realización de consultas y la obtención rápida información. Una definiciónfonual, dada por W.H.Inmon, expresa que lI una bodega de datos es una colección dedatos integrados, orientados a temas, que dan sopOlte a las funcionalidades del DSS,donde cada unidad de dato es relevante en algún momento en el tiempo" [2].

Por 10 general, las bodegas de datos se constituyen por unidades menores de estructurasde datos o subconjuntos lógicos denominados data marts, como se puede apreciar en laFigura la. Es decir, un data mart es una pequeña bodega de datos, que al unirse con otrosdata marts conforman la gran bodega de datos.

Analisis dI;! visualizaciónde l€ctlrSQS

Drmenslón Estudiante

24ilMSy '" Ti~llllÓ tmid dé VÍSuiíli~,)tiiilldél t«msodlfr!)tittnós t!11~fpl¡m$! fl¡me$1'f(! deJaliopal.l <!:s.fmfi,:tH1t!S ti,," 2:2 alW$.

101

Figura 1a Figura 1b Figura 1e

Figura la Representación de la formación de una bodega de datos con unidades más pequeñas llamadas "Data Marts".Figura lb. Representación de una jerarquía dentro de una dimensión. Figura le. Representación de un cubo con sus dimensiones

como ejes y las medidas.

dimensionales cuyos principales componentes son: tablas de hechos, medidas o hechos,dimensiones, jerarquías, y niveles.

Una tabla de hechos es una gran tabla dentro del data mart que almacena medidas de negocio. Latabla de hechos representa datos, usualmente numéricos y aditivos, que pueden ser analizadosy examinados (medidas). Una tabla de hechos usualmente posee dos tipos de columnas: aquellasque contienen hechos y otra que tiene las llaves foráneas hacia otras tablas [3].

Las dimensiones son estructuras de datos, a menudo compuesta de una o más jerarquías. Susatributos, ayudan a describir el valor de la(s) medida(s) en la tabla de hechos; son normalmentevalores textuales y junto a las tablas de hechos, penniten responder a preguntas del negocio [3].

102 dl9 IngeniAs REVISTA DE LA FACULTAD DE INGENIERíAS FI51CDMECÁNICAS

Las jerarquías se componen de diferentes niveles de detalle,cada valor tiene una relación padre-nivel hasta el nivelmas bajo de lajerarquía (ver Figura lb).

Todos estos componentes confonnan lo que comúnmentese denomina cubo o hyper-cubo (si tiene más de tresdimensiones), donde cada dimensión es un eje del mismo(ver Figura le).

PROCESAMIENTO ANALÍTICO EN LÍNEA

(OLAP)

El tennino OLAP fue acuñado por el Dr. E. F. Codd paradescribir una tecnología que forma un puente entre lacomputación personal y el manejo empresarial de datos.Los modelos relacionales fallaban al suministrarcapacidades analíticas para gerentes, analistas yejecutivos, Codd reconoció la necesidad de un modelomultidimensional adicional que permitiera análisis másrápidos y de mayor capacidad de las crecientes bases dedatos relacionales [6].

Formalmente se puede pensar en OLAP como la actividadgeneral de consultar y presentar datos numéricos ytextuales de una bodega de datos [3], o como el procesointeractivo de crear, mantener, analizar y realizar infonnessobre datos, añadiendo que los datos en cuestión sonpercibidos y manejados como si estuvieran almacenadosen un arreglo multidimensional [1].

En el mercado existen diferentes implementaciones OLAP,las más conocidas son:

* ROLAP (Relational OLAP): Puede ser definida comoun conjunto de aplicaciones e interfases que le dan alas bases de datos relacionales una tratamientomultidimensional [3], es decir OLAP sobre nna base dedatos relacional. Algunas características de ROLAPson [3] [7]:

* Puede manejar gran cautidad de datos: La limitacióndel tamaño de datos en la tecnología ROLAP dependede los límites de la cantidad de datos que la base dedatos pueda manejar.

* Puede apoyarse en funcioualidades iuherentes de labase de datos relacioual: A menudo, las bases de datosrelacionales ya vienen con un contenedor defuncionalidades. Las tecnologías ROLAP, desde quese ubicaron sobre las bases de datos relacionales,

pueden apoyarse en estas funciones.

* El desempeño puede ser bajo: Porque cada reporteROLAP es esencialmente una consultaSQL (o múltiplesconsultas SQL) en la base de datos relacional, laduración de la consulta puede ser larga si el tamaño dela base de datos es grande.

* Limitado para funcionalidades SQL: La tecuologíaROLAP trabaja principalmente con la generación desentencias SQL para consultar la base de datosrelacional y las sentencias SQL no cubren con todaslas necesidades de análisis, por consiguiente esnecesario que la base de datos cuente con extensionesespeciales del lenguaje SQL para el manejo de OLAPrelacional ..

* MOLAP (Multidlmensional OLAP): Suministracapacidad de análisis de datos almacenados en unsistema de base de datos multidimensional (MDBS) [6].Algunas características son [3] [7]:

* Mayor desempeño: Los cubos MOLAP son construidospara realizar una rápida recuperación de datos.

* Requieren inversión adicional: La tecnología esusualmente propietaria y aun no es muy común en lasorganizaciones. Por consiguiente, adoptar la tecnologíaMOLAP, involucra necesidades adicionales deinversión en recursos humanos y tecnológicos.

METODOLOGÍA DE DESARROLLO DE LA

BODEGA DE DATOS

Durante la etapa de investigación se encontraron variosautores quienes proponen metodologías para el desalTollode una bodega de datos, el más reconocido es R. Kimball[3], quien brinda conceptos necesarios para llevar acabo elanálisis y diseño de la bodega de datos planteada paraUnicauca Virtual. El método presentado por Kimball (verCiclo de vida de la bodega de datos) además de estarextensamente expuesto en su bibliografía, se apoya en granvariedad de ejemplos que facilitan la comprensión de losconceptos relacionados con diseño de bodegas de datos.

Existen otras metodologías que aunque no son tanconocidas podrían convertirse en buenas alternativas a lametodología propuesta por R. Kimball, como por ejemplola propuesta por Sergio Lujan Mora y Juan Trujillodenominada "Un método global basado en UML para el

BODEGAS DE DATOS Y OLAP EN UNICAUCA VIRTUAL

diseño de Almacenes de Datos ll [4] pero que aun carecen de reconocimiento practico o seencuentran en fase de desarrollo.

CICLO DE VIDA DE LA BODEGA DE DATOS

La metodología de Kimball, presenta un marco de trabajo ilustrado en la Figura 2, en la cualse muestran las diferentes etapas durante todo el proceso de creación de la bodega.

i !I DlsefÍo de la ~ Selección e 1I

;tarqUltectura : i'"~nstalación iI técnica i del producto I. ,

Definición de DiseFIO y

f Planeac"lón)+reqJerimientos Modeiado ri, Diseño ~ Desarmllo de , i I Mantenimiento )1

del proyecto '" del n8docio ~dimensional I F¡slcO : ¡nata staglng i Iespliegue y crecim iento

, i (ETL) I

,

j Especificación 11 Desarrollo de la~

Ie la aplicación

11

aplicación dede usuario Jinal usuario final

Adm inistraclón del PlDYecill 1I

_ ArquitectIJra y tecnologia._ Datos

- Aplicaciones del usuario.

Figura 2. Ciclo de vida para la construcción de una bodega de datos según Ralph Künba]J.

La fase de planeación del proyecto, pretende establecer la definición yel alcance del proyectode la bodega de datos, incluyendo la valoración y justificación del negocio. La fase dedefinición de requerimientos del negocio es donde se establece la base relacionada con latecnología, los datos y las aplicaciones del usuario.

La JUta de mayor impOltancia es la relacionada con los datos, en la cual se realiza el modeladodimensional, partiendo de los requerimientos obtenidos y de las necesidades de análisis delos usuarios; el diseño físico, el cual se enfoca en definir las estJUcturas físicas necesariaspara soportar el modelado dimensional; y la etapaETL (Extract-Transform-Load Data Staging)en la cual se diseña y desmTollan procesos para extraer, transfOlmar y cargm" datos.

Además se deben considerar otras rutas como la de tecnología en la cual se establece laarquitectura y visión general del marco de trabajo y la ruta de aplicación en la cual se definenun conjunto de aplicaciones de usuario final para consulta de datos.

Por último, a lo largo de todo el ciclo de vida se debe seguir una administración general delproyecto la cual asegura que todas las actividades del ciclo de vida se alcancen y sesincronicen.

Asimismo, este autor basado en su experiencia en la construcción de bodegas de datos,plantea una serie de soluciones para tener en cuenta en algunos casos especiales que se

103

1D4 019 /l1gel1íft, REVISTA DE LA FACULTAD DE INGENIERíAS FI51COMECÁNICAS

presentan en el momento de realizar el modeladodimensional. Estas soluciones ayudan a garantizar unabuena representación de los requerimientos del negocioseñalando conceptos relacionados con el diseño de losdatos, la arquitectura y la implementación. Estos conceptosse exponen detalladamente por el autor en dos de sus libros[3][5].

MODELADO DIMENSIONAL: El modelado dimensiona!es una técnica de diseño lógico que busca presentar losdatos en un marco de trabajo estándar que es intuitivo ypermite acceso de alto desempeño. Es inherentementedimensional y se adhiere a una disciplina que usa el modelorelacional con restricciones de consideración. Cada modelodimensional esta compuesto de una tabla con una llavemúltiple llamada tabla de hechos y un conjunto de tablasllamadas tablas dimensión. Cada tabla dimensión estacompuesta por una llave simple que correspondeexactamente a uno de los componentes de la llave múltipleen la tabla de hechos. Esta estructura característica, similara una "estrella ll es a menudo llamada IIEsquema Estrellafl[3] (ver Figura 3).

*

hasta la creación de los objetos lógicos, como porejemplo dimensiones, jerarquías, niveles, cubos,medidas, etc. Además, presenta un entorno grafico quepermite realizar el proceso de extracción, transfonnacióny carga de datos desde el sistema transaccional alesquema de la bodega de datos. Una desventaja delOWB es que carece de la creación directa de losmetadatos CWM (Cornmon Warehouse Metamodel)para los objetos.

Oracle Enterprise Manager (OEM) en las versionesde escdtorio y Web. Permite crear los objetos lógicoscon sus correspondientes metadatos CWM [9], es decir,quedan visibles para que aplicaciones de terceros quesoporten el estándar puedan trabajar con los objetosdefinidos. La consola de escritorio necesita uncomponente adicional (parche) para que quedencompletamente habilitadas las opciones de bodegasde datos. Estos componentes no son necesarios si seusa el OEM versión Web donde no se presentanrestricciones de ningún tipo y pennite crear todos losobjetos lógicos necesarios.

BODEGAS DE DATOS Y OLAP EN ORACLE

Dimensión

-Tiempo de utilización }E=:---[~~;¡:¡-Tiempo de descanso _

Tabla de hechos

Figura 3. Esquema estrella.

La bodega de datos del presente proyecto se implementaráen el motor de base de datos relacional Orade; que desdela versión 9i extiende su funcionalidad para permitir elmanejo de bases de datos multidimencionales de maneraintegrada. Como ya se menciono, existen dos formas decrear bodegas de datos: sobre una base de datos relacional(ROLAP) y sobre una base de datos multidimensional(MOLAP). .

ROLAP

Si se desea implementar rula bodega de datos relacional enGrade, se cuenta con las siguientes opciones:

* Oracle Warehouse Builder (OWB) [8]. Suministra uncompleto entorno de trabajo para realizar un proyectodesde la definición misma de las tablas relacionales

MOLAP

Si se desea implementar una bodega de datosmultidimensional en GracIe, se tienen las siguientesopciones:

* Analytic Workspace Manager (AWM) [10]. Pennitecrear la definición de los objetos multidimensionales yademás realizar la carga de datos. Los objetos creadosdesde el AWM quedan con sus correspondientesmetadalos CWM. Usando el AWM, la creación de losobjetos dimensionales (dimensiones, jerarquías,niveles, cubos, medidas, etc.) se realiza de una maneramuy cómoda ayudado por los asistentes. Sin embargo,si se encuentran problemas en el momento de hacer elmapeo de los datos, se presentan dificultades paracOlTegirlos debido a que no es fácil identificar el motivode los errores. Los objetos que se crean en]a "vista dediseñoll (AWM presenta dos opciones deimplementación, una basada en la vista de diseño yotra basada en la vista de objeto) [10] del AWM cumplencon la forma estándar para espacios de trabajoanalíticos, los cuales, tienen una gran cantidad deextensiones que no están documentadas para el usopúblico, dificultando así la comprensión de la definiciónde los objetos.

* OLAP DML [U]. Lenguaje de manipulación de objetosmultidimensionales de GracIe que extiende lascapacidades de análisis de lenguajes de consulta comoel SQL. La implementación directa en lenguaje OLAP

BODEGAS DE DATOS Y OLAP EN UN,CAUCA VIRTUAL 105

MODELOS DIMENSIONALES

PARA UNICAVCA VIRTUAL

Para identificar los temas de negocio (data marts) de esteproyecto, se utilizó la técnica de priorización derequerimientos del negocio[3], estos temas son:

* Evaluación, este terna permitirá que los usuarios de labodega de datos, obtengan información relacionadacon las evaluaciones que involucraban al estudiante ylos temas del contenido que cursa.

* Estilos de aprendizaje, que junto con el tema deevaluación y el tema de comportamiento de losestudiantes, pretende señalar la relación que existe entrelos estudiantes y los estilos de aprendizaje asociados aellos,

Comportamiento de los estudiantes, con la cual sepretende ofrecer información de las actividades que elestudiante realiza dentro del LMS,

*

Inicialmente se han enfocado todos los esfuerzos en eltema de comportamiento de los estudiantes, donde se hanidentificado una serie de indicadores que hablan de lainteracción del estudiante con el LMS. Algunos de ellosson:

Para muchos administradores de bases de datos, las tablasrelacionales y el SQL representan un ambiente de desarrollofamiliar. Por otro lado, los espacios de trabajo analíticosrequieren transformación de datos y aprender nuevosconceptos. ¿Entonces porque utilizar espacios de trabajoanalítico? La respuesta es: las grandes capacidades deanálisis y el desempeño en tiempo de ejecución representanen muchos casos el mejor soporte para la toma dedecisiones. Sin embargo, los esquemas relacionales son lamejor decisión en algunas situaciones, por ejemplo, si elalmacén de datos sopOlta la creación de reportes rutinarioscon carácter exploratorio, y ese uso aparenta ser estable.

Los espacios de trabajo analíticos S011 una buena opciónpara los siguientes requerimientos:

DML no es sencilla, teniendo en cuenta que es unlenguaje relativamente nuevo, extenso y la bibliografíaque se encuentra al respecto es bastante genérica. Loque se recomienda según expertos [JI] en el manejo debodegas de datos en Oracle, es usar AWM para ladefinición de los objetos más genéricos comodimensiones, jerarquías, etc, y el lenguaje OLAP DMLpara definir objetos más complejos y específicos comocálculos o algún tipo de operación de pronósticos.

¿ROLAPO MOLAP?

TIempo total: es el tiempo total medido en la interaccióndel estudiante con el recurso (tiempo de utilización mástiempo de descanso).

*

*

Tiempo de utilización: pennite medir el tiempo utilizadoen visualizar un detenuinado recurso.

Tiempo de descanso: permite medir el tiempo que setoma como descanso cuando se encuentra visualizandoun recurso (Objeto de Contenido Compattible-SCO Ó

Medio-ASSET).

* Indicador de visualización: indica que el estudiantevisualizo un recurso en un momento dado, sirve paracalcular el número de veces que se ha visualizado unrecurso.

*

* Consultas ad-hoc o fino genéricas ll de todas las áreasde datos,

* Cálculos avanzados como modelos, pronósticos, radiosde crecimiento y tendencias.

* Escenarios TIque pase si Tt•

>1< Cálculos en series de tiempo como retardos, elementosprincipales, promedios de movimiento.

* Cálculos complejos en tiempo de ejecución.

* Alto desempeño para calcular resúmenes de datos.

Los esquemas relacionales se pueden preferir si se tienenlos siguientes requerimientos:

* Patrones de consulta predecibles y reportespreparados.

* Cálculos no avanzados.

* Cálculos complejos en tiempo de ejecucióninfrecuentes.

* Medidas con un gran número de dimensiones.

* Dimensiones con pocos niveles de agregación.

En este momento se ha definido un esquema estrella parael terna de comportamiento de los estudiantes, que incluyelas siguientes dimensiones (ver Figura 4):

* Estudiante: esta dimensión permite mantenerinformación descriptiva del estudiante que forma partede Vnicauca VrrtuaL

* Profesor: esta dimensión permite mantener infonnacióndes'criptiva del profesor dentro de Unicauca Virtual.

* Recurso: en esta dimensión se mantienen datos

106 818 IngeniAs REVISTA DE LA FACULTAD DE INGENIERíAS FI51CDMECÁNICAS

Con este esquema estrella se pretende que los docentes ydirectivos puedan responder preguntas como:

* Tiempo de descanso que se toma un estudiante en larevisión de un recurso o un conjunto de recursos.

* El proyecto de bodega de datos para Unicauca Virtual,representa una etapa inicial de lo que puede ser en unfuturo un sistema de soporte para la torna de decisionescompleto, que incluya todas las necesidades de análisisque se puedan presentar una vez el ambiente virtual seencuentre en fase de producción. Por 10 tanto, esrecomendable realizar una implementación relacionalque soporte las necesidades de análisis que hasta elmomento se presentan, las cuales, no se encuentrandefmidas completamente y carecen de complejidad.

* Por el estado actual del macroproyecto Unicauca Virtual,el modelo dimensional obtenido hasta el momento ylos que se obtendrán al terminar el proyecto, estánsujetos a modificaciones, producto de las nuevasnecesidades de análisis de los usuarios finales. Estasmodificaciones pennitirán extenderel significado de losmodelos y la cantidad de información disponible paraanálisis.

sobre la cual soportar la estructura de los objetosmultidimencionales, es decir, un esquema relacional distintoal OLTP donde se encuentren los datos lIlimpios ll yestructurados obtenidos después de realizar el procesoEIL.

El resnltado después de la exploración tecnológica fue elesquema dimensional visualización recurso (ver Figura 4)implementado completamente en Oraele EnterpriseManager Web de forma relacional con suscorrespondientes metadatos. La implementación involucrala creación de cada una de las dimensiones, jerarquías,cubos y medidas.

Después de realizar las pruebas y tomando como base lasrecomendaciones presentadas por OracIe en el momentode decidir que tipo de implementación (ROLAP o MOLAP)es recomendable para la construcción del sistema [10J, seoptó por implementar el modelo dimensional visualizaciónrecurso enteramente relacional. Los puntos a favor de estadecisión son los siguientes:

Tiempo que pierden los estudiantes de un cursodeterminado revisando un recurso.

*

*

descriptivos de los recursos (SCO ó ASSET). Losrecursos son las unidades de información dentro deUnicauca Virtual con los cuales el estudiante interactúadirectamente para llevar a cabo su proceso deaprendizaje.

* Actividad: esta dimensión mantiene información quedescribe ampliamente cada una de las actividades otemas que se encuentran en las estructuras decontenidos y que el estudiante tiene la posibilidad derevisar.

* Curso: conserva información descriptiva de lasasignaturas y grupos que se fonnan para dictar las cIasesdentro de Unicauca Virtual.

* Fecha: guarda datos descriptivos de la fecha decalendario de los hechos ocurridos dentro del ambiente.Esta dimensión pennite obtener información de aspectosimportantes ocurridos a través del tiempo.

* Periodo: esta dimensión permite mantener datosdescriptivos de los diferentes periodos académicos quese presentan dentro del ambiente de aprendizaje virtual.

* Localidad: esta subdimensión almacena datosdescriptivos sobre las distintas localidades que semanejan para los usuarios del ambiente virtual.

El número de recursos visualizados por un estudiantedurante un periodo de tiempo dado (semana, mes,trimestre, semestre, año).

Número de recursos que visualiza un estudiante en unperiodo académico.

* Tiempo que utilizan los estudiantes de un determinadocurso para revisar un recurso.

*

* Tiempo empleado por los estudiantes para revisar unaactividad detenninada.

IMPLEMENTACIÓN DE LOS MODELOS

DIMENSIONALES EN ORACLE

Como parte de la exploración tecnológica realizada en elproyecto, se probó la implementación del esquema estrellade la Figura 4, tanto en un ambiente multidimensionalcomo en uno relacional. La realización de estas pruebasayudo a identificar que era necesario una base relacional

PROTOTIPO DE HERRAMIENTA OLAP

PARA CONSULTAR DATOS

En el mercado existen diferentes herramientas OLAP, quepermiten consultar la información de la Bodega de Datos.Oraele, por ejemplo, lTOracle Business IntelligenceSpreadsheetAdd-In", la cual se adiciona a Microsoft Excely permite a los usuarios finales desplegar y navegar a travésde los datos Orade OLAP utilizando una hoja de cálculode Excel.

BODEGAS DE DATOS Y OLAP EN UNICAUCA VIRTUAL 107

b Lcoalid~d : 1

~IP <11:1>Pa¡~ ~h:P

Region <11:6>Deparlamento <h:S>Ciudad <h:4>8.n;0 <h:3>Direccion <h:2>a

<h:1>Pais <h:7~

R~gio" ~h:6>

;-J Dep.rl~me"to ~h:5~

/7 C,u~ad <h:4~

/ Elarrio <h:3>

":~~:~~nCALlDA:h:h~

~" ~ ""- L"calidad : 3

"'tID <h;1>

Pai< <h:7>ReQico <h;6>

Deparl~mentc <h:5>Ciud~d ~h:4>

8."io <h:3>Di,eceion ~h:2>

t

//

//

/

1>.. Activl~ad

Curso

V¡';ualin elon~wrso- Estud.i~ nte... EstUdiante

",~,--------~Cc~'go univ@rsid·adIden·tificacionPrime! nombr@Segu ndo "".mbrePrimerap@llidoSegu ndo a pelll~"

GeneroEstad" civilEd~d

Correo @Iectronieo ·in~titucional

Ce,,@eelectronicope=nalSilic ,,,,eb per<on~1

Fecha ·oaoimlenloID R@si~enda

ID Pr6c~dencia

ID Nadmle"to

Vlwallz~oionReou=

'"Nombfe adlvid .. d--9'" Tipo .cl;vid~d

¡ji: Vi:>uali"'''cion R@Curso

'l~;;;;;;;;~:;,;;.;;;;;:=t&tj v",",,,,,,,,,,,-,_,,,,C:ActivI~ad, C~===,¿. Tiemp,> ~e ut¡li",,,cion l' "'Tiempo de d,;i;ean~o r-----Tiempo totalin dioador de v,iuall:;;::acicn

"IdeotificaeiooPrim~' nombreSegundo nembreP,i",~, ap@llido

Segundo apellidoGenofoEsl~do ci,,¡¡EdadCorreo el@<:'llOnieo ·;nstit~cional

Correo eie<:'lronioo personalSit; o web personalFech~ nacimientoIP R@,¡de"eiaID ProcedenciaID Na"im ie"to

/'=~~~ "c~

//

//

Recurso

VhuaH:;;::acionRecurso Period..!L

1'<-----

Nomtf~ recul5"ODes"ripcio o .teCUI5"OTipo.ieourw

""Tipo de inf",maoionPalab,a el.ve

"Fech~l)esc,ipoion FechaDi~ Seman~

NumNO Seman~ AñoNum~ro Dio MesNumNo Oi~Año

Mes Ca I@nda'ioAño Calendario·Indioad or Ultimo Dia Se manaIn dieadOf UI!I me Dia MesNombfe nimestreNomb,@ SemestreIndi""dor OÜ Fiesta

b PNiodo

'"FMh~ inicialFech.liMITipo pNiodo

b. Localidad: 4

iD ~h:1>

P~I~

RegiMDepartam@ntoCiudad8auioDir@coion~=~,

b,. Loo~11dad: ti

ID <h:l>Pais <h:7>Region <h:El>Depart.mento <:h:5>Ciudad <h:4>B~rr;o <h:3>Dirucion <h:2>

... Localidad El

WPai~

RegiooDep~rtamento

Ciudad801110Oirecoion

~h,1>

<h:7>~h:¡;-'

~h:5>

~h ;4>

<h:3~

~hc2>

Figura 4. Modelo dimensional obtenído para Unicauca Virtual.

Otras casas de software como If CNS International" oIICognos ll

, líderes en inteligencia de negocios, ofrecensoluciones OLAP muy completas, IIData WarehouseExplorerll por ejemplo, para acceder a datos basados ensistemas Microsoft, o IIPower Play ll para otras bases dedatos como Orade, Microsoft, SAP BW e IBM. Aunqueexisten muchas soluciones, la mayoría de ellas involucranelevados costos adicionales, no estimados para la

elaboración de este proyecto. El mercado también ofreceotras altelnativas enmarcadas dentro del software librecomo PALO [I3],Mondrian [14] y JPALO [15J que a pesarde no representar incrementos en los costos del proyectono permiten conectividad con el motor de base de datosORACLE. Dado 10 anterior el grupo del proyecto decidióiniciar e] desarrollo de una aplicación prototipo deherramienta OLAP, que se encuentre integrada a los demás

lOSREVISTA DE LA FACULTAD DE INGENIERíAS FISICOMECÁNICAS

módulos de la Fase 2 de Unicauca Virtual y que penniteconsultar los datos que se encuentran dentro de losesquemas dimensionales implementados en Oraele 10gRelease2:

Aunque GracIe ofrece una Interfase de Programación deAplicaciones Java (API) para OLAP, es decir un conjuntode cIases que son útiles para quienes quieren desarrollaraplicaciones que ejecutan procesamiento analítico en línea,la plataforma de desarrollo elegida por el proyecto es"Microsoft Visual Studio .NETlf

, utilizando el proveedorde datos OracIe (ODP para .NET) para tener acceso a los

datos. Todo esto debido a que el proyecto se encuentraenmarcado en un macroproyecto, el cual ha elegido esteambiente de desarrollo.

El prototipo se encuentra en su primera fase deconstrucción, en la que se hizo necesario utilizar algunasvistas del motor GracIe, para consultar y desplegar losmetadatos de información de los esquemas estrellaimplementados (ver Figura 5). Aquí se puede notar lascarpetas de medidas, cuyo objetivo es agrupar medidasrelacionadas, los cubos y los elementos que lo forman(dimensiones y medidas).

Dimensiones

~ product.~ Time

MedidasUnit Cost

urJn_r'~ARGINUnit Price

Figura 5. Metadatos de los modelos dimensionales implementados a través del prototipo üLAP.

En la segunda fase se implementará el modulo de consultade datos sobre una grilla, que permita realizar elllDrill Down tT

y TiRan Dpll, es decir bajar y subir a través de los diferentesniveles en las jerarquías de la dimensiones incluidas para elanálisis. Para esto es necesario, construir un modulo queforme de acuerdo a los diferentes parámetros enviados lasentencia de consulta sobre el esquema implementado.

Para la fase final, se debe incluir un modulo que permitavisualizar los datos de forma grafica para brindar un mayorentendimiento de los mismos.

BODEGAS DE DATOS Y OLAP EN UNICAUCA VIRTUAL 109

PROBLEMAS ENCONTRADOS DURANTE LA

REALIZACIÓN DEL PROYECTO

Desde las etapas iniciales se han presentado diferentesinconvenientes que se describirán a continuación:

* Las herramientas de GracIe disponibles paraimplementar una bodega de datos, no sopOlian laespecificación de algunos casos especiales que surgenen el modelado dimensional. En el proyecto, el hechode no poder representar casos como relaciones demuchos a muchos entre dimensiones y tablas de hechosy personalización de hechos y dimensiones, obligó a lacreación de nuevos modelos dimensionales reduciendola posibilidad de obtener infonnación más significativapara los usuarios de la bodega.

:1< Un aspecto importante a tener en cuenta al momentode construir una Bodega de Datos, es contar con labase de datos que soporta el proceso operacional delnegocio. En el caso de Unicauca Virtual, solamente unaparte del sistema OLTP se ha definido hasta el momento,10 cual limita la definición de nuevos temas y modelosdimensionales útiles para los usuarios.

"' Oracle 1Og Release 2, permite la implementación de lasBodegas de Datos de dos formas: Relacional yMultidimensional. Aunque se ha hecho un gran esfuerzopor brindar una solución fuerte que soporte lainteligencia de negocios, la etapa de transición desdela versión 9i a IOg produjo una serie de problemas:

"' ODP NET (proveedor de datos de Oracle para VisualStudio .NET) para Oracle lOg Rl no funcionabacorrectamente. Después de instalado no se podíaconectar a la base de datos desde Visual Studio .NETutilizando este componente. Este error solo se corrigióhasta la realización por parte de OracIe de la versión R2de su motor de base de datos con su correspondienteODPNET

* El contenido de alguna documentación que seencuentra en el sitio oficial de GracIe sobre el tema,difiere entre versiones de la base de datos, haciendoque algunos de los ejemplos que se encuentran nopuedan ser implementados a través de las herramientas.Además, esta documentación presenta el contenido deforma muy general limitando el entendimiento dealgunos de los casos especiales que se presentandurante el desan'ollo de una Bodega de Datos como

por ejemplo el manejo de subdimensiones, relacionesde muchos a muchos entre la tabla de hechos y lasdimensiones, dimensiones y tablas de hechospersonalizados y tablas puente para el manejo dejerarquías.

CONCLUSIONES Y 'fRABAJO FUTURO

La exploración tecnológica es una excelente alternativacuando se inicia un proyecto relacionado con bodegas dedatos y OLAP Yde gran utilidad cuando no se cuenta conel escenario ideal para su desarrollo. La exploracióntecnológica no solo sirve para conocer a fondo la tecnologíaen la que se implementará la bodega de datos y sedesarrollarán las consultas OLAP, sino que también facilitael entendimiento de los conceptos teóricos generalesrelacionados con la tecnología.

Guiar el modelado dimensional por medio de unametodología planteada para este tipo de modelado es muyimportante, sobretodo para el diseño dimensional, sinembargo, se debe tener en cuenta que la tecnología debodegas de datos que se va a utilizar para construirla,permita implementar los casos que se modelan en el diseño,o de otra forma redefinir el modelado de acuerdo a laslimitaciones de la tecnología usada.

La experiencia obtenida al desarrollar el proyecto, mostróque cuando se esta iniciando el desarrollo de este tipo deproyectos es importante, empezar a modelar los temas delnegocio de los que se tiene mayor infonnación. Ademásuna vez seleccionado los hechos o medidas, es aconsejableiniciar con un modelado básico, sin pretender de una vezvislumbrar e incluir todos los casos posibles que seobtienen de un modelado dimensional (hechosconformados, relaciones muchos a muchos, jerarquías,subdimensiones, minidimensiones, roles, etc.). Estos sepueden incluir en un próximo 11prototipo!l que rápidamentepuede convertirse en un modelo dimensional completo.Dentro del trabajo futuro, se puede decir que es necesarioidentificar e implementar otros modelos dimensionales quepermitan conocer más sobre el comportamiento delestudiante y su experiencia dentro del ambiente virtual.Además, el prototipo de herramienta OLAP debeincrementar sus funcionalidades facilitando la interaccióndel usuario con los datos contenidos en la bodega de datos.Algunas de estas funcionalidades están relacionadas conla realización dinámica de consultas, la presentaciónmatricial y grafica de los datos, la gestión de consultasrealizadas, el filtrado de datos y el cambio de jerarquías enlas dimensiones.

1 1 O

AGRADECIMIENTOS

REVISTA DE LA FACULTAD DE INGENIERíAS FI51COMECÁNICAS

[10] Oracle Corporation. Oraele OLAP ApplicationDeveloper Guide IOg Release I (10.1.0.4),2005, 1- 22.

A COLClENCIAS por el apoyo entregado a través de snproyecto de I+D en ETI titulado "Unicauca Virtual Fase Il"con código 1l03-14-14897.

BmLIOGRAFÍA

[1] C. J. Date, Introducción a los Sistemas de Bases deDatos, Apoyo para la toma de decisiones, 21 (México:PearsonEducation, 200!, 694 - 724).

[2] W. H. Inmon. Building the Data Warehouse. (UnitedStates ofAmerica: Wiley Computer Publishing, 1996).

[3] R. KimbaJl, L. Reeves, M. Ross, W. Thomthwaite, TheData Warehouse Lifecyele Toolkit. (United States ofAmerica: Wiley Computer Publishing, 1998).

[4] S. L. Mora, J. Trujillo. Un método global basado enUML para el diseño de Almacenes de Datos. Actas delas VUI Jornadas de Ingeniería de Software y Bases deDatos. 2003. 539- 549.

[5] R. Kimball, M. Ross. The Data Warehouse Toolkit. TheComplete Guide to Dimensional Modeling. WileyCompnter Publishing. 2002.

[6] G. Dodge, T. Gorman, Essential Oracle8i DataWarehousing, Analytical Processing in the Oraele DataWarehouse, 13 (United States of America: WileyComputer Publishing, 2000, 809 - 812).

[7] Ikeydata, (Visitado 2005, Marzo 03). Informaciónrelacionada con conceptos de OLAP, ROLAP yMOLAP. [Documento WWW]. URL http://www. I ke y d a t a. c omldata w areh o u sin gldatawarehouse.htmJ.

[8J S. Alison, K. Nayar, M. Bird, J. Stein, Oraele WarehouseBuilder User's Guide IOg Release I (l0.1), 2003, 2 - 28.

[9] D. T. Chang, (Visitado 2004, Noviembre 10). CommonWarehouse MetamodeI specification. [DocumentoWWW]. URLhttp://www.omg.orglcwm.

[11] H. H. Eriksen, (Visitada 2005, Octubre 09). OraeleOLAP Forum. [Documento WWW]. URL http://forums.oracle.com/forums/thread.jspa?messageID=1085783&#1 085783

[12] Oracle Corporation. Oracle OLAP DML Reference1Og Release 2 (10.2),2005,5 - 21.

[13] Jedox. (Visitada 2006, Marzo 21). PALO - OpenSource MOLAP. [Documento WWWJ. URL http://www.jedox.com/sh ow. php ?in dex=con ten tiOpen%20Sonrce%20-%20PaJo.07.

[14] Pentabo. (Vísitada2006, Marzo 21). Mondrian OLAP[Docnmento WWW]. URL http://rnondrian.sourceforge.net.

[15] Tensegrity Software. (Visitada 2006, Marzo 21).PALOEelipseClient. [Documento WWW].URLhttp:/Iwww.tensegrity-software.com/jpaJo.html.