Sie sind auf Seite 1von 16

EJERCICIO PRACTICO DE BI

INTRODUCCION
En este documento se busca realizar el anlisis de una base de datos SAKILA
que se utilizara como prototipo para el desarrollo de este caso prctico, al cual se
le construir o desarrollara una solucin de inteligencia de negocio.
De esta manera se deber presentar una posible solucin de acuerdo a la base de
datos entregada, con el fin de poner en prctica todos los conceptos y
herramientas estudiadas de inteligencia de negocio para el desarrollo del mismo.
Descarga la base de datos sakila AQUI

En este proyecto se implementaran herramientas de pentaho para poder llevar a cabo el desarrollo
del mismo. Todas las herramientas las podemos encontrar en la siguiente pagina
web: http://sourceforge.net
Estas herramientas son:
Consola de Pentaho = Creacin Cuadros de mando "DashBoard" y Creacin de informes

kettle o Spoon = Para la creacin de los ETL

Mondrian de pentaho = Para la realizacin de los Cubos Olap

MODELO DE NEGOCIO
La empresa la cual se le desarrollara una solucin de inteligencia de negocio ser
CLUBFIML S.A.
La empresa Sakila tiene como objetivo principal el alquiler de pelculas de videos,
manejando una gran variedad de pelculas con el fin de satisfacer todas las
necesidades de sus clientes.
La empresa Sakila tiene varias sucursales, donde sus clientes podrn encontrar
las mejores pelculas del mercado distribuidas por, lenguaje, actor, ttulo,
categora, de la mejor manera posible, para su fcil acceso dentro de sus tiendas.

El modelo de negocio de la empresa CLUBFILM S.A se compone de los


siguientes procesos segn el anlisis de la base de datos:
Datos Clientes: Donde se almacenan los datos de los clientes que por lo menos una
vez, han prestado los servicios ofrecidos en las tiendas de CLUBFILM S.A.

Inventario: Donde se almacena todos los datos sobre los productos (pelculas) que se
tienen en las sucursales, para la administracin y el buen funcionamiento de las tiendas.
Proceso del Negocio: En este proceso del negocio es donde se encuentran los
datos del negocio.

DIAGRAMA ENTIDAD RELACION "SAKILA"

TABLAS TRANSACCIONALES

TABLAS NO-TRANSACCIONALES

Payment-Sales
Rental
Inventory

Customer
address
City
country
Staff
store
film
Film_category
Category
Language
Actor
Film_actor
Film_text

TABLAS DE HECHOS "MODELO EN ESTRELLA"


1. TABLA "HECHOS SALES"

TABLA DE HECHOS
FACT_SALES

TABLA DE DIMENSIONES
DIM_FILM
DIM_CUSTOMER

DATA_SALES
DIM_STORE

2. TABLA "HECHOS INVENTORY"

TABLA DE HECHOS
FACT_INVENTORY

3. TABLA "HECHOS RENTALS"

TABLA DE DIMENSIONES
DIM_FILM
DIM_STORE
DATE_INVENTORY

TABLA DE HECHOS

FACT_RENTALS

MODELO DIMENSIONAL "DATAWAREHOUSE"

TABLA DE DIMENSIONES
DIM_FILM
DIM_STORE
DIM_CUSTOMER
DIM_STAFF
DATE_RENTALS

Hasta aqu tenemos muestro modelo dimensional pero se encuentra vaci, este modelo tiene que
disearse en la base de datos que mas nos guste manejar, en mi caso la disee en mysql al igual
que la base de datos SAKILA. Ahora debemos crear los ETLs para extraer los datos de la base de
datos SAKILA y almacenarla a nuestro nuevo MODELO DIMENSIONAL.

DISEO Y CONSTRUCCION DE ETL EN SPOON

Para llevar a cabo el desarrollo de los ETL se contara con la herramienta de


