1

Manual Pentaho Data Integration
Grupo de Investigación Base de Datos
Dra. Angélica Urrutia.
Universidad Católica del Maule
Chile

Integrantes:
Héctor Valdés Amaro.
Christian Ortiz González.
Javier Jirón Orozco

2

Anexo 1:
schema-workbench

3

Para la realización de cubos con la herramienta schema-workbench, se debe revisar que se
cuente con los driver de conexión, con la base de datos que se seleccionó en este caso la
conexión con SQL SERVER.
Para esta tarea se debe ingresar a la carpeta drivers que se encuentra dentro de la carpeta de
schema-workbench

Carpeta driver dentro de schema-workbench

Una vez que se ingresó a la carpeta, se debe revisar que exista el driver para realizar la
conexión, en el caso del driver para la conexión a la base de datos SQL Server es SQLJDBC4,
que como se aprecia en la siguiente imagen el driver esta contenido dentro de la carpeta.

que en el caso de la investigación es SQL Server. se procede a realizar la conexión a la base de datos fuente. Creación de conexión con schema-workbench. .4 Dentro de la carpeta driver cerciorando la existencia del driver de conexión SQL Server Una vez que el driver de conexión esta dentro de la carpeta de driver. Como se muestra en la siguiente imagen. una vez dentro de schema-workbench se debe presionar options que se encuentra en la parte superior de la ventana. Para esto.

se debe especificar cuál es el host. en el caso de la investigación como se trabaja con un servidor local que soporta la base de datos. .  Nombre de la base de datos: nombre de la base de datos a la cual se quiere conectar.  Host name: el host que soporta la base de datos.  Password: clave del usuario que se conecta. aparece en pantalla la ventana de configuración de la conexión a la base de datos fuente.  Nombre del usuario: nombre del usuario por el cual se realizará la conexión.  Número de puerto: número del puerto por el cual se realizará la conexión. Dentro de la ventana se deben configurar los siguientes parámetros:  Nombre de la conexión: se asigna un nombre a la conexión. En la siguiente imagen se muestra esta ventana. en el caso de no este.5 Luego de presionado el botón options.

para esto se presiona el botón TEST y si la conexión fue bien configurada.6 Ventana de configuración de conexión con la base de datos fuente en el caso de estudio SQL SERVER. Luego de realizada la configuración. . aparecerá un cuadro de dialogo que indica que la conexión con la base de datos esta OK. como se muestra en la siguiente imagen. se procede a probar si la configuración de la conexión fue bien realizada.

se procede a la creación del cubo. Con la conexión a la base datos fuente realizada. para esto se debe seleccionar el menú file dentro de schema-workbench.7 Comprobación de conexión con base de datos fuente. Como se muestra en la siguiente figura: . Selecciona schemas para comenzar con la creación.

con esto adjuntamos un cubo al nuevo Schema. Como se aprecia en la siguiente imagen: . se posiciona sobre el schema y se presiona el botón secundario del mouse y se selecciona la opción add cube. Una vez creado el cubo.8 Creación de schema dentro de schema-workbench.

. para esto se presiona el botón segundario del mouse sobre el cubo. lo cual desplegará un menú segundario en donde se selecciona add tabla.9 Creación de cubo dentro del nuevo Schema. Una vez que se creó el cubo. se procede a crear la tabla de hecho del cubo.

Para esto primero seleccionaremos el Schema de la base de datos fuente que contienen la tabla de hecho. En la siguiente imagen se aprecia este proceso. que contiene el esquema de la tabla de hecho. Creada la tabla de hechos. .10 Creación de tabla de hechos dentro del cubo. Para el caso en estudio el Schema es dbo. debemos especificar que tabla de la base de datos fuente corresponde a esta tabla de hecho.

11 Selección de Schema de base de datos fuente de tabla de hechos Seleccionado el Schema se selecciona la tabla de hechos del cubo. . En el caso en estudio la tabla de hecho corresponde a las ventas por internet.

sino que se crea dentro del Schema. esta creación se realiza de esta manera. como se muestra en la siguiente figura. esta creación se realiza de una forma particular. Seleccionada la tabla de hechos. esto desplegará un menú segundario en donde se selecciona add dimensión. ya que no se crea dentro del cubo que es una posibilidad. .12 Selección de tabla de hechos. La creación de dimensiones dentro del cubo se posiciona sobre el Schema y se presiona el botón secundario del mouse. se procede a la creación de la tabla de dimensiones del cubo. ya que si estas dimensiones son requeridas por otro cubo sólo se utilizan y no tienen que ser creadas cada vez que se crea un cubo.

