Вы находитесь на странице: 1из 18

2010

Laboratorio de Seminario de Sistemas 2


Proyecto 1 Manual Tcnico
Aqu se explica a grandes rasgos la utilizacin de Oracle Warehouse Builder 10g Release 2 para crear, poblar y consultar un cubo de informacin a partir de una base de datos almacenada en Oracle 10g Enterprise Edition.

Jorge Ral Lu Hernndez Universidad de San Carlos de Guatemala 09/01/2010

Contenido
Descripcin general del proceso .....................................................................................................................................................1 Crear un repositorio ...........................................................................................................................................................................2 Crear un nuevo proyecto ..................................................................................................................................................................2 Definir el esquema fuente ................................................................................................................................................................. 3 Definir el esquema destino...............................................................................................................................................................4 Crear las dimensiones ........................................................................................................................................................................ 5 Crear la dimensin con el asistente......................................................................................................................................... 5 Cambiar las propiedades de la dimensin ............................................................................................................................ 7 Modificar la dimensin ........................................................................................................................................................... 7 Modificar la tabla ...................................................................................................................................................................... 8 Generar y desplegar la dimensin .......................................................................................................................................9 Crear el cubo ......................................................................................................................................................................................... 11 Crear el cubo con el asistente ................................................................................................................................................... 11 Generar y desplegar el cubo ...................................................................................................................................................... 11 Crear y ejecutar las correspondencias ........................................................................................................................................ 11 Crear los reportes .............................................................................................................................................................................. 14 Errores comunes durante el despliegue .................................................................................................................................... 15 Error PLS-00201 ............................................................................................................................................................................ 15 Otros errores ................................................................................................................................................................................... 16

Universidad de San Carlos de Guatemala

Jorge Ral Lu Hernndez

ORACLE WAREHOUSE BUILDER 10G RELEASE 2


C REACIN , CARGA Y CONSULTA DE UN CUBO DE INFORMACI N

Descripcin general del proceso


Los requisitos para poder empezar a utilizar Oracle Warehouse Builder son primero tener instalado el servidor de base de datos Oracle, an cuando la base de datos que se va a utilizar como origen de los datos est almacenada en otro manejador. Esto se debe a que Warehouse Builder necesita un servidor de Oracle para poder almacenar todos los metadatos del cubo (informacin sobre dimensiones, mapeos, el mismo cubo, etc.). Al tener el servidor de base de datos instalado se puede proceder a instalar Oracle Warehouse Builder. A continuacin inicia la verdadera utilizacin de Warehouse Builder. De manera general, los pasos son los siguientes: 1. 2. 3. 4. 5. 6. 7. 8. Crear un repositorio Crear un nuevo proyecto Definir el esquema fuente Definir el esquema destino Crear las dimensiones Crear el cubo Crear y ejecutar las correspondencias Crear los reportes

Tras explicar cada uno de los pasos anteriores se mencionan algunos detalles sobre permisos que pueden ocasionar errores durante el despliegue de algunos objetos.

Universidad de San Carlos de Guatemala

Jorge Ral Lu Hernndez

Crear un repositorio
Como se mencion, se debe crear un repositorio que Warehouse Builder utilizar para almacenar toda la informacin de los proyectos que se creen. El repositorio es un esquema que se crea en el servidor de base de datos ya instalado. Para crear el repositorio existe un asistente, que puede encontrarse en Oracle OUIHome1 > Warehouse Builder > Administration > Repository Assistant.

Primero se proporciona el nombre y contrasea del esquema que se utilizar para el repositorio. Este puede existir o no, pero se recomienda utilizar uno nuevo pues se crean diversos objetos. Tambin se debe proporcionar la contrasea del usuario SYS de Oracle, y la informacin para realizar la conexin con la base de datos1. Luego se solicita el nombre y contrasea del propietario del repositorio y se finaliza el asistente. La creacin del repositorio en la base de datos puede durar algunos minutos.

Crear un nuevo proyecto