PENTAHO llamada SPOON daba para el desarrollo de este proyecto, se debe
observar nuestro modelo dimension presentado anteriormente. Se debe
desarrollar un ETL por cada dimensin , fact, y tabla de tiempo que tengamos.
La construccin de los ETL nos permitir extraer los datos de nuestra base de
datos (Sakila) y cargarlos en muestro modelo dimensional desarrollando en el
punto anterior.
En nuestra solucin decidimos realizar una etl para cada tabla tiempo que posee las
tabla de hechos.
ETL DIMENSIONES
A continuacin explicaremos paso a paso la construccin de todos los ETL
DIMENSIONES: Dim_films, Dim_customer, Dim_store, Dim_staf

Se relizaran los mismos pasos para cada uno de los ETL

Paso 1: Primero construimos una tabla de entrada en SPOON la cual le


asignamos el nombre y determinamos la conexin a la base de datos y en
sql determinamos que tabla y que columnas deseamos que nos extraiga y
nos muestre, damosPREVISUALIZAR para observar los datos.
Paso 2: Construimos una selecciona/renombrar valores para determinar que
valores me renombrar de la base de datos y el modelo dimensional para
luego le los almacene en los respectivos campos.

Paso 3: por ultimo construimos un insertar/actualizar para insertarle los


datos extrados de la base de datos al modelo dimensional.
Construccin

de Dimensin de Tiempo:

Por solicitud de algunos de los lectores de mi Blog, me han muestre


como constru las 3 dimensiones de tiempo.
Cuando constru este ejemplo por primera vez, mi experiencia en BI era poca 2
aos despues me he dedicado por completo a QlikView y QlikSense pero aun
tengo recuerdo de como trabajar con esta hermosa herramienta de Pentaho.
Es redundante tener 3 dimensiones de tiempo en nuestro DataWareHouse,
no creera que seria mejor tener una sola dimensin de tiempo que contenga
todas las posibles fechas de nuestras Fact Tables ? Esta seria una mejor que
pueden implementar en sus soluciones.
Con el Query a continuacion podemos obtener todas esas fechas de nuestras Fact
Tables, solo queria construir el campo incrementar para hacer nico cada uno de
los registros que contiene nuestra Dim_Tiempo y por el cual sera la relacion con
las Fact:
Dim_Tiempo:
Select date(a.rental_date) AS Fecha,
year(a.rental_date) AS Ao,
quarter(a.rental_date) AS Trimestre,
Month(a.rental_date) AS Mes,
monthname(a.rental_date) AS MesNombre,
Day(a.rental_date) AS Dia
From sakila.rental a
Union All
Select
date(b.payment_date) AS Fecha,
year(b.payment_date) AS Ao,
quarter(b.payment_date) AS Trimestre,
Month(b.payment_date) AS Mes,
monthname(b.payment_date) AS MesNombre,
Day(b.payment_date) AS Dia
From sakila.payment b
Union All
Select
Date(c.last_update) AS Fecha,
year(c.last_update) AS Ao,
quarter(c.last_update) AS Trimestre,
Month(c.last_update) AS Mes,
monthname(c.last_update) AS MesNombre,
Day(c.last_update) AS Dia

From sakila.inventory c;

Por motivos de tiempo les envio solo este Query, en pocos dias actualizare su
implementacion con el Klette y su construccion a un dataWareHouse.
Espero les siga a todos
ETL HECHOS
Para la construccion de los ETL de las tablas de hechos, realizaremos cuatro pasos, los mismos
pasos son para cada uno de las tablas.
Tomaremos como ejemplo la tabla hechos rents

Paso 1: Primero contruimos una tabla de entrada en SPOON la cual le


asignamos el nombre y determinamos la conexin a la base de datos y en
sql determinamos que tabla y que columnas desemoas que nos extraiga y
nos muestre, damos PREVISUALIZAR para observar los datos.
Paso 2: Construimos una seleciona/renombra valores para obtener el
valor de la secuencia de la base de datos
Paso 3: Construimos una seleciona/renombra valores para determinarle
que valores me renombra de la base de datos y el modelo dimensional para
luego le los almance en los respectivos campos
Paso 4: por ultimo construimos un insertar/actualizar para insertarle los
datos extraidos de la base de datos al modelo dimensional.

