Sei sulla pagina 1di 15

c 

 c    


c 

  
    

c   
 
  
 
c   
 
  
 
c  

 


c  !     "    c 
# 

c 
#    
 $   %& 
'  (

c  
Desde hace buen tiempo, la información ha pasado a ser uno de los principales activos empresariales, sin embargo;
recopilar, integrar, transformar, analizar y presentar los datos que genera dicha información para muchas empresas es un
proceso que causa muchos problemas, conllevando a toma de decisiones lentas y a veces con poco acierto.
Esta realidad ha impulsado el Business Intelligence(BI) o Inteligencia de Negocios, concepto que está cobrando
protagonismo en todo tipo de organizaciones. BI trata de englobar todos los sistemas de información de una organización
para obtener información, conocimiento y más aún, la inteligencia que le permita obtener una ventaja competitiva.

) 
 

Existen diversas aplicaciones, suites y herramientas para aplicar BI. Desde las herramientas propietarias de Microsoft,
Oracle, hasta herramientas de sotware libre comoOpeni, BizGres, JasperSoft, SpagoBI y Pentaho.

c 
# 
Pentaho es una suite que incluye herramientas que abarcan todas las capacidades que se requieren en BI, que incluye
consultas, reportes, análisis, dashboards, integración de datos (ETL- extraction, load and transformation) y minería de
datos.

Cada una de estas capacidades son proyectos BI, de las cuales Pentaho es el propietario y patrocinador, estos proyetos son:
- Mondrian. Servidor OLAP.
- Petaho Report Engine. Reporteador.
- Kettle. Integración de Datos (ETL).
- Pentaho. Suite BI.
- Weka. Data Mining.

En los posts que escribiré a partir de ahora seguiremos de una manera ordenada cómo trabajar con Pentaho, si bien existe
diversidad de información al respecto, ésta se halla de un modo un tanto desordenada, y en mi caso particular todo lo
necesario no lo he encontrado en un solo lugar. Entonces basado en mis búsquedas y averiguaciones trataré de que en este
blog, uno pueda aprender lo mínimo necesario para utilizar esta "suite open source".

c 
# * 

 

 
Actualmente, existe una versión comercial y una versión open source desarrollada por la comunidad:
http://community.pentaho.com/projects/bi_platform/
(tener en cuenta que requiere varios pasos de configuración)
Como había indicado en el post anterior (Introducción sobre Pentaho) existe bastante información para empezar a
trabajar con Pentaho, así que tratando de ordenar esa información lo primero que haremos es descargar los archivos
necesarios.

 