Primero se inicia sesin en Warehouse Builder. Para iniciarlo se va hacia Oracle OUIHome1 > Warehouse Builder > Design Center. Aparece la ventana de la derecha. Se debe proporcionar la contrasea del propietario del repositorio, as como la informacin de la conexin, pero esta ltima slo es necesaria la primera vez que se ejecuta Warehouse Builder.

Cuando aparece la ventana de Warehouse Builder, el nuevo proyecto se crea desde el men Diseo > Nuevo. Lo nico que falta es proporcionar el nombre del proyecto.
1

Siempre que se haga referencia a esta informacin se incluye el nombre del host con la base de datos (generalmente localhost), el nmero de puerto de Oracle (por defecto 1521) y el nombre del servicio (por defecto orcl para Oracle Enterprise o xe para Oracle Express).

Universidad de San Carlos de Guatemala

Jorge Ral Lu Hernndez

Definir el esquema fuente


Se expande el nodo del nuevo proyecto y luego el de Bases de Datos. All se da un clic derecho en Oracle1, y se selecciona Nuevo.

Esto inicia el asistente para crear mdulos. Primero se proporciona un nombre para el mdulo y al tratarse de una entrada de datos es importante indicar que se trata de un Origen de Datos.

Despus se debe crear una localizacin, que en realidad es una conexin con el esquema de la base de datos para poder acceder a sus datos. Se proporciona el nombre y contrasea del usuario del esquema y la informacin de conexin a la base de datos.

Antes de finalizar el asistente es importante indicar que los metadatos del esquema se van a importar. Esto inicia el Asistente de Importacin de Metadatos, que extrae la informacin sobre los objetos del esquema fuente que interesan para poblar el esquema destino (principalmente tablas).

Se asume que la fuente de datos es un esquema en la base de datos Oracle, aunque tambin es posible obtener datos desde otros manejadores de bases de datos o archivos de texto.

Universidad de San Carlos de Guatemala

Jorge Ral Lu Hernndez

Una vez filtrados los objetos por tipo, se seleccionan los que interesa importar. En este caso son las tres tablas que contienen la informacin que se utilizar para poblar el cubo.

Al finalizar el asistente de importacin es posible examinar el mdulo fuente recin creado en el explorador de proyectos. Dentro de este mdulo tambin es posible apreciar los objetos que se han importado, las tres tablas que se utilizarn como fuente de datos.

Definir el esquema destino


El esquema destino es el que va a contener al cubo (tabla de hechos y dimensiones). No hay que olvidar que un cubo no es ms que una base de datos desnormalizada con el propsito de facilitar las consultas en lugar de transacciones. Y esta base de datos necesita un esquema. Adicionalmente, en Oracle s existen objetos de tipo dimensin y cubo1, pero son nicamente metadatos de las tablas fsicas que en realidad contienen la informacin del cubo. A fin de cuentas cada dimensin y tabla de hechos son como cualquier otra tabla de una base de datos. Para indicar qu esquema va a contener todas las dimensiones y tablas de hechos (as como las tablas que las representan), se debe crear un nuevo mdulo de destino. Para crearlo se selecciona de nuevo el nodo de Oracle y se le da clic derecho para iniciar el mismo asistente que se utiliz para crear el mdulo fuente.

En Oracle cubo es el nombre que se le da a la tabla de hechos de un cubo.

Universidad de San Carlos de Guatemala

Jorge Ral Lu Hernndez En esta ocasin hay que seleccionar la opcin Destino de Warehouse, para indicar que este esquema no va a ser utilizado como fuente de datos, sino como destino de datos. De manera anloga al mdulo fuente, es necesario crear una nueva localizacin para poder conectarse al esquema de destino, que ya debe estar creado en la base de datos. Es recomendable utilizar un esquema exclusivamente para el warehouse. Si ste es el caso, no es necesario importar ningn objeto al crear el mdulo destino, pues el esquema correspondiente est vaco.

De nuevo, el mdulo recin creado (esta vez de destino) aparece como un nuevo nodo en el explorador de proyectos.