esto se realiza para definir cómo será el nivel de navegación que se tendrá por cada dimensión. se debe especificar cuál es la jerarquía que tendrá esta dimensión. como se muestra en la siguiente imagen. para agregar jerarquías se posiciona sobre la jerarquía y se presiona el botón segundario. Una vez creada la dimensión. el que desplegará el menú segundario y se selecciona add hierarchy. .13 Creación de dimensiones dentro del Schema.

En el caso de estudio las tablas de dimensiones serán las tabla cliente y tabla date. para esto se presiona sobre la jerarquía y se desplegará un menú segundario el que contendrá la add table. Se debe definir la tabla que contendrá esta dimensión que se define.14 Creación de jerarquías. .

Para la selección de la tabla que se incluye en la dimensión.15 Incorporación de tabla a la dimensión. se debe seleccionar el Schema que contiene a la tabla. . En el caso en estudio el Schema que contienen a la tabla cliente es el Schema dbo. como se puede ver en la siguiente imagen.

. En la siguiente imagen se grafica esta selección. Seleccionado el esquema. se selecciona la tabla que estará en la dimensión. en el caso en estudio esta tabla será la tabla cliente.16 Selección de Schema que contiene tabla de dimensión.

17 Selección de la tabla cliente dentro de la dimensión. En el caso en estudio se definió la jerarquía ocupación y nivel de estudios. Se comienza definiendo la jerarquía nivel de ocupación. procederemos a definir como serán las jerarquías dentro de esta dimensión. . como se muestra en la siguiente imagen. para esto primero debemos seleccionar esta tabla cliente. Agregada la tabla a la dimensión.

en el caso en estudio la columna ocupación.18 Selección de tabla de cliente. Definida la tabla dentro de la jerarquía. . se define cual es la columna de esta tabla que será parte de la jerarquía.

la que tendrá como jerarquía año. semestre y cuarto que fue creada de la misma manera que fue creada la jerarquía cliente.19 Selección de atributo ocupación dentro de la jerarquía Se realizó el mismo proceso para el atributo educación dentro de las jerarquías. Se creará otra dimensión llamada tiempo. si el proceso es realizado correctamente aparecerá dentro de las jerarquías los dos niveles que creamos. En la siguiente imagen se muestra como el Schema con las dos dimensiones creadas con sus respectivas jerarquías .

. Creadas la dimensiones hay que incluirlas dentro del cubo.20 Cubo con las dimensiones cliente y tiempo. para esto se posiciona sobre el cubo y se presiona el botón segundario del mouse y se selecciona add dimensión usage. Como se muestra en la imagen.

En la siguiente imagen se muestra la selección de la dimensión cliente que es incorporada al cubo. en este caso cliente y tiempo.21 Incorporación de dimensiones al cubo. Incorporada la dimensión seleccionamos las dimensiones que están disponibles. . sólo se mostrará el procedimiento para el cliente ya que para la dimensión tiempo es el mismo procedimiento.

. Para esto. pero falta incorporar la métrica. Se llega al punto en donde se tiene creado el cubo con su tabla de hecho definida y sus respectivas dimensiones. nos posicionamos sobre el cubo y presionamos el botón segundario del mouse. como se muestra en la siguiente imagen.22 Incorporación de dimensiones al cubo. en el menú desplegable se selecciona add measure.

en el caso de estudio se selecciona la suma de ventas por internet por lo que la definición del tipo de métrica corresponde a suma. . Agregada la métrica se especifica qué tipo de métrica es. en la siguiente imagen se muestra la definición de la métrica.23 Incorporación de métrica.

Definida la métrica hay que especificar que atributo de la tabla de hecho correspondiente a este atributo. . en el caso en estudio la métrica de la tabla de hecho es suma de ventas por internet.24 Definición del tipo de métrica. en la imagen siguiente se aprecia la asignación del atributo que corresponde a la métrica de la tabla de hechos.