GERACION DE LOS INFORMES CON PENTAHO


Cargamos la plataforma de pentaho ejecutamos los archivos star-pac.bat y
star-pentaho.bat y cargamos un navegador y en la direccion
ingresamoshttp://localhost:8080/pentaho/Login, que nos abrir la
plataforma de pentaho e procedemos a ingresar el username y password
que es joe y password respectivamente.

Ingresamos a la plataforma de pentaho y procedemos a crear un nuevo


informe, debemos predeterminar la conexin con el modelo dimensional ya
creado y al cual cargamos los datos con ayuda del Spoon.
A continuacin determinamos que el tipo de datos que queremos mostrar
en nuestro informe. Crearemos 3 informes.
1 Informe Film: En este informe mostraremos 4 campos que sean, id_film,
name, category y actors que ya fueron importadas a nuestros modelos
dimensional por medio de los etl.
Seleccionamos la tabla dim_film y selecionamos los campos y los
colocamos en la tabla detalle y selecionamos el tipo de documento que
deseamos el informe, en este caso sera PDF y damos en go

2. Informe Customer: En este informe mostraremos 5 campos que sean,


id_customer, name, address customer, city y country customer que ya
fueron importadas a nuestros modelos dimensional por medio de los etl.
Seleccionamos la tabla dim_cumstomer y seleccionamos los campos y los
colocamos en la tabla detalle y seleccionamos el tipo de documento que
deseamos el informe, en este caso sera PDF y damos en go

CREACIN

DE CUBOS OLAP CON LA HERRAMIENTA MONDRIAN

DESCARGAR GUIA PARA ELABORAR CUBOS EN MONDIAN AQUI


CUBO "FACT_INVENTORY"

Paso 1: Se inicializa creando un esquema y luego un cubo add Cube el


cual le seleccionado la fact_inventory y as ser como se llamara

Paso 2: Insertar 3 dimensiones, film, store y date inventory para cada una
de las dimensiones en el campo foreaignkey se seleccionada cada una de
las llaves forneas de cada dimensin.
Paso 3: Luego ingresamos los campos que vamos a medir en este caso
replacement_cost y Price_film, en el campo columna de la tabla
fact_invetory seleccionados la columna replacement_cost, lo mismo
realizamos con el campo a medir Price_Film, en el campo columna de la
tabla fact_inventory seleccionamos la columna Price_FilM
Con esto nuestro primer cubo esta terminado solo falta publicarlo en
pentaho.
Para este ejemplo se realizaron 3 cubos pero solo se mostr como se construye 1.
PUBLICACIN DE CUBOS EN PENTAHO

Demostraremos la publicacin de un solo cubo, ya que el procedimiento es


igual para todos los cubos.
Publicaremos el cubo Fact_sales

click en publish

En este caso la url es el link de la consola de pentaho, el publish password es el password


que determinamos al comienzo de la instalacin de la consola de pentaho. Para
determinar este password realizamos lo siguiente.
Vamos a la carpeta biserver-ce-4.8.0-stable\biserver-ce\pentaho-solutions\system y
seleccionamos el archivo con el nombre de publisher_config y abrirmo con el block de
notas

Aqu escribimos la palabra que deseamos como password, en este caso


escogimos la palabra password>password<. Le damos guardar, vamos a la
consola de pentaho y actualizamos
Luego de haber realizado esto, y poder haber llenado todos los campos de
la publicacin procedemos a la consola de pentaho y vamos
a configuracin del sistema.

Ahora solo nos falta ir he intentar publicar, escogemos una carpeta donde
queramos que se publiquen en el pentaho y le damos en publicar. Nos
debe de salir esto.

Das könnte Ihnen auch gefallen