Crear las dimensiones


Al tener los tanto el mdulo fuente1 como el de destino, se procede a crear las dimensiones en el mdulo de destino. Para crear una dimensin libre de errores es recomendable utilizar el Asistente de Creacin de Dimensin. La desventaja es que el asistente impone ciertas restricciones para la creacin de las dimensiones. Por ejemplo las dimensiones siempre deben tener una jerarqua 2 y una clave sustituta (surrogate) adems de la clave de negocio. Por otro lado, esas restricciones no son de ninguna manera necesarias para poder implementar las dimensiones en la base de datos y hasta pueden implicar cambios innecesarios en el diseo mismo del modelo de datos del data warehouse. Un buen enfoque es crear las dimensiones utilizando el asistente, pero luego editarlas para que se ajusten al modelo de datos del data warehouse.

CREAR LA DIMENSIN C ON EL ASISTENTE


Para iniciar el asistente de creacin de dimensiones, se da clic derecho en el nodo Dimensiones dentro del nodo del mdulo de destino. En el men que aparece se selecciona Nuevo > Uso del Asistente
1

En realidad puede haber ms de un mdulo fuente, pues una de las caractersticas de los data warehouse son las fuentes de datos heterogneas. Todos se crean de la misma manera. 2 Las jerarquas son necesarias si el modelo del data warehouse es de tipo copo de nieve, pero dificultan la implementacin de un modelo estrella.

Universidad de San Carlos de Guatemala

Jorge Ral Lu Hernndez

Cuando se ejecuta el asistente, despus de darle un nombre a la dimensin se debe seleccionar el tipo de almacenamiento, que puede ser ROLAP 1 o MOLAP2. Aunque la opcin MOLAP parece ms lgica, la generacin de este tipo de dimensiones utiliza un script con errores. Se debe seleccionar la opcin ROLAP.

En el paso siguiente se definen los atributos de la dimensin. Se debe dejar el atributo ID tal y como est, pues es la clave sustituta necesaria para poder terminar el asistente. El atributo NAME es la clave primaria que tiene actualmente la tabla en el esquema fuente de datos que se utilizar para poblar la dimensin. Se puede cambiar el nombre y el tipo para que coincida con la clave ya existente. El ltimo campo es DESCRIPTION, que bien puede ser otro atributo cualquiera de la tabla fuente de datos para la dimensin. Tambin se puede modificar su nombre y tipo para que coincida con un atributo existente.
Luego se definen los niveles de la dimensin. Como se est implementando un modelo estrella, slo se define un nivel. Si el modelo fuera tipo copo de nieve, aqu se especifican todos los niveles de la dimensin. En el paso siguiente se asocian a cada nivel los atributos definidos previamente. De nuevo, al tratarse de un modelo estrella todos los atributos definidos se asocian al nico nivel existente. Posteriormente se selecciona la poltica para mantener informacin histrica de los datos de la dimensin. La opcin de Tipo 1 es la que menos requerimientos tiene. Al finalizar el asistente se han creado tres objetos: La dimensin La tabla de la dimensin Una secuencia para la clave sustituta

Ahora es cuando se procede a modificar la dimensin para eliminar las restricciones impuestas por el asistente.

1 2

Relational OnLine Analytical Process Multidimensional OnLine Analytical Process

Universidad de San Carlos de Guatemala

Jorge Ral Lu Hernndez

CAMBIAR LAS PROPIEDADES DE LA DIMENSIN


Como se mencion antes, al crear la dimensin se crean tres objetos. Para eliminar las restricciones impuestas por el asistente cada uno de ellos debe modificarse.

MODIFICAR LA DIMENSIN
Para abrir la dimensin en el editor solamente se le da un doble clic encima. Esto abre una nueva ventana donde se pueden editar las propiedades de la dimensin.