por lo que se debe publicar el cubo. . pero la herramienta Schema workbench no permite la visualización de éste. este procedimiento se realiza ingresando al menú publicación con los siguientes datos:  Password de publicación: password. Como se muestra en la siguiente imagen.25 Definición de métrica.  Password: password. Con este último paso queda definido el cubo.  User: joe.

.26 Publicación del cubo.

27 ETL: Spoon .

escribir datos en una variedad de diferentes fuentes de datos y destinos. Como se muestra en la siguiente figura: . Realiza las funciones típicas de flujo de datos como la lectura. mantener y desplegar. En PDI 3. sino que es ejecutado por Spoon para tomar todas sus funcionalidades. limpia e integra la información y la pone en manos del usuario. Para realizar esta conexión debe cerciorarse que el ETL spoon cuenta con el driver de conexión para SQLSERVER.  Spoon: Herramienta para diseñar transformaciones ETL usando el entorno gráfico. Uno de sus objetivos es permitir que el proceso sea fácil de generar. Carte. Incluye 4 herramientas principales (Spoon-Chef. refinación. diseñar la carga de datos incluyendo un control de estado de los trabajos. Es una herramienta para crear trabajos que automatizan el proceso de actualización de bases de datos en una forma compleja. La utilización del ETL la centraremos en la utilización con la base de datos que se encuentra en sql sever AdventureWorksDW2008.  Chef: Permite mediante una interfaz gráfica. Kitchen). Pan. transformación. el cual se encuentra en la siguiente ruta: Primero: dentro de la carpeta de spoon se encuentra una capeta llamada Libext. el cual incluye un conjunto de herramientas para realizar ETL. Pentaho Data Integration abre.28 Pentaho Data Integration es una herramienta de Integración de Datos. Transformaciones diseñadas en Spoon se pueden ejecutar con Kettle Pan y Kitchen.1 Chef no se presenta como un programa separado. validación.

Segundo: una vez dentro de la carpeta LibExt se abre la carpeta JDBC la cual contiene todos los driver que tiene spoon para realizar conexiones. si se quisiese realizar una conexión distinta a la de SQL server se debe rectificar que el driver de conexión con la base de datos se encuentre en esta carpeta. Driver JDBC para SQL Server. .jar. Tercero: una vez dentro de la carpeta. Carpeta JDBC contienen los driver de conexión a las diferentes bases de datos. En el caso de la conexión de SQL Server es necesario el driver SQLJDBC4.jar. de no encontrarse debe ser incorporado a esta carpeta con formato . se busca en driver de conexión a la base de datos.29 Carpeta Libext en spoon.

Al presionarlo se preguntará por el tipo de conexión que se desea realizar. por lo que se procede a acceder a Spoon. se debe definir cuál es la base de datos para esto. Selección tipo de conexión de spoon.  Conexión con archivos. Una vez que se ingresa aparece la siguiente pantalla: Ingreso a ETL Spoon En donde se debe seleccionar el signo + para agregar una nueva conexión con la base de datos. spoon presenta la siguiente interface: .30 Ya se comprobó que el ETL cuenta con el driver de conexión a la base de datos. Seleccionar conexión con base de datos como se muestra en la siguiente figura. Una vez seleccionada la conexión con la base de datos. estas pueden ser de dos tipos:  Conexión con una base de datos.

.  Host name: el host que soporta la base de datos.  Número de puerto: número del puerto por el cual se realizará la conexión. En donde se debe definir:  Nombre de la conexión: se asigna un nombre a la conexión.31 Interface que presenta spoon para la conexión con la base de datos.  Password: clave del usuario que se conecta.  Nombre de la base de datos: nombre de la base de datos a la cual se quiere conectar. es host que soporta la base de datos en localhost. se debe especificar cuál es el host.  Nombre del usuario: nombre del usuario por el cual se realizará la conexión. pero en el caso de no ser ese el host. en el caso de la investigación como se trabaja con un servidor local.

de estar correcta la conexión aparecerá en pantalla la notificación de conexión. Como se muestra en la siguiente imagen: Interface de prueba de conexión con la base de datos con spoon. en este paso se debe asignar una id y un nombre para luego presionar el botón create or upgrade. Con esta acción aparecerá la información del repositorio. como se muestra en la siguiente figura: .32 Una vez especificado los datos de la conexión se procede a realizar el test de conexión. Se sabe que la conexión esta correcta por lo que se procede a presionar el botón OK. presionando el botón TEST.