c 
# 
Empezaremos por descargar la suite completa (!' + ) de Pentaho, la que contiene todas lasherramientas que ya
habíamos indicado.

1. Acceder al siguiente enlace. O bien desde http://www.google.com/ buscar sourceforge pentaho, seleccionar el primer
resultado y luego seleccionar el enlace que indica "Download" en el cuadro verde. Sin importar el modo que se haya
elegido, nos encontramos con la siguiente pantalla:

2. Ahora accedemos al enlace Business Intelligence Server y se mostrará a continuación todas las versiones existentas de
Pentaho:

3. ¿Y ahora qué versión elegir?. En mi caso, hasta ahora he utilizado las versiones estables1.2.0-stable, 1.7.1-stable y 2.0.0-
stable, como se puede ver, la versión más antigua data de fines del año 2006 y hasta ahora (febrero del 2008) en cada
nueva versión se han realizado mejoras. En este blog vamos a trabajar con las versiones , y --Queda a elección de
cada uno elegir la versión de trabajo, sin antes inidicar que entre ambas versiones existen varias diferencias tanto en
interfaz como en ciertas configuraciones que se deben realizar para trabajar accediendo a datos propios.

4. Si se elige la version 1.7.1-stable se muestran diversos archivos que podemos descargar:


- Para SO Windows: pentaho_demo_hsqldb-1.7.1.zip o pentaho_demo_mysql5-1.7.1.zip.
- Para SO Linux: pentaho_demo_hsqldb-1.7.1.tar.gz o pentaho_demo_mysql5-1.7.1.tar.gz

En las opciones anteriores la principal diferencia es el gestor de base de datos que utliza Pentaho, siendo éstasHSQLDB
(Hypersonic) y MySQL. El servidor de aplicaciones que utilizan estas versiones esJboss.

Si se elige la versión 2.0.0-stable se pueden descargar:


- Para SO Windows: biserver-ce-2.0.0.stable.zip.
- Para So Linux: biserver-ce-2.0.0.stable.tar.gz.

En esta versión Pentaho utiliza el gestor de base de datos HSQLDB y como servidor de aplicacionesTomcat.
  
%
. --/(

El 23 de marzo en el blog Todo BI daban la noticia de la nueva versión comercial de Pentaho, la versiónc 
# -. Como
se ha indicado para la descarga de las versiones (libres) anteriores, del mismo modo podemos ubicar los archivos de esta
nueva versión.
A la fecha, se pueden descargar las versiones:
- 3.0.0-RC1
- Citrus Milestone 1
- 3.0.0-RC2
- Citrus Milestone 2

0   





Una vez descargado el archivo que se haya elegido, lo único que queda es descomprimirlo. La imagen siguiente muestra el
directorio obtenido para cada versión y la estructura de archivos principal. En la versiónë  ë la carpeta prinicipal es
pentaho-demo y en la versión 2   es i-server

Como se puede apreciar existen diferencias en la estrucutura de directorios, pero, para empezar a conocer Pentaho y
apreciar todo lo que podemos realizar, solo debemos ejecutar el archivo
& 
# 
(en Windows) o 

& 
# # (en Linux). Esperamos a que el servicio cargue (en la ventana de comandos muestra el avance de la carga
hasta que se muestra el mensaje INFO [STDOUT] Pentaho BI Platform server is ready).

Ahora sólo abrimos una ventana de nuestro navegador e ingresamos la siguiente dirección http://localhost:8080/pentaho
y de no mediar inconveniente alguno se debe mostrar lo siguiente:

Para ingresar, de la lista de opciones válidas elegimosß %("y hacemos clic en  y listo, ya podemos ir
navegando para ver todo lo que ofrece Pentaho.
Espero que con todo lo indicado sea más fácil tener Pentaho "instalado" en nuestra PC o servidor. En los siguientes posts
iré agregando algunos tips para poder evitar el Logininicial, acceder a la aplicación no solo localmente sino usando
nuestra dirección IP o dominio, y sobre todo utilizar Pentaho para acceder a nuestra propia información.

c 
# *   
  
 + , 
i bien a estas alturas ya podemos revisarlos diversos ejemplos que muestra Pentaho, es de esperar que creemos nuestras
propias páginas y mejor aún obteniendo información de nuestra propia base de datos. Entonces sin perder más tiempo nos
ponemos manos a la obra.


 
!
  
 
Para este ejemplo y los que vendrán a continuación se va a crear una pequeña base de datos llamada VENTAS, la cual la
vamos a crear en el DBMS (DataBase Management System)PostgreSQL, para esto estoy usando la versión 8.3.2
(Obviamente el que ya posee una base de datos propia podrá trabajar con ella y con sus propias querys).

K Entonces cargamos pgAdminIII, clic derecho en Databases-> New Database y creamos la base de datos† NTAS.

K A continuación vamos a crear el esquema ventas, para esto


nos ubicamos en Schemas de la base de datos VENTAS, click derecho-> New Schema.
K Ahora desde la BD VENTAS, abrimos una ventana para
ejecutar querys.

K En la ventana escribimos las querys para crear las tablas. De los siguientes enlaces pueden descargar el script para
crear las tablas y cargar los registros de ejemplo. El modelo entidad relación se muestra a continuación.


12
c 
#  '  
Dado que debemos crear nuestra propia solución para acceder a nuestra base de datos, la herramienta que debemos
utilizar es c  
   (PDS). De la misma página de donde se descarga Business Intelligence Server (BIS)
podemos descargar las diferentes versiones de PDS. En este caso estoy utilizando una versión algo antigua pds-open-
(
1.7.1).
Una vez descargado el archivo pds-open-ë  ë ip simplemente queda descomprimirlo, y se obtiene la carpetaï 

 . Ahora ejecutamos el archivo PentahoDesignStudio exe. Se mostrará la misma interfaz de Eclipse. Cerramos
la ventana Welcome y debemos seguir los siguientes pasos para crear nuestra solución:

2 ë Crear nuevo proyecto

K Ir al menú File -> New -> Project. En la lista que se muestra abrir la carpeta General y seleccionar Project

K En Project Name escribimos: BIS 1.7.1.


K Desactivamos el check en A     y navegamos hasta la ruta de la carpetaï   (En este caso
estamos usando la versión 1.7.1 de Pentaho BIS). Y ya se había visto en el post anterior Descarga
( e instalación)
cual era la carpeta donde se había "instalado".

K Con esto ya hemos creado nuestro proyecto en PDS. Y debería quedar como se muestra en la siguienteimagen:
2 2 Crear nueva solución

K Nos ubicamos en la carpeta pentaho-solutions, creamos una carpeta nueva (Click derecho-> New -> Folder) y la
nombramos ventas.
K Ahora nos ubicamos en la carpeta ventas y vamos al menúBI Platform y elegimos New Action Sequence
K Verificamos que en ?   esté la ruta de la carpeta ventas y en   escribimos vendedores xaction.

K Una vez creado el archivo h    . Hacemos doble click en él y ya podremos editarlo.
K En PDS al editar un archivo   muestra el Action Sequence ditor. En este link se puede encontrar más
información.
K Ahora nos ubicamos en el tab Define Process y añadiremos un Process Action En este caso se obtendrá datos de
una consulta a nuestra base de datos, para eso vamos a: Add New Action-> Get Data From -> Relational.
K Ponemos como nombre del Process Action:üuery-†endedores y además configuramos lo siguiente:
1. Database Connection Type: Elegimos ßNDI
2. Nombre del JNDI: Escribimos †entas
3. Query: Escribimos la consulta SQL para devolver el listado de vendedores por cada tienda.  
     h h    h     
h    
  h h  h    h   
    
4. Result Set Name: Por defecto aparece query-result (si se desea se puede renombrar).
5. Process Outputs: Click en Add Output y elegimos_    o el nombre que hayan usado en el paso
anterior para Result Set Name.

K Ahora debemos testear si nuestro archivo vendedores xaction devuelve el listado de los vendedores. Para eso nos
ubicamos en el tab Test.
K En Penaho Server URL escribimos:http://localhost:88/pentaho. (Para que esta URL quede configuarada de
manera permanente lo hacemos en: menú Window -> Preferences -> Pentaho Design Studio -> Pentaho Server
URL).
K Ahora hacemos click en el botón Èenerate URL y se genera la URL completa para acceder al xaction que hemos
creado.
K Por último hacemos click en Run, aparece el Login inicial de Pentaho, en mi caso selecciono el usuario Joe (Admin)
y ...... ocurrirá un error, con el siguiente mensaje: Connection to data source is not valid.
K El error se produce porque falta algo  .& 
 : Configurar el JNDI para realizar la conexión nuestra base
de datos.

2  Configurar ßNDI para conexión a ase de datos


En la versión , de Pentaho BIS se siguen los siguientes pasos para realizar la configuración. (Todo lo realizamos desde
el mismo Pentaho Design Studio.

1. Editar el archivo Voss-we xml ubicado en Voss/server/default/deploy/pentaho war/W B-INF y agregar


luego de:>ù          lo siguiente:

<resource-ref>
<res-ref-name>jdbc/† 
</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<jndi-name>java:/† 
</jndi-name>
</resource-ref>

2. Editar el archivo we xml ubicado en Voss/server/default/deploy/pentaho war/W B-INF y agregar luego de
ù          lo siguiente:

<resource-ref>
<description>†entas</description>
<res-ref-name>jdbc/†entas</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>

3. Ahora nos ubicamos en la carpeta deploy ubicada en Voss/server/default


Click derecho New -> File. Y nombramos al archivo †entas-ds xml, y como contenido del archivo editamos lo
siguiente:

<?xml version="1.0" encoding="UTF-8"?>


<datasources>
<local-tx-datasource>
<jndi-name>†entas</jndi-name>
<connection-url>Vdc:postgresql://localhost:542/† NTAS</connection-url>
<driver-class>org postgresql Driver</driver-class>
<user-name>usuario</user-name>
<password>password</password>
</local-tx-datasource>
</datasources>

Tener presente que el nombre del JNDI es †entas (la primera letra con mayúscula) y es el nombre que hemos
utilizado en los pasos 1 y 2. El nombre de la base de datos que estamos indicando en <connection-url/> es
† NTAS (todo en mayúsculas) pues así lo hemos indicado al crear la base de datos. Además es obvio que se debe
editar el usuario y el password.

4. Debemos asegurarnos que el archivo jar (postgresql-8 2-5 Vdc Var) que permite la conexión a bases de datos
Postgresql exista en la siguiente ruta: Voss/server/default/li/. En la versión 1.7.1 ya viene este archivo jar, en
la versión 1.2.0 se debía copiar el archivo jar en la carpeta indicada.
5. Ahora solamente debemos reiniciar el servicio. Para esto, desde Explorador de Windows acceddemos a los
archivos stop-pentaho at y luego start-pentaho at
6. Una vez reiniciado el servicio volvemos al Pentaho Design Studio, doble click en el archivo vendedores.xaction,
seleccionamos el tab Test, generamos la URL y ejecutamos. Y obtenemos como resultado lo mostrado en la imagen
siguiente:

OBS3    & "  +


4
5 
  
 

  &  
&



+   2.0.0.3.0.0 


c 
# *   
  
 +-"
-
En el post anterior de Conexión a tu base de datos, vimos como acceder a nuestra propia BD, también se indicó que los
pasos seguidos (particularmente para la configuración del JNDI) eran para la versión 1.7.1 de Pentaho BIS.

Este post busca cumplir la misma finalidad pero ahora está aplicado a las versionesestables 2.0.0 y 3.0.0. Ya se había comentado también en el
post de Descarga e Instalación, que existen diferencias en la estrucutura de directorios de la versión 1.7.1 y las nuevas versiones (las dos últimas
son muy similares). Observar la ubicación de la carpeta administration-console:

 
 

 
Esta vez crear nuestro origen de datos es mucho más sencillo, seguir los pasos que se indican a continuación:

K Para empezar iniciar el servcio de Pentaho ejecutando el archivo ï , que se encuentra en la carpeta
  h  .
K Ahora ejecutar el archivo  ï, que se encuentra en la carpeta      ; esto permite que
cargue la Consola de Administración, al cual podemos acceder desde una ventana del navegador escribiendo:
#&677
# 68-//
K Para acceder los datos por defecto son: user:
 y password: &
9 .
K Ahora accedemos a Administración -> Data Sources -> Add Data Source.

K A continuación ingresamos los datos correspondientes para crear el data source hacia nuestra base de datos. Una
observación en este punto: Para este tutorial se tiene la BD en PostgreSQL (el nombre es †3$:'), y antes de
iniciar el servicio de adminitration-console se debe copiar a la ruta: iserver-ce\administration-console\Vdcel
archivo jar postgresql-8 2-5 Vdc Var. De lo contrario en el combo Driver Class no aparece la opción que se
necesita.

K De este modo ya tenemos configurado nuestro origen de datos cuyo nombre es † 


(sólo la primera letra en
mayúscula).

 + 
 #+ 
  ; 
También ser revisó en el post anterior, como crear proyectos usando Pentaho Design Studuio (PDS) En esta ocasión
podemos seguir utilizando la versión 1.7.1 ó pueden descargar las versiones correspondientes de pentaho-design-studio
2.0.0 ó pentaho-design-stduio 3.0.0 RC2.

K Al crear el proyecto no olvide descativar la ubicación por defecto y elegir la carpeta biserver-ce. (Es solo cuestión
de orden y no es obligatorio)
K Desde el proyecto, ubicarse crear una carpeta (nombre: h ) dentro de ï   
K En la carpeta ventas crear un nuevo archivo Action Sequence (nombre: vendedores).
K Editar el archivo vendedores.xaction igual que en elpost anterior.
K Ir a la solapa   y generar la URL y correr (Run) el archivo.
K En la versión 2.0.0 puede ser que retorne un error que haga referencia a que el archivo no existe. Para solucionar
este problema accedemos a la Consola de Administración (http://localhost:8099) vamos a Administration ->
Solution Repository -> Refresh.

c 
# *

  
 
   

En este post vamos a crear la base de datos multidimensional para posteriormente crear los cubos OLAP.
Como ya se anotó en el post Conexión a tu base de datos, estamos trabajando sobre Postgresql, además se ha creado la
base de datos †3$:' y se ha creado también el esquema + 
 donde se tienen las tablas de lo que vendrían a ser las
tablas transaccionales (OLTP). Si es
que aún no tienen los datos de ejemplo, lo pueden descargar de los siguientes enlaces:

1. Crear tablas de la base de datos OLTP.


2. Cargar tablas de la base de datos OLTP.

A continuación desde pgAdminIII crear una conexión a la base de datos †3$:' y crear un nuevo esquema llamado
+ 
. Aquí se crearán las tablas de lo que será nuestra base de datosmultidimensional. Pueden descargar los archivos de los
siguientes enlaces (y ejecutarlos también en el orden en que se muestran):

1. Crear tablas de la base de datos multidimensional.


2. Crear función adicional.
3. Cargar tablas dimensión.
4. Cargar tabla de hechos.

El modelo entidad relación se muestra a continuación (se ha utilizado elesquema estrella):


La base de datos creada presentará las     (dimensions): Tienda, Producto, Vendedor y Fecha de venta.
Además presentará las  
 (measures): Monto vendido y Cantidad de productos vendidos.

Con este modelo podremos luego crear un cubo OLAP y realizar consultas que obtengan respuestas a consultas tales como:

K Monto vendido del producto (Televisor) en la tienda (SAN ISIDRO) en un período determinado.

K Monto vendido por cada vendedor de la tienda (SAN ISIDRO) para el producto (COMPUTADORA) en el período
JUNIO 2009.

c 
# *
 c    
En el post anterior ya se había creado la BD multidimensional, es momento entonces de crear el cubo OLAP (un archivo
XML), para esto utilizaremos la herramienta gráficaCube Designer (acceder a la siguiente página donde podrán obtener
versiones para Windows, Mac o Linux).

Una vez descargado el archivo, se procede a descomprimir y se obtiene la carpetaCubeDesigner, para cargar simplemente
ejecutamos el archivo CueDesigner exe. Para el caso particular de este tutorial, el gestor de base de datos utilizado es
Postgresql, por lo que antes de ejecutar la herramienta se debe copiar el archivopostgresql-8 2-5 Vdc Var %<( en la
carpeta CueDesigner\li\Vdc, a continuación seguir los pasos que se indican6

%<(!' El archivo .jar lo puede encontrar entre los archivos de Pentaho BI Server, en la version 1.7.1 lo encuentra en
pentaho-demo\jboss\server\default\lib; en la versión 2.0.0 en biserver-ce\administration-console\jdbc y en la versión
3.0.0 en administration-console\jdbc. 

1. Desde CubeDesigner ir al Menú File -> New Cube Schema.

2. Ingresar los valores siguientes en el Inicio de la Configuración:

K Cue Name: Ventas


K Cue Description: Cubo para obtener los datos de ventas.
K Select a data source. Como es la primera vez que se usa la herramienta se debe agregar un origen de datos, e
ingresar los valores que se indican en la imagen siguiente°     ! _     
       ? "    !#:
3. Realizar el '
&  :

.

K Del panel inferior izquierdo seleccionar el esquema+ 


 (esquema donde se hallan las tablas del modelo
multidimensional). Asegúrese que el servicio Pentaho BI Server esté cargado.
K Se muestran las tablas, y ahora arrastrarlas al panel derecho y puedenordenarlas como se muestra en la imagen.
K Ordenadas las tablas se procede a seleccionar los campos que se utilizarán para crear las medidas, tablas
dimensión y de hechos.

4. 

' 
 (Create Measures)

K En el combo se debe seleccionar la tabla#+ 


.
K Se muestran las columnas de la tabla seleccionada pero solo seleccionarthventas ca_ventas %

 
+ 
( y thventas im_ventas %'  +  (Verificar que el tipo de agregación sea '1'y el formato sea
"-.

5. 

    (Create Dimensions). En la lista Source Fields realizar lo siguiente:

K Seleccionar el campo +   =+  " luego click en Add New Dimension e ingresar como nombre de
dimensión: †   .
K Seleccionar el campo  
 = 
, luego click en Add New Dimension e ingresar como nombre de
dimensión: : 
.
K Seleccionar el campo &   =&  , luego click en Add New Dimension e ingresar como nombre de
dimensión: c   .
K Seleccionar el campo 5 +  =5 + , luego click en Add New Dimendion e ingresar como nombre de
dimensión: 0 #
.

K Al momento de ir creando cada dimensión puede ir


editando algunas propiedades, como por ejemplo ; '  , cambiando el valor por defecto a ; esto
porque cada miembro de las dimensiones que se usan para este u t torial no presentan valores duplicados ° 
        #.
K La dimensión fecha presentará una jerarquía de 3 niveles (año, mes y día), se puede agregar dichos niveles desde
CubeDesigner, pero lo dejaremos así en este momentopues editaremos a mano el archivo XML más adelante°_ 
 ï     ï     $ "c#

6. c
 5
 En el último paso se puede apreciar las siguientes partes:

K † 9>'. En la solapa > L Source se puede observar el código XML que se ha generado (schema files). En la
solapa > L DO se observa la vista en árbol de la estructura del cubo.

K c #. La publicación generará 3 archivos°    ïï    #pero antes se
debe configurar el Pulish Password editando el archivo & # = 5 el cual se ubica en pentaho-
solutions/system/. Obviamente el sevicio Pentaho BI Server debe estar activo.
K También se debe indicar donde se generarán los 3 archivos, enc #
  ingresar 7+ 
7 
&"la ruta
completa donde su ubicarán los archivos espentaho-solutions/ventas/olap(La carpeta h  ya se había
creado en uno de los post anteriores, se debe crear la carpetaï).
K El valor que aparece en Ë c #1? no es necesario modificarlo.
K Además del Publish Password, la publicación solicita datos enServer Userid y Server Password se debe ingresar
V y &
9  respectivamente.
K Por último click en Publish.

K c + 9. Si el archivo XML que se ha generado, y el código XML que define las medidas, dimensiones y el cubo
está correcta se podrá visualizar el resultado visualizando los datos del cubo desde la página xaction que se
generó.

 4
 @ &    +

&4

   c 
#  '  "&

    
 



& 
   
2
& 
.&   +
 
 
&
 5 c .>''      
 
 
 #+   
 3
 
&
:  & 4
2
 


5
 
 

  
 
   


IMPORTANTE      &
 " 
 #+ >';     

 
%& 
# 
 
+ 
 
. 
"&    V  
 

 " &
 ;  
&  4(&  ;     

. 2


 #+ † 
 
12
   
 #+ "
    +
2

&4
† 

  
 
4 
    
5 
   6


&
   &  &  " &   2
 

5   

;  

ß&+ "   
 
    &        +
   
 


2
 & 
 Producto .   + 

 producto más vendido.

     &  "    



  
. 


2

 †   "
A&     +
;    ; 
vende más productos ?'B" 
;   
más monto en ventas 1'c3C





Potrebbero piacerti anche