ELIMINAR EL ATRIB UTO I D Se selecciona la dimensin dndole un clic a su representacin en el diagrama. Esto llena los datos de las pestaas ubicadas en la parte inferior de la ventana. Eliminar el ID facilita la creacin de la correspondencia para la dimensin (ms adelante) pues permite utilizar solamente los datos de las tablas del esquema fuente. Para eliminar ese atributo se va a la pestaa Atributos en la parte inferior de la ventana y se le da clic derecho encima, donde se selecciona la nica opcin disponible: Suprimir. Lo que s es necesario es dejar un atributo cuyo identificador sea de tipo Negocio.

Universidad de San Carlos de Guatemala ELIMINAR LA JERA RQUA

Jorge Ral Lu Hernndez

La siguiente modificacin es eliminar la jerarqua, pero slo si se trata de un modelo tipo estrella. An cuando se trate de un modelo de este tipo (con un nico nivel), el asistente crea una jerarqua estndar. Al generar y desplegar una dimensin con un nico nivel y una jerarqua, se produce un error. Por eso es importante eliminar la jerarqua. Para hacerlo se va a la pestaa Jerarquas y en la seccin superior se le da un clic derecho a la jerarqua STANDARD para poder seleccionar Suprimir. Una vez eliminada la jerarqua y la clave sustituta, los cambios deberan verse en el diagrama de la dimensin: Slo los atributos necesarios agrupados en un nivel y ninguna jerarqua. Los cambios se guardan con Ctrl+S antes de cerrar la ventana del editor.

MODIFICAR LA TABLA
Como se ha eliminado el atributo ID de la dimensin, esto debe verse reflejado en la tabla de la dimensin. De igual manera, la tabla puede editarse haciendo un doble clic sobre ella. Tenga cuidado de seleccionar la tabla de la dimensin y no la del esquema fuente de datos. ELIMINAR LOS ATRIBU T OS IDENTIFICADORES Los atributos que se deben eliminar son ID (ya eliminado de la dimensin) y DIMENSION_KEY. Para eliminarlos se va a la pestaa Columnas, donde se eliminan con un clic derecho, igual que el atributo ID de la dimensin. IDENTIF ICAR LA NUEVA L LAVE PR IMARIA En la pestaa Restricciones se elimina la restriccin ya existente. Se selecciona y se utiliza el botn Suprimir en el lado inferior derecho. Luego se agrega una restriccin a la que se le da un nombre y en tipo se selecciona Clave Primaria. Luego se asocia a un atributo utilizando el botn Agregar Columna Local. En la nica casilla editable de la fila que aparece, se selecciona el atributo marcado como identificador de tipo Negocio en el editor de la dimensin. 8

Universidad de San Carlos de Guatemala Se guardan los cambios con Ctrl+S y se cierra el editor. ELIMINAR LA SECU ENCI A

Jorge Ral Lu Hernndez

Al haber eliminado la llave sustituta en la dimensin y la tabla, se puede eliminar la secuencia creada para poblarla. Para hacer esto se le da un clic derecho en el explorador de proyectos y se selecciona Suprimir.

GENERAR Y DESPLEGAR LA DIMENSIN


En este punto se guardan los cambios de todo el proyecto con Ctrl+S, pues se va a desplegar la dimensin. Para hacer esto se selecciona la opcin Gestor de Centros de Control en el men Herramientas. Aparece la siguiente ventana:

Del lado derecho se encuentran todas las localizaciones del Centro de Diseo. La localizaciones se registran con clic derecho > Registrar con el propsito de almacenar la contrasea del esquema al que hacen referencia. Esto nicamente consiste en probar la conexin (proporcionando antes la contrasea respectiva si no est) y aceptar la configuracin mostrada si funciona correct amente. Para desplegar la dimensin se selecciona la localizacin del esquema de destino, lo que muestra todos los objetos recin creados 1. Se muestra su estado como No Desplegado y su accin como Ninguno. Se da un clic en el botn Acciones por Defecto para cambiar la accin a Crear y luego se da otro clic en el botn Desplegar en la barra de herramientas.

No se deben desplegar los objetos (tablas) de la localizacin del esquema fuente. En primer lugar porque ya existen y eso provoca un error, y en segundo lugar porque sustituirlas eliminara los datos del esquema fuente.