Para realizar un nuevo trabajo o transformación se debe ir a la creación de un nuevo archivo. como se muestra en la siguiente figura: . en donde se consultará que tipo de archivo será.33 Creación de repositorio en ETL spoon. Creado el repositorio a la base de datos se tiene acceso a spoon con la siguiente interface: Interface de inicio spoon.

Como se muestra en la siguiente imagen: . Seleccionada una de las opciones de archivos. con el que cuenta el ETL Spoon de Pentaho. aparecerá en el costado derecho de la pantalla el menú de herramientas.34 Creación de trabajo o transformación.

A continuación se procede a especificar las características que tienen las diferentes herramientas que cuenta el ETL Spoon en las diferentes aéreas: Nombre Access Input Icono Descripción Este paso se lee directamente desde Microsoft Access "MDB" archivos.35 Interface de trabajo de Spoon. es decir determina un campo que .normalizar datos por búsquedas de pares clave-valor. El paso de des- Mapeo de Valores: Desnormalización de fila normalización de fila permite des. El paso mapeo de valores consiste en remplazar una cadena de valor fuente en otra cadena de valor destino. Entrada XML Este paso le permite leer la información almacenada en archivos XML. Es necesario que la entrada para la des-Normalización de filas este ordenada por las claves de agrupación Row Flattener Este componente permite aplanar datos secuencialmente. Se pueden convertir valores de campos nulos o vacios en otros valores. Entrada Tabla: Este paso se utiliza para leer la información de una base de datos y utilizando una conexión SQL.

Este componente se usa para agrupar. suma. puedes escoger los campos de la tabla que desees de tu base de datos o de cualquier elemento de entrada de datos. primer valor nulo. es decir. Filtrar filas Esta opción se utiliza para filtrar filas utilizando fórmulas sencillas. Append Stream Este componente se utiliza para unir flujos de datos procedentes de dos entradas en un elemento de salida cualquiera. Hay que tener en cuenta que la entrada de datos procedentes de ambas medidas ha de ser idéntico. teniendo en cuenta ciertas reglas como. . Donde el objetivo es organizar los valores o calcular los valores en un grupo definido de campos. etc. especificando las condiciones que desees que cumplan estos campos y enviarlos a un destino específico. promedio.36 Agrupar debe ser aplastado y este lo resume.

la misma longitud de la fila. de control para detectar la alteración accidental de los datos durante la transmisión o el almacenamiento. Switch / case La funcionalidad del componente “Switch / Case” se basa en el mismo principio que se utiliza en los lenguajes de programación. el mismo tipo de dato.37 es decir. ADD a CKECKSUM Este componente tiene como función principal realizar una suma. para ello genera una suma de chequeo en el origen y pasa ese resultado como un nuevo campo en el destino. Calculadora: El componente de calculadora tiene funciones predefinidas que se pueden ejecutar sobre los valores de los campos de entrada. Partir Campos Esta transformación de Pentaho se encarga de tomar una tabla de entrada que tenga algún campo de .

si la encuentra y contiene la misma información no hace nada y si no son iguales la . Validador de datos Validación de datos se suele utilizar para asegurarse que los datos tingan una cierta calidad. Ejecutar Script SQL Con este paso se puede ejecutar una sentencia SQL. Insert-Update: El paso Insert/Update primero hace una búsqueda de la fila en la tabla usando una o más llaves de búsqueda.38 tipo Cadena. en nuevos campos de una tabla de Salida. ya sea durante la fase inicial de la transformación o una vez por cada fila de entrada que el paso este dando. Clone Row En este paso se crea una copia (clona) la fila y se inserta a continuación de la fila clonada en el próximo paso. dividir el contenido de cada una de las tuplas de dicho campo. si no la encuentra inserta la fila.

39 actualiza. Si se puede encontrar y actualizar los campos son los mismos. la fila de la tabla se actualiza. Actualización El pasó actualizar. Si no son todos iguales. no se hace nada. se inserta la fila. JavaScript La funcionalidad del paso JavaScript se basa en la ejecución de un script en este tipo de lenguaje. Si la fila no se puede encontrar. . primero busca una fila en una tabla usando una o más claves de búsqueda.