Universidad de San Carlos de Guatemala

Jorge Ral Lu Hernndez

La generacin y despliegue puede hacerse luego de crear todos los objetos, pero es mejor hacer esto luego de crear cada objeto porque es una operacin que puede llegar a durar un tiempo considerable y es probable que se produzcan errores, que son ms fciles de resolver uno por uno. En la ltima seccin de este manual se presentan errores que se presentan comnmente durante el despliegue y su solucin. Si no hay errores, el estado de los objetos aparece como Correcto y la accin vuelve a Ninguno.

Todas las dimensiones para el data warehouse se crean, modifican y despliegan de la misma manera.

10

Universidad de San Carlos de Guatemala

Jorge Ral Lu Hernndez

Crear el cubo
CREAR EL CUBO CON EL ASISTENTE
La creacin del cubo es muy similar a la creacin de las dimensiones. Se da clic derecho sobre el nodo del cubo en el esquema de destino y se selecciona Nuevo > Uso del Asistente Esto inicia el Asistente de Creacin de Cubo. Primero se proporciona el nombre del cubo. Luego se selecciona ROLAP de nuevo y se pasa a seleccionar las dimensiones que lo van a componer. Se seleccionan todas las dimensiones creadas anteriormente. Por ltimo se especifican las mtricas del cubo. Lo nico con lo que se debe tener cuidado es que el tipo y tamao de los datos de las mtricas sea igual al de los datos originales en el esquema fuente. Al terminar el asistente se crean el cubo y su tabla. Igual que con las dimensiones, ambos se pueden editar con un doble clic. Lo nico que debe modificarse es el tamao de algunas columnas de la tabla para que coincida con el de las claves de las dimensiones. Para el cubo no se crea ninguna secuencia.

GENERAR Y DESPLEGAR EL CUBO


Para desplegar el cubo tambin se utiliza el Centro de Control. Se seleccionan las acciones de crear con el botn Acciones por Defecto y el botn Ejecutar lleva a cabo dicha accin.

Crear y ejecutar las correspondencias


Las correspondencias o mapeos se utilizan para cargar datos desde las tablas del esquema fuente hacia las tablas del esquema destino. Relacionan las tablas atributo por atributo y adems permiten incluir algunas operaciones como por ejemplo funciones de agregacin o reduccin de valores duplicados. Para crear una correspondencia se da un clic derecho sobre el nodo de Correspondencias en el esquema destino y se selecciona Nuevo. Luego de proporcionar un nombre para la correspondencia se abre automticamente el editor de la correspondencia. Del lado derecho se encuentra un explorador muy similar al explorador de proyectos. Desde aqu se pueden arrastrar y soltar objetos existentes tanto en el esquema fuente como en el esquema destino. Por ejemplo tablas y secuencias. Tambin hay una paleta desde donde se arrastran y sueltan operadores como funciones de agregacin o desduplicadores para eliminar datos repetidos.

11

Universidad de San Carlos de Guatemala

Jorge Ral Lu Hernndez

Por ejemplo para poblar una dimensin se puede arrastrar y soltar su tabla de datos de origen desde las tablas del nodo del esquema fuente.

12

Universidad de San Carlos de Guatemala

Jorge Ral Lu Hernndez

Luego se puede colocar un desduplicador desde la paleta para eliminar datos que puedan repetirse desde la tabla de origen. Posteriormente se conectan los campos que se quieren reducir al desduplicador y la salida puede conectarse a la tabla de una dimensin, obtenida en el nodo del esquema destino.

De esta manera un atributo con muchos valores repetidos puede reducirse a valores nicos que se pueden usar como la llave primaria de una dimensin. Despus de definir la correspondencia se guarda (Ctrl+S) y se cierra el editor. Se regresa al Centro de Control y se realiza el despliegue. En este punto suele presentarse la advertencia PLS-00201. La solucin a este problema se encuentra en la ltima seccin de este manual. Habiendo desplegado la correspondencia se puede regresar al editor para ejecutarla. Esto se hace con el botn Inicio de Depuracin en la barra de herramientas.

Se muestra una nota y tras aceptarla la depuracin est lista. Primero muestra todos los campos de la tabla de fuente de la correspondencia. Se puede continuar con el botn Paso en la barra de herramientas. Cada vez que se presiona se van obteniendo filas de la tabla fuente. Si son demasiadas, se pueden obtener todas con slo presionar el botn Saltar, ubicado a la derecha del botn Paso. Al terminar con la tabla fuente se van agregando filas al desduplicador y al terminar este ltimo se pasa a la tabla de destino. Cuando no se pueden ejecutar ms pasos la correspondencia ha terminado y la tabla de destino tiene los datos obtenidos de la tabla fuente.

13

Universidad de San Carlos de Guatemala

Jorge Ral Lu Hernndez

Slo falta detener la depuracin con el botn Fin de Depuracin ubicado al lado derecho del botn Inicio de Depuracin. Todos los mapeos se crean, despliegan y ejecutan de esa forma. Es importante mencionar que primero se deben ejecutar los mapeos de todas las dimensiones y por ltimo el mapeo de la tabla de hechos debido a la restriccin de las llaves forneas de las dimensiones.

Crear los reportes


La herramienta utilizada para los reportes es SQL Developer de Oracle. Lo primero es crear una conexin como el usuario del esquema destino. Slo se debe proporcionar el nombre de la conexin, el nombre y contrasea del usuario y la informacin de conexin a la base de datos. El mdulo de reportes se encuentra del lado izquierdo. Se busca User Defined Reports y al hacer clic derecho se selecciona Add Report. Esto muestra una nueva ventana donde se le da un nombre al reporte y se escribe la consulta para obtener los datos desde el esquema destino.

Se pueden realizar pruebas de la consulta en la misma ventana seleccionando Table en la lista desplegable de Style y luego haciendo clic en el botn Test. En la ventana que aparece se debe seleccionar la conexin del esquema de destino.

Si el resultado de la consulta es el deseado, se puede cambiar el estilo del reporte a una grfica. Para hacerlo se selecciona Chart en la lista Style. Por defecto es una grfica de pastel, pero en la pestaa Chart Details se puede cambiar a grfica de barras. Se vuelve a probar el resultado del reporte y se est de acuerdo se hace clic en el botn Apply. 14

Universidad de San Carlos de Guatemala

Jorge Ral Lu Hernndez

Esto hace que el reporte quede disponible en el mdulo de reportes, en el nodo User Defined Reports. Para verlo slo se le da clic y se selecciona la conexin del usuario del esquema de destino.

Errores comunes durante el despliegue


ERROR PLS-00201
Este error se produce cuando se intenta realizar un despliegue de una correspondencia. Se debe a que el usuario del esquema destino no tiene permisos de ejecucin sobre algunos paquetes que se utilizan durante la ejecucin del script generado para desplegar la correspondencia. La solucin es darle al usuario del esquema destino los permisos de ejecucin (EXECUTE) sobre los siguientes paquetes: WB_RT_MAPAUDIT WB_RT_MAPAUDIT_UTIL WB_RT_MAPAUDIT_UTIL_INVOKER WB_RT_TARGET_SCHEMA_OBJS

Dichos paquetes pertenecen al esquema del propietario del repositorio de Warehouse Builder. La asignacin de permisos puede hacerla el usuario dueo del repositorio o el mismo SYS de Oracle. 15

Universidad de San Carlos de Guatemala

Jorge Ral Lu Hernndez

OTROS ERRORES
Una gran cantidad de errores se deben a permisos sobre las tablas del esquema fuente. La solucin ms sencilla es darle al usuario PUBLIC permisos de consulta (SELECT) sobre las tablas que se importaron a Warehouse Builder. Esta asignacin de permisos puede hacerla el usuario del esquema fuente o el mismo SYS de Oracle.

16

Вам также может понравиться