guía de componentes de pentaho data integration grupo...
TRANSCRIPT
Guía de Componentes Pentaho Data Integration
1
Guía de Componentes de Pentaho Data Integration
Grupo ETL
V - 1.0
Guía de Componentes Pentaho Data Integration
2
Tabla de Contenidos
Tabla de Contenidos ..................................................................................................... 2
Introducción Pentaho Data Integration .......................................................................... 5
Creación de Transformaciones y Jobs .......................................................................... 5
Componentes ............................................................................................................... 8
Entrada Tabla ............................................................................................................ 8
Descripción ............................................................................................................ 9
Ejemplo ............................................................................................................... 10
Mapeo de Valores ................................................................................................... 25
Descripción .......................................................................................................... 26
Ejemplo ............................................................................................................... 26
Desnormalización de Filas ...................................................................................... 31
Descripción .......................................................................................................... 32
Ejemplo ............................................................................................................... 32
Ejecutar Script SQL ................................................................................................. 38
Descripción .......................................................................................................... 39
Ejemplo ............................................................................................................... 39
Fundir Filas ............................................................................................................. 42
Descripción .......................................................................................................... 43
Ejemplo ............................................................................................................... 44
Row flattener ........................................................................................................... 45
Descripción .......................................................................................................... 46
Ejemplo ............................................................................................................... 47
Access Input............................................................................................................ 48
Descripción .......................................................................................................... 49
Ejemplo ............................................................................................................... 49
Guía de Componentes Pentaho Data Integration
3
Agrupar ................................................................................................................... 50
Descripción .......................................................................................................... 50
Ejemplo ............................................................................................................... 50
Filtrar Filas .............................................................................................................. 51
Descripción .......................................................................................................... 52
Ejemplo ............................................................................................................... 52
Append Stream ....................................................................................................... 60
Descripción .......................................................................................................... 61
Ejemplo ............................................................................................................... 62
Switch / Case .......................................................................................................... 64
Descripción .......................................................................................................... 65
Ejemplo ............................................................................................................... 66
Procedimiento de Base de Datos ............................................................................ 74
Descripción .......................................................................................................... 75
Ejemplo ............................................................................................................... 75
SQL ......................................................................................................................... 82
Descripción .......................................................................................................... 83
Ejemplo ............................................................................................................... 83
JavaScript ............................................................................................................... 85
Descripción .......................................................................................................... 86
Ejemplo ............................................................................................................... 86
Agregar Filas ........................................................................................................... 88
Descripción .......................................................................................................... 89
Ejemplo ............................................................................................................... 89
Búsqueda/Actualización en dimensión .................................................................... 92
Ejemplo ............................................................................................................... 92
HTTP....................................................................................................................... 97
Ejemplo ............................................................................................................... 98
Calculadora ............................................................................................................. 99
Descripción ........................................................................................................ 101
Lista de funciones ................................................................................................. 102
File Exists .............................................................................................................. 104
Descripción ........................................................................................................ 105
Ejemplo ............................................................................................................. 105
Copy Files ............................................................................................................. 107
Descripción ........................................................................................................ 109
Guía de Componentes Pentaho Data Integration
4
Display Msgbox Info .............................................................................................. 110
Descripción ........................................................................................................ 110
Ejemplo ............................................................................................................. 111
ADD a checksum .................................................................................................. 112
Descripción ........................................................................................................ 112
Ejemplo ............................................................................................................. 113
Partir Campos ....................................................................................................... 117
Descripción ........................................................................................................ 118
Ejemplo ............................................................................................................. 118
Check if connected to repository ........................................................................... 122
Descripción ........................................................................................................ 122
Check if a column exists ........................................................................................ 123
Descripción ........................................................................................................ 124
Ejemplo ............................................................................................................. 125
Información del Sistema ........................................................................................ 129
Descripción ........................................................................................................ 130
Ejemplo ............................................................................................................. 131
Start ...................................................................................................................... 132
Descripción ........................................................................................................ 132
Compare Folder .................................................................................................... 133
Descripción ........................................................................................................ 134
Insert-Update ........................................................................................................ 135
Descripción ........................................................................................................ 136
Clone Row ............................................................................................................ 138
Descripción ........................................................................................................ 138
Java Script Job Entry ............................................................................................ 139
Descripción ........................................................................................................ 140
Validador de Datos ................................................................................................ 141
Descripción ........................................................................................................ 142
Ejemplo ............................................................................................................. 145
Entrada XML ......................................................................................................... 152
Descripción ........................................................................................................ 153
Ejemplo ............................................................................................................. 157
Actualizar .............................................................................................................. 165
Descripción ........................................................................................................ 166
Ejemplo 1........................................................................................................... 168
Guía de Componentes Pentaho Data Integration
5
Ejemplo 2........................................................................................................... 179
Introducción Pentaho Data Integration
Pentaho Data Integration es una herramienta de Integración de Datos, la cual incluye
un conjunto de herramientas para realizar ETL. Uno de sus objetivos es que el proceso
sea fácil de generar, mantener y desplegar.
Pentaho Data Integration abre, limpia e integra la información y la pone en manos del
usuario.
Incluye 4 herramientas principales (Spoon-Chef, Pan, Carte, Kitchen).
Spoon: Herramienta para diseñar transformaciones ETL usando el entorno
gráfico. Realiza las funciones típicas de flujo de datos como la lectura,
validación, refinación, transformación, escribir datos en una variedad de
diferentes fuentes de datos y destinos. Transformaciones diseñadas en Spoon
se pueden ejecutar con Kettle Pan y Kitchen.
Chef: Permite mediante una interfaz gráfica, 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. En PDI 3.1 Chef no se presenta como un programa separado,
sino que es ejecutado por Spoon para tomar todas sus funcionalidades.
Creación de Transformaciones y Jobs
Primeramente se debe abrir la aplicación (Figura 1)
Guía de Componentes Pentaho Data Integration
6
Figura 1: Abrir Aplicación
Después debe configurar y establecer la conexión a la Base de Datos y crear o
actualizar en caso de ser necesario el Catalogo, seguidamente debe establecer la
contraseña (admin), la cual accederá al entorno de trabajo (Figura 2) de Pentaho,
permitiendo esto utilizar la herramienta con las diferentes opciones y componentes que
la misma brinda.
Guía de Componentes Pentaho Data Integration
7
Figura 2: Entorno de Trabajo de Pentaho
Para poder trabajar con las opciones y componentes que brinda la aplicación se debe
crear una nueva transformación o trabajo. Para crear una nueva transformación (clic
derecho encima del menú Transformaciones/nuevo) (Figura 3).
Guía de Componentes Pentaho Data Integration
8
Figura 3: Creación de una nueva transformación
Así mismo sucede con la creación de un nuevo Trabajo. Para crear un nuevo trabajo
(clic derecho encima del menú Trabajo/nuevo).
Componentes
Entrada Tabla
El ícono o el símbolo que representa al paso Entrada Tabla es el siguiente:
Este se encuentra en el menú Entrada de la herramienta como se muestra en la
(Figura 4).
Figura 4: Ubicación del Componente Entrada Tabla
Guía de Componentes Pentaho Data Integration
9
Descripción
Este paso se utiliza para leer la información de una base de datos, y utilizando una
conexión SQL. Se genera el SQL básico automáticamente. En este caso se centra en
la utilización de una conexión a una base de datos Oracle.
Configuración del Componente Entrada Tabla
Opción Descripción
Nombre del paso Nombre único que identifica al paso
Conexión La conexión de base de datos desde la que leer los datos
SQL La sentencia SQL usada para leer la información de la
conexión de base de datos. También puede hacer clic en
Obtener SQL... para navegar por las tablas y genera
automáticamente una base select.
Enable lazy conversion Permite evitar innecesarias conversiones de tipo de datos y
puede resultar importante para el rendimiento.
Remplazar variables en
script
Permite sustituir variables en el script, esta función se
dispone para poner a prueba, con o sin realizar sustituciones
de variables.
Guía de Componentes Pentaho Data Integration
10
Ejecutar para cada fila Permitir llevar a cabo la inserción de datos para cada fila.
Limitar tamaño Permite definir el número de filas que serán leídas; en caso
de ser (0) serán lidas todas las filas.
Ejemplo
En este ejemplo se seleccionará los valores almacenados en la tabla ejemplo. Con los
valores siguientes.
Pasos
1- Seleccionar le componente “Entrada Tabla” y agregarlo a la transformación.
2- Dar clic derecho en el componente y seleccionar “Editar Paso”.
Guía de Componentes Pentaho Data Integration
11
3- Configurar el paso “Entrada Tabla”
1- Lo primero que se debe hacer es nombrar el paso; el cual debe ser único
para cada transformación.
Guía de Componentes Pentaho Data Integration
12
2- Debo definir la conexión donde se encuentra localizada la tabla que se
desea seleccionar.
3- Selecciono obtener consulta en caso de que la selección sea un simple
select.
Guía de Componentes Pentaho Data Integration
13
Y se selecciona la tabla a la cual se le realizara la consulta.
En este caso la aplicación me pregunta si deseo incluir los nombres de los
campos en la consulta
Guía de Componentes Pentaho Data Integration
14
En caso de seleccionar “No” la consulta se muestra de la forma siguiente.
En caso de seleccionar “Si” se muestra de la forma siguiente.
Guía de Componentes Pentaho Data Integration
15
Después de realizar la selección utilizando todas las potencialidades del
lenguaje SQL se puede visualizar el resultado almacenado en la tabla.
4- Pre-visualizo la selección que deseo realizar.
Guía de Componentes Pentaho Data Integration
16
Después de haber realizado el paso 4 ya se está en condiciones de
realizar las transformaciones deseada con las los valores de la tabla a la
cual se le realizó la selección.
Entrada Excel
El ícono o el símbolo que representa al paso Entrada Excel es el siguiente:
Este se encuentra en el menú Entrada de la herramienta como se muestra en la
(Figura 5).
Figura 5: Ubicación del Componente Entrada Excel
Guía de Componentes Pentaho Data Integration
17
Descripción:
El paso de entrada de Excel le proporciona la capacidad de leer los datos de uno o
más archivos de Excel y OpenOffice. Las siguientes secciones describen cada una de
las funciones disponibles para configurar el paso de entrada de Excel.
Ficheros
La ficha archivos es donde se define la ubicación de los archivos de Excel desde el
que desea leer. La tabla siguiente contiene opciones asociadas a la pestaña Archivos:
Opción Descripción
Nombre del
paso
Nombre de la etapa; el nombre tiene que ser único en una sola
transformación.
Tipo de hoja
de cálculo
(motor)
Este campo le permite especificar el tipo de hoja de cálculo. (desde la
versión 4.1.0) Actualmente los siguientes son compatibles:
- Excel 97-2003 XLS: este es el, tipo compatible hacia atrás por defecto
prevista en el back-end de software JXL.
- Excel 2007 XLSX (Apache POI): Si selecciona este tipo hoja de cálculo se
Guía de Componentes Pentaho Data Integration
18
puede leer todos los tipos de archivos conocidos Excel. Funcionalidad
proporcionada por el proyecto Apache POI.
- Excel 2007 XLSX (Apache POI Streaming): Este tipo de hoja de cálculo
permite leer en grandes archivos de Excel (Experimental en 5.1).
- Open Office SAO: Al seleccionar este tipo se puede leer OpenOffice hoja
de cálculo utilizando el motor ODFDOM.
El tipo de hoja de propagación por defecto (motor) se establece en Excel
97-2003 XLS. Cuando usted está leyendo otros tipos de archivos como
OpenOffice, ODS, Excel 2007 y el uso de funciones especiales como las
hojas de cálculo protegidas, es necesario cambiar el tipo de hoja de
Spread (motor) en la pestaña de contenido en consecuencia.
Archivo o
directorio
Especifica la ubicación y / o el nombre del archivo de texto de entrada.
Nota: Haga clic en Agregar para agregar el / directorio / combinación
comodín archivo a la lista de los archivos seleccionados.
Expresión
regular
Especifique la expresión regular que desea utilizar para seleccionar los
archivos en el directorio especificado en la opción anterior.
Excluir de
expresiones
regulares
Excluye todos los archivos (en un lugar determinado) que cumplan con los
criterios especificados por esta expresión regular.
Archivos
seleccionados
Contiene una lista de archivos seleccionados (o selecciones comodín) y
una propiedad que especifica si se requiere el archivo o no. Si se requiere
un archivo y no se encuentra, se genera un error, de lo contrario, el nombre
del archivo se omite.
Acepte los
nombres de
archivo de los
pasos
anteriores
Permite la lectura de los nombres de archivo de un paso anterior en la
transformación. También debe especificar qué paso va a importar desde, y
el campo de entrada en ese paso desde el que recuperar los datos de
nombre de archivo
Mostrar
nombres de
archivo (s) ...
Muestra una lista de todos los archivos que se cargarán en base a las
definiciones de archivos seleccionados actuales
Guía de Componentes Pentaho Data Integration
19
Filas Vista
previa
Haga clic en Vista previa para examinar el contenido del archivo
especificado Excel
Hojas
En esta ficha puede especificar los nombres de las hojas en el libro de Excel para leer.
Para cada uno de los nombres de las hojas se puede especificar la fila y columna para
comenzar a Nota: Los números de fila y columna son iguales a cero (0) basan.
(Empezar a número a 0).
IMPORTANTE: también es posible leer todas las hojas de la hoja de Excel. Para llegar
allí, simplemente desactive la "Lista de hojas para leer" y escriba la fila y columna de
inicio en la primera fila. Este será utilizado para todas las hojas. De nuevo, si quieres
leer todas las hojas del libro (s), es importante que no se especifique ningún nombre
de la hoja. En este caso, la estructura del campo de cada hoja tiene que ser la misma.
Guía de Componentes Pentaho Data Integration
20
Contenido
La pestaña de contenido le permite configurar las siguientes propiedades:
Opción Descripción
Cabecera Habilitar si las hojas especificadas contienen una fila de
encabezado.
Eliminar filas
vacías
Habilitar si usted no quiere filas vacías en el resultado de este
paso
Detener al
encontrar fila
vacía
Se detiene el paso cuando se encuentra una línea vacía en el
archivo Excel.
Límite Limita el número de filas (cero (0) significa que todas las filas).
Codificación Especifica la codificación de archivos de texto para su uso. Dejar
en blanco para utilizar la codificación por defecto en su
sistema. Para utilizar Unicode, especifique UTF-8 o UTF-16.
Guía de Componentes Pentaho Data Integration
21
Manejador de errores
La ficha Tratamiento de errores le permite configurar las siguientes propiedades:
Opción Descripción
¿Tipos estrictos? Si se marca, PDI reportará errores de tipo de datos en la entrada.
¿Ignorar errores? Activar si desea ignorar los errores durante el análisis
¿Saltar líneas
con error?
Si se marca, PDI saltará líneas que contienen errores. Estas
líneas pueden ser objeto de dumping en un archivo separado
especificando una ruta en el campo directorio de archivos de
números de línea Fallar a continuación. Si no está marcada, líneas
con errores aparecerán como valores NULL en la salida.
Directorio para
ficheros con
Cuando se generan advertencias, se colocan en este directorio. El
nombre de ese archivo es <advirtiendo dir> / nombre de archivo.
Guía de Componentes Pentaho Data Integration
22
Advertencias <Fecha_hora>. <Extensión de advertencia>
Directorio para
ficheros con
error
Cuando se producen errores, se colocan en este directorio. El
nombre de ese archivo es <errorfile_dir> / nombre de archivo.
<Fecha_hora>. <Errorfile_extension>
Directorio para
ficheros con
línea
Cuando se produce un error de análisis en una línea, el número
de línea se coloca en este directorio. El nombre de ese archivo es
<errorline dir> / nombre de archivo. <Fecha_hora>. <Extensión
errorline>
Campos
La ficha campos es para especificar los campos que deben ser leídos a partir de los
archivos de Excel. Utilice Obtener campos de cabecera para rellenar los campos
disponibles si las hojas tienen una fila de encabezado de forma automática.
La columna Tipo realiza conversiones de tipo para un campo determinado. Por
ejemplo, si usted quiere leer una fecha y tiene un valor de cadena en el archivo de
Excel, especifique la máscara de conversión Nota: En el caso de Número a la
conversión de la fecha (por ejemplo, 20051028 -> 28 de octubre 2005) especifica el
AAAAMMDD máscara conversión porque habrá un número implícita a la conversión de
cadena que tiene lugar antes de hacer la cadena a la conversión de la fecha.
Guía de Componentes Pentaho Data Integration
23
Opción Descripción
Nombre El nombre del campo.
Tipo Tipo de datos del campo; String, Date o Integer.
Longitud La opción de longitud depende del tipo de campo Número: número total
de cifras significativas en un número; encordado: Longitud total de una
cadena; Fecha: determina qué parte de la cadena de fecha se imprime
o registrados.
Precisión La opción de precisión depende del tipo de campo, pero sólo se
admite Número; devuelve el número de decimales.
Tipo de poda Trunca el campo (izquierda, derecha, ambos) antes de la
transformación. Útil para los campos que no tienen una longitud
estática.
Repetir Si se establece en Y, se repetirá este valor si el campo en la siguiente
fila está vacía.
Formato Se define el formato del campo.
Moneda Símbolo utilizado para representar las monedas.
Decimal Un punto decimal; este es o bien un punto o una coma.
Agrupamiento Un método para separar las unidades de miles en número de cuatro
dígitos o más grandes. Este es o bien un punto o una coma.
Additional output fields
Esta opción recupera campos de metadatos personalizados para agregar a la salida
del paso. El propósito de cada campo se define en su nombre, pero puede utilizar
estos campos para lo que quieras. Cada elemento define un campo de salida que
contendrá la siguiente información.
Guía de Componentes Pentaho Data Integration
24
Opción Descripción
Campo con el
nombre del
El nombre completo del archivo más la extensión.
Campo con el
nombre de la hoja
El nombre de la hoja que está utilizando.
Campo con número
de fila de la
El número de fila hoja actual.
Campos con
números de filas
Número de filas escrito
Short filename field El nombre del campo que contiene el nombre del archivo sin
información de la ruta, pero con una extensión.
Extension field El nombre del campo que contiene la extensión del nombre de
archivo.
Path field El nombre del campo que contiene la ruta en formato de
Guía de Componentes Pentaho Data Integration
25
sistema operativo.
Size field El nombre del campo que contiene el tamaño del archivo, en
bytes.
Is hidden field El nombre del campo que contiene si el archivo está oculto o
no (boolean).
Mapeo de Valores
El ícono o el símbolo que representa al paso Mapeo de Valores es el siguiente:
Este se encuentra en el menú Transformar de la herramienta, como se muestra en la
(Figura 5).
Guía de Componentes Pentaho Data Integration
26
Figura 5: Ubicación del Componente Mapeo de Valores
Descripción
El paso mapeo de valores consiste en remplazar una cadena de valor fuente en otra
cadena de valor destino. Se puede convertir valores de campos nulos o vacios en
otros valores.
Ejemplo
En este ejemplo tengo una entrada de tabla de una base de Datos, la Tabla
Organismos que contiene el código, la descripción y las siglas de cada organismo
registrado y se desea convertir los valores nulos y el campo de valor DESCONOCIDO
en otros valores. La salida se mostrara en otra tabla con el nombre Prueba.
Pasos:
1- Insertar el paso Entrada Tabla, y especificar en este la tabla de la cual vamos a
escoger la información (en este caso la tabla Organismos).
Guía de Componentes Pentaho Data Integration
27
2- Insertar el paso Mapeo de Valores y también el paso de salida, que es este caso
va a ser otra tabla (tabla Prueba). La transformación queda de esta manera
(Figura 6).
Figura 6: Transformación Mapeo de Valores
Nota: las flechas que indican la dirección de cada paso se obtienen
presionando la tecla shift y hacer clic y arrastrar desde un paso a otro.
Configurar Paso Mapeo de Valores
Dando doble clic en el símbolo que representa al paso Mapeo de Valores, se
abrirá una ventana (Figura 7) que es donde especificaremos nuestras
condiciones.
Guía de Componentes Pentaho Data Integration
28
Figura 7: Configurar paso Mapeo de Valores
Nombre del Paso: Nombre del paso, es único en la transformación.
Nombre del Campo Origen: Se especifica el nombre del campo origen de
donde se van a tomar los valores a mapear.
Nombre del Campo Destino: Se especifica el nombre del campo destino
donde se van a insertar los nuevos valores.
Valores de Campos Origen/Destino: Se especifican los valores que se van a
mapear en el campo especificado.
Luego de llenar estos campos, clic en el botón Vale y ya está configurado este
paso.
3- Insertar y configurar el paso de salida, en este caso la tabla (Prueba).
Guía de Componentes Pentaho Data Integration
29
4- Por último ejecutar la transformación para asegurar que los resultados sean los
correctos. (Figura 8)
Figura 8: Ejecución de la Transformación
Después de realizar esta transformación con el ejemplo descrito anteriormente
estos son los resultados.
Tabla original
Guía de Componentes Pentaho Data Integration
30
La tabla salida contiene los valores para esos campos señalados que se han
definido en el paso de Mapeo de Valores.
Guía de Componentes Pentaho Data Integration
31
Desnormalización de Filas
El ícono o el símbolo que representa al paso Desnormalización de Filas es el
siguiente
Este se encuentra en el menú Transformar de la herramienta como se muestra en la
(Figura 9).
Guía de Componentes Pentaho Data Integration
32
Figura 9: Ubicación del componente Desnormalización de Filas
Descripción
El paso de des-normalización de fila permite des- normalizar datos por búsquedas de
pares clave-valor. Permite convertir los tipos de datos inmediatamente. Es necesario
que la entrada para la des-Normalización de filas este ordenada por las claves de
agrupación
Ejemplo
En este ejemplo tengo una entrada Excel con los valores de las ventas de los
productos en un mes. Si se desea desnormalizar esta tabla se deben especificar los
siguientes pasos
Pasos:
Guía de Componentes Pentaho Data Integration
33
1- Insertar el paso Entrada Excel, y especificar en este la tabla de la cual vamos
a escoger la información (en este caso la tabla NAE).
2- Insertar el paso Ordenar Filas pues es necesario que los campos por los que
se va a agrupar estén ordenados.
Seguidamente se configura este paso con los campos que se van a ordenar los
cuales son parte de la agrupación. Agrupándose en este caso por el mes.
(Figura 10).
Guía de Componentes Pentaho Data Integration
34
Figura 10: Configuración del paso Ordenar Filas
3- Insertar y configurar el paso Desnormalización de Filas y el Excel Salida,
quedando así la transformación. (Figura 11).
Guía de Componentes Pentaho Data Integration
35
Figura 11: Transformación Desnormalización de Filas
Nota: las flechas que indican la dirección de cada paso se obtienen
manteniendo el shift, clic y arrastre desde un paso a otro.
Configurar paso Desnormalización de Filas
Dando doble clic en el símbolo que representa al paso Desnormalización de
Filas, se abrirá una ventana (Figura 12) que es donde especificaremos
nuestras condiciones.
Guía de Componentes Pentaho Data Integration
36
Figura 12: Configuración del paso Desnormalización de Filas
Nombre del paso: Nombre del paso, es único en la transformación.
Campo clave: El campo que define la llave, por el cual se va a realizar la
búsqueda.
Campos de agrupación: Especifican los campos que definen la agrupación.
Campos de resultado: Se seleccionan los campos para des-normalizar
especificando el valor de cadena para el campo clave definido anteriormente.
Se brindan opciones para convertir tipos de datos. Las cadenas son más
comunes como pares clave-valor por lo que a menudo deben convertirse a
Entero, Número o Fecha. Si se obtiene un par de colisiones valor-clave (clave
no es exclusivo para el grupo especificado) especificar el método de
agregación.
Guía de Componentes Pentaho Data Integration
37
Luego de llenar estos campos, clic en el botón Vale y ya está configurado este
paso.
4- Insertar y configurar el paso de salida, en este caso un Excel que contiene los
datos desnormalizadas.
Por último ejecutar la transformación para asegurar que los resultados sean los
correctos. (Figura 13).
Figura 13: Ejecución de la Transformación Desnormalización de Filas
Después de realizar esta transformación con el ejemplo descrito anteriormente
estos son los resultados.
Excel original. Datos Normalizados
Guía de Componentes Pentaho Data Integration
38
Excel resultado. Datos Desnormalizados
Ejecutar Script SQL
El ícono o el símbolo que representa al paso Ejecutar script SQL es el siguiente
Este se encuentra en el menú Scripting de la herramienta, como se muestra en la
(Figura 14).
Guía de Componentes Pentaho Data Integration
39
Figura 14: Ubicación del Componente Ejecutar Script SQL
Descripción
Con este paso se puede ejecutar una sentencia SQL, ya sea durante la fase inicial de
la transformación o una vez por cada fila de entrada que el paso este dando. La
segunda opción puede utilizarse para usar parámetros de script SQL. Este paso solo
permite ejecutar sentencias DDL, DCL y DML como: (Insertar, Actualizar y Eliminar).
Ejemplo
En este ejemplo si se desea insertar una nueva instancia con los datos de un
organismo se puede hacer mediante la sentencia SQL que se describe en el paso.
Pasos:
1- Insertar y configurar el paso Ejecutar script SQL, y especificar en este la
sentencia SQL. La transformación queda de esta manera (Figura 15).
Guía de Componentes Pentaho Data Integration
40
Figura 15: Transformación Ejecutar Script SQL
Nota: se pueden insertar varios pasos Ejecutar script SQL y unirlos mediante
flechas, estas van a indicar la dirección de cada paso.
Configurar paso Ejecutar script SQL
Dando doble clic en el símbolo que representa al paso Ejecutar script SQL, se
abrirá una ventana (Figura 15) que es donde especificaremos nuestras
condiciones.
Nombre del Paso: Nombre del paso, es único en la transformación.
Conexión: Se especifica la conexión a la Base de Datos donde se va a
ejecutar el script SQL.
Programa SQL a ejecutar: Se especifica la sentencia que se va a ejecutar o la
llamada a funciones, procedimientos almacenados.
Especificación de Parámetros: Se especifican los parámetros en caso de ser
necesario de las funciones o procedimientos almacenados que van a ser
ejecutados desde el paso.
Guía de Componentes Pentaho Data Integration
41
Luego de llenar estos campos y especificar la consulta SQL, se da clic en el
botón Vale y ya está configurado el paso.
2- Por último ejecutar la transformación para asegurar que los resultados sean los
correctos. (Figura 16).
Figura 16: Ejecución de la Transformación Ejecutar Script SQL
Después de realizar esta transformación con el ejemplo descrito anteriormente
estos son los resultados.
Tabla final
Se inserta una nueva instancia de organismo en la tabla temp_organismo.
Guía de Componentes Pentaho Data Integration
42
Fundir Filas
El ícono o el símbolo que representa al paso Fundir Filas es el siguiente:
Este se encuentra en el menú Uniones de la herramienta como se muestra en la
(Figura 17).
Guía de Componentes Pentaho Data Integration
43
Figura 17: Ubicación del Componente Fundir Filas
Descripción
Esta opción se utiliza para mezclar filas, o sea para comparar dos arroyos de filas.
Esto es útil para comparar los datos de dos tiempos diferentes. A menudo se usa en
situaciones en las que la fuente de un sistema de almacén de datos no contiene una
fecha de la última actualización. Los dos arroyos de filas, un flujo de referencia (los
datos antiguos) y un flujo de comparar (los nuevos datos), se fusionan. Sólo la última
versión de una fila se pasa a los siguientes pasos cada vez. La línea se caracteriza de
la siguiente manera:
"idénticas" - La clave se encontró en los dos arroyos y los valores a comparar
son idénticos
Guía de Componentes Pentaho Data Integration
44
"cambiado" - La clave se encontró en ambos arroyos, pero uno o más valores
diferentes
"nuevos" - La clave no se ha encontrado en el arroyo de referencia
"borrado" - La clave no se ha encontrado en el arroyo comparar.
El primer paso es especificar el origen de la fila de referencia, luego se especifica el
origen de las filas a comparar. Como segundo paso se especifican los campos que
contienen las claves en las que coinciden, haga clic en Obtener campos clave
(claves coincidentes) para insertar todos los campos de los campos procedentes de
las filas de referencia paso y se especifican también los campos valor (valores que se
deseen comparar), además se le da un nombre al campo bandera (flagfield), el cual va
a contener el estado de la tupla.
Ejemplo
En este ejemplo tengo una entrada Excel de una tabla departamento, utilizando el
componente fundir filas se comparan sus atributos, teniendo como salida un Excel
que nos aporta el estado de cada tupla.
Donde se obtiene como salida lo siguiente:
COD DESCRIPCION DPA flagfield
01 PINAR DEL RIO deleted
02 LA HABANA new
03 CIUDAD DE LA HABANA deleted
04 MATANZAS new
05 VILLA CLARA deleted
06 CIENFUEGOS new
07 SANCTI SPIRITUS deleted
08 CIEGO DE AVILA new
09 CAMAGUEY deleted
10 LAS TUNAS new
11 HOLGUIN deleted
12 GRANMA new
Guía de Componentes Pentaho Data Integration
45
Row flattener
El ícono o el símbolo que representa al paso Row flattener es el siguiente:
Este se encuentra en el menú Transformar de la herramienta como se muestra en la
(Figura 18).
Guía de Componentes Pentaho Data Integration
46
Figura 48: Ubicación del Componente Row flattener
Descripción
Este componente permite aplanar datos secuencialmente, o sea se determina un
campo que debe ser aplastado, y este lo resume. Para mejor entendimiento, le
presentamos la siguiente figura como tabla a aplanar datos, donde la columna Flatten
será resumida:
Guía de Componentes Pentaho Data Integration
47
Luego de utilizar este componente, la tabla queda de la siguiente manera:
Ejemplo
En este ejemplo se utiliza el componente para resumir, de la tabla Organismo el
campo Siglas. La transformación y la configuración del Componente quedan de la
siguiente forma.
Guía de Componentes Pentaho Data Integration
48
Configuración del Componente Row flattener
Quedando la salida igual a la entrada, pero sin este campo.
Access Input
El ícono o el símbolo que representa al paso Access Input es el siguiente:
Este se encuentra en el menú Entrada de la herramienta como se muestra en la
(Figura 20).
Guía de Componentes Pentaho Data Integration
49
Figura 20: Ubicación del Componente Access Input
Descripción
Este paso se lee directamente desde Microsoft Access "MDB" archivos. Las secciones
describen las opciones disponibles para el paso de acceso de entrada. Donde solo con
completar las opciones y en pedir los campos a cargar, se estará leyendo de Access.
Ejemplo
Configuración del Componente Access Input
Guía de Componentes Pentaho Data Integration
50
Agrupar
El ícono o el símbolo que representa al paso Agrupar por es el siguiente:
Este se encuentra en el menú Transformar de la herramienta como se muestra en la
(Figura 20).
Figura 5: Ubicación del Componente Agrupar por
Descripción
Este componente se usa para agrupar teniendo en cuenta ciertas reglas como; suma,
promedio, primer valor nulo, etc. Donde el objetivo es organizar los valores o calcular
los valores en un grupo definido de campos.
Ejemplo
Contamos con una tabla organismo que contiene datos sobre este, y necesitamos
organizar los valores desde el menor código hacia arriba. Para ello:
Guía de Componentes Pentaho Data Integration
51
Configuración del Componente Agrupar por.
Quedando los valores de la tabla organizados.
Filtrar Filas
El ícono o el símbolo que representa al paso Filtrar Filas es el siguiente:
Guía de Componentes Pentaho Data Integration
52
Este se encuentra en el menú Transformar de la herramienta como se muestra en la
(Figura 21).
Figura 21: Ubicación del Componente Filtrar Filas
Descripción
Esta opción se utiliza para filtrar filas utilizando fórmulas sencillas, es decir, puedes
escoger los campos de la tabla que desees de tu base de datos o de cualquier
elemento de entrada de datos especificando las condiciones que desees que cumplan
estos campos y enviarlos a un destino específico o a más destinos.
Ejemplo
En este ejemplo tengo una entrada de tabla de una base de datos en este caso la
base de datos ONE (Oficina Nacional de Estadísticas), se desea guardar en un fichero
de texto (.txt) todos aquellos elementos que tengan la misma descripción y los que no
cumplan con esta condición pues enviarlos a una tabla temporal que almacene los que
no cumplan con la condición antes expuesta.
Guía de Componentes Pentaho Data Integration
53
Pasos:
1- Insertar el paso Entrada Tabla (puede ser cualquier elemento de entrada) y
especificar en este la tabla de la cual vamos a escoger la información.
2- Insertar el paso Filtrar Filas y también los pasos de salida, es decir a donde
enviarás los datos según las condiciones expuestas en el paso anterior. En este
caso insertaremos una salida fichero de texto que lo guardaré en el escritorio y
una salida de tabla que en ella especificaré una tabla temporal en mi base de
datos. Quedando de esta manera (Figura 21).
Figura 6: Transformación del paso Filtrar Filas
Nota: las flechas que indican la dirección de cada paso se obtienen
manteniendo el clic y arrastre desde un paso a otro.
Guía de Componentes Pentaho Data Integration
54
Configurar paso Filtrar Filas
Dando doble clic en el símbolo que representa al paso Filtrar Filas, se abrirá
una ventana (Figura 22) que es donde se especifican las condiciones.
Primeramente se escogen los destinos especificándolos en la opción de esta
venta que dice Enviar verdadero a paso: y Enviar falso a paso: (Figura 22).
En este ejemplo se envían los que sean verdaderos, es decir los que cumplan
con la condición, a un fichero de texto y los que no a una tabla temporal.
Figura 7: Configuración del paso Filtrar Filas
Luego se especifican las condiciones que quieres que se cumplan con cada
campo, en este caso el campo forganizativa_descripcion tiene que ser igual
a EMPRESAS ESTATALES. En la opción que dice <field > se especifica el
campo y en <value> la condición. (Figura 23 y 24).
Guía de Componentes Pentaho Data Integration
55
Figura 8: Especificación del campo
Figura 9: Especificación del valor
Luego de hacer estos pasos, clic en el botón Vale y ya está configurado este
paso.
Guía de Componentes Pentaho Data Integration
56
Si das clic en el espacio en la casilla en blanco será la negación de lo que
especifiques después.
También se pueden adicionar otras condiciones dando clic en el ícono Add
Condition.
Después de cliquear en el ícono antes expuesto la ventana de las condiciones
se te actualizará poniendo otra condición encabezada por la palabra AND.
Para eliminar una condición, clic derecho/delete condition
Guía de Componentes Pentaho Data Integration
57
3- Configurar los pasos salida fichero de texto y salida tabla
Salida fichero de texto (configuración): doble clic, se despliega una ventana
donde podrás configurarlo. En el botón examinar se especifica la dirección
donde guardarás el .txt (Figura 25).
Figura 10: Configuración del fichero de salida
En las pestañas Contenido y Campos se especifican otras opciones de este
paso.
Configuración de la Salida Tabla
Doble clic en el símbolo, se despliega una ventana para configurar este paso,
establecer una conexión, la tabla destino a la cual vas a enviar los datos, en
este caso los que no cumplan la condición especificada en el paso anterior,
esta tabla destino se obtiene dando clic en el botón examinar, pero si quieres
insertarlo en otra tabla que no aparece en tu base de datos, solo debes poner
el nombre de la tabla y dar clic en el botón SQL y luego en el botón execute ,
así se te crea la tabla en tu base de datos. (Figura 26).
Guía de Componentes Pentaho Data Integration
58
Figura 11: Configuración del paso Salida Tabla
4- Por último ejecutar la transformación para asegurar que los resultados sean los
correctos. (Figura 27).
Guía de Componentes Pentaho Data Integration
59
Figura 12: Ejecución de la Transformación Filtrar Filas
Después de realizar esta transformación con el ejemplo descrito anteriormente
estos son los resultados.
Tabla original
Guía de Componentes Pentaho Data Integration
60
Salida tabla contiene todas menos las que están señaladas encima que son las que no
cumplen con la condición de la descripción igual a EMPRESAS ESTATALES
Fichero de texto, elemento de salida que cumple con la condición que la descripción
fuera EMPRESAS ESTATALES
Append Stream
El ícono o el símbolo que representa al paso Append Stream es el siguiente:
Guía de Componentes Pentaho Data Integration
61
Este se encuentra en el menú Transformar de la herramienta como se muestra en la
(Figura 28).
Figura 13: Ubicación del Componente Append streams
Descripción
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, es decir, el mismo tipo de dato, la
misma longitud de la fila.
Tener en cuenta además que la lectura de las entradas de los datos se hace en orden,
es decir se tramita una entrada primero y después la otra, depende del orden que
especifiques, si no lo especificas el orden, entonces tramitará cualquiera de las dos
primero.
Guía de Componentes Pentaho Data Integration
62
Ejemplo
En este ejemplo vamos a crear un fichero de texto como elemento de salida para la
unión de los flujos de datos de entrada en este caso vamos a entrar los datos con el
componente Generar filas vacías o iguales.
Pasos:
Primeramente se pueden predefinir los datos con la opción Generar filas vacías o
iguales, luego se interceptan con el paso Append Streams y como elemento de
salida una Salida fichero de texto quedando de esta manera (Figura 29).
Figura 14: Transformación del paso Append streams
Configurar paso Generar filas vacías o iguales
Damos doble clic en el ícono que representa este paso y se abrirá una ventana para
especificar las opciones que queramos. Luego, especificamos el nombre del campo,
también el tipo de datos y el valor, el límite que esta opción es importante porque es la
cantidad de veces que se va a imprimir el resultado con el dato que tenga la opción
valor.
Guía de Componentes Pentaho Data Integration
63
Configurar el paso Append Streams
Damos doble clic en el ícono que representa este paso y se abrirá una ventana
(Figura 30), donde especificaremos el orden de la unión de mi flujo de datos.
Figura 15: Configuración del paso Append streams
El primero que se quiera trasmitir se selecciona en la opción Head hop y el otro en la
opción Tail hop.
Configurar la salida fichero de texto
Doble clic en el ícono, se despliega la ventana de configuración, en esta se especifica
la dirección donde voy a guardar el .txt y listo ya tenemos la transformación realizada.
Por último corremos la transformación para saber si todo lo que hicimos está bien y
realiza lo que nosotros predefinimos anteriormente.
Salida del Fichero Texto
Guía de Componentes Pentaho Data Integration
64
Switch / Case
El ícono o el símbolo que representa al paso Switch / Case es el siguiente:
Este se encuentra en el menú Transformar de la herramienta como se muestra en la
(Figura 31).
Guía de Componentes Pentaho Data Integration
65
Figura 16: Ubicación del Componente Switch / Case
Descripción
La funcionalidad del componente “Switch / Case” se basa en el mismo principio con el
cual se utiliza en los lenguajes de programación.
Sintaxis
Switch (expresión)
{
Case etiqueta:
Guía de Componentes Pentaho Data Integration
66
Lista de instrucciones
Case etiqueta:
Lista de instrucciones
...
Default:
Lista de instrucciones
}
Ejemplo
La siguiente transformación contiene un ejemplo del uso del componente Switch /
Case. (Figura 32).
Guía de Componentes Pentaho Data Integration
67
Figura 17: Transformación del paso Switch / Case
Donde inicialmente se hace una extracción de una dimensión “dim_subordinacion” de
la base de datos ONE, que tiene los siguientes datos:
Guía de Componentes Pentaho Data Integration
68
Pasos
1- En el componente “Entrada Tabla” se realiza la conexión a la base de datos
que se desea conectar y buscar la dimensión que desea extraer los datos:
Guía de Componentes Pentaho Data Integration
69
2- El componente “Selecciona/Renombra valores” es un paso por el cual se puede
hacer el renombre de las variables, pero no es necesario.
3- El componente “Switch / Case” que veremos a continuación su función se basa
con gran similitud a un filtrado de filas pero con otras características:
Guía de Componentes Pentaho Data Integration
70
Nombre de paso: Se pone el nombre que identifica a este componente.
Nombre del campo: Para cambiar/Field name to switch” se selecciona la
variable que se utiliza como base para el enrutamiento.
Valor del tipo de dato/Case Value data type: Se selecciona el tipo de dato de
la variable que se escogió anteriormente.
Caso de los valores/Case Value se hace lo siguiente:
En la columna “Value” se selecciona el valor de la variable y en la columna
“Target step” se selecciona hacia el paso donde se va a mandar.
En este caso se envía hacia una dimensión temporal que se encuentra en
la base de datos que después se verá con más detalles.
Paso por defecto/Default target step: Se pone el paso al que se envían los
datos por defecto que no se evalúan.
Guía de Componentes Pentaho Data Integration
71
4- La carga de datos se hará en tres dimensiones temporales, en el componente
“Switch/Case” se especificó mediante el campo “subord_id” que la primera
tupla de la “dim_subordinación” irá para la “dim_temp_subord_1”, la segunda
tupla de la “dim_subordinación” irá para la “dim_temp_subord_2” y que los
otras tuplas por defecto se enviarán para la “dim_temp_subord_3”.
Tablas Originales
dim_temp_subord_1
dim_temp_subord_2
Guía de Componentes Pentaho Data Integration
72
dim_temp_subord_3
Guía de Componentes Pentaho Data Integration
73
Después de Ejecutar la Transformación
dim_temp_subord_1
dim_temp_subord_2
dim_temp_subord_3
Guía de Componentes Pentaho Data Integration
74
Procedimiento de Base de Datos
El ícono o el símbolo que representa al paso Procedimiento de Base de Datos es el
siguiente:
Este se encuentra en el menú Búsqueda de la herramienta como se muestra en la
(Figura 33).
Guía de Componentes Pentaho Data Integration
75
Figura 18: Ubicación del Componente Procedimiento de Base de Datos
Descripción
Este componente permite ejecutar sobre una Base de Datos un procedimiento o
función y obtener un resultado.
Ejemplo
La siguiente transformación contiene un ejemplo del uso del Componente
Procedimiento de Base de Datos (Figura 34).
Guía de Componentes Pentaho Data Integration
76
Figura 19: Transformación del paso Procedimiento de Base de Datos
Inicialmente se hace una extracción de la dimensión “dim_subordinacion” que tiene los
siguientes datos:
Guía de Componentes Pentaho Data Integration
77
Pasos:
1- Primeramente el componente “Entrada_Tabla” se establece la conexión y
buscar la dimensión donde se quiere extraer los datos.
2- En el segundo paso y el más importante es el componente Procedimiento
Base de Datos
Guía de Componentes Pentaho Data Integration
78
Nombre Paso: Se pone el nombre al componente.
Conexión: Se establece la conexión a la Base de Datos.
Nombre Procedimiento: Se debe seleccionar el procedimiento o función que
se desea. En este caso se seleccionó “lower” que te cambia un valor de tipo
string de mayúsculas a minúsculas.
Guía de Componentes Pentaho Data Integration
79
Nombre resultado: Se pone el nombre a la variable que va a guardar el
resultado.
Tipo de resultado: Se escoge el tipo de dato que tiene la variable del campo
anterior.
Parámetros: Se obtiene el campo al cual se desea hacer la transformación. En
este caso se escogió “subord_descripcion” por ser de tipo string.
3- El tercer campo es un “Selecciona \ Renombra valores” donde se va a obtener
los valores.
Guía de Componentes Pentaho Data Integration
80
Si se fijan se obtiene todos los valores de la dimensión y además la variable
“result” con el resultado de la transformación.
4- En este paso lo que se hace es un insertar una dimensión temporal los
cambios hechos anteriormente. Aquí se utiliza el componente “Insertar /
Actualizar”.
Guía de Componentes Pentaho Data Integration
81
En este componente se establece la conexión a la Base de Datos y se selecciona la
dimensión hacia la cual se insertará o actualizará los datos. En este caso se va
insertar los valores en una nueva dimensión temporal “dim_temp_subord_4”.
1. En el campo “La clave para realizar la búsqueda” se obtiene los valores.
2. En el campo “Campos de actualización hay que actualizar la variable
“subord_descripcion” con el campo “result”.
En la siguiente figura se muestra el resultado de la transformación en la
“dim_temp_subord_4”.
Guía de Componentes Pentaho Data Integration
82
SQL
El ícono o el símbolo que representa al paso SQL es el siguiente:
Este se encuentra en el menú Scripting de la herramienta como se muestra en la
(Figura 35).
Guía de Componentes Pentaho Data Integration
83
Figura 20: Ubicación del Componente SQL
Descripción
El paso SQL en un Job tiene la misma funcionalidad que en una transformación. Este
permite la ejecución de un script SQL antes o después de ejecutar un determinado
paso o una transformación.
Ejemplo
El siguiente Job contiene un ejemplo del uso del Componente SQL. (Figura 36).
Figura 21: Job con el uso del Componente SQL
Guía de Componentes Pentaho Data Integration
84
En este caso se ejecuta un script SQL antes de una transformación.
Inicialmente tenemos el paso START que su funcionalidad se basa en iniciar la
ejecución del Job. Seguidamente tenemos el paso SQL.
Este paso lo que hace es ejecutar un script SQL en este caso es un Insert donde se
inserta en una tabla vacía.
Configuración del Componente SQL
El componente SQL el campo “Conexión” se establece la conexión a la Base de Datos
donde se ejecutará el script. El campo “SQL from file” es para cargar un script que
tengas en un fichero de texto o en un SQL.
Después de ejecutar el Job la tabla de la dimensión queda con los siguientes datos:
Guía de Componentes Pentaho Data Integration
85
JavaScript
El ícono o el símbolo que representa al paso Java Script es el siguiente:
Este se encuentra en el menú Scripting de la herramienta como se muestra en la
(Figura 37).
Guía de Componentes Pentaho Data Integration
86
Figura 22: Ubicación del Componente Java Script
Descripción
La funcionalidad del paso JavaScript se basa en la ejecución de un script en este tipo
de lenguaje pero va a tener diferencias en su utilización con respecto al paso
JavaScript que se utiliza en las transformaciones. El resultado de este tipo de
componente es una salida verdadera o falsa es decir un salida booleana. En el sitio de
la wiki de Pentaho se encuentra una serie de funciones que se pueden utilizar en este
tipo de paso.
Ejemplo
El siguiente Job contiene un ejemplo del uso del Componente Java Script. (Figura 38).
Guía de Componentes Pentaho Data Integration
87
Figura 23: Job con el Componente Java Script
El último paso del Job que estamos realizando es el JavaScript. Como se explicó
anteriormente este paso lo que hace es ejecutar una sentencia booleana en este tipo
de lenguaje. (Figura 39).
Guía de Componentes Pentaho Data Integration
88
Figura 24: Configuración del Componente Java Script
Como se muestra en la figura anterior se ejecuta una sentencia que lo que hace es
comparar el campo que se ejecuta en las transformación anterior a este paso, es decir
“name” se compara con un valor que deseado. En este caso con su mismo valor que
es “Orlando”. Por lo tanto este Job se ejecuta correctamente ya que son iguales los
valores comparados. En caso de ser diferentes entonces ocurre un error.
Agregar Filas
El ícono o el símbolo que representa al paso Agregar Filas es el siguiente:
Este se encuentra en el menú Obsoleto de la herramienta como se muestra en la
(Figura 40).
Guía de Componentes Pentaho Data Integration
89
Figura 25: Ubicación del Componente Filas Agregadas
Descripción
Esta transformación permite agregar filas, no puede hacer agrupamiento.
Ejemplo
Primero debemos tener un origen de datos, en este caso y para una prueba sencilla,
utilizaremos un Excel.
Guía de Componentes Pentaho Data Integration
90
La transformación quedaría de este modo. (Figura 41).
Figura 26: Transformación del paso Filas Agregadas
Pasos:
1- Para la Carga de los datos debemos configurar el componente Entrada Excel.
2- Para utilizar el componente “Filas Agregadas” primero que todo debemos
obtener los campos. (Figura 42).
Guía de Componentes Pentaho Data Integration
91
Figura 27: Configuración del Componente Filas Agregadas
3- Posteriormente seleccionamos el tipo de agregación que se desee. (Figura
43).
Figura 28: Selección del tipo de Agregación
4- En este ejemplo se utiliza un archivo de texto, y se cuenta la cantidad de
elementos que existen.
Como se puede observar existen 66 elementos en la columna de código 66 en
la columna descripción.
Guía de Componentes Pentaho Data Integration
92
Búsqueda/Actualización en dimensión
El ícono o el símbolo que representa al paso Búsqueda/Actualización en dimensión
es el siguiente:
Este se encuentra en el menú Almacén de Datos de la herramienta como se muestra
en la (Figura 44).
Figura 29: Ubicación del Componente Búsqueda/Actualización en dimensión
Ejemplo
A continuación se muestra la configuración del componente (Figura 45):
Guía de Componentes Pentaho Data Integration
93
Figura 30: Configuración del Componente
En la superior, se definen las conexiones y si se desea actualizar o no.
Guía de Componentes Pentaho Data Integration
94
En la pestaña Clave debe aparecer aquel campo id (identificador), que proviene de los
orígenes de datos, por ejemplo: código de producto, numero de ubicación, etc. Dando
clic en el botón Obtener Campos, aparecerán allí los campos Integer o Number, y se
podrá seleccionar el atributo en cuestión:
En la pestaña Campos, aparecen los atributos que deseo insertar o actualizar (en
dependencia del tipo de Cambio que se realice). Dando clic en la columna Tipo de
actualización de dimensión puedo escoger esta opción.
Se debe definir en el Campo de clave técnica, aquel atributo que será el identificador
de la dimensión en la tabla dimensional. Además debe especificarse un atributo
versión que contendrá el versionado de las actualizaciones, así como los rangos de
fechas, es decir una fecha de inicio y de fin, correspondiente a cada uno de los
versionados.
Guía de Componentes Pentaho Data Integration
95
Tabla Dimensional en el Gestor
Fijarse en los atributos idhello (llave de la dimensión), versión, date_from, date_to, y
c01 (identificador en la fuente de datos). Cada uno de ellos fue especificado en las
configuraciones anteriores.
Al realizar un procesamiento a la Transformación, la tabla dimensional queda cargada
con los siguientes valores:
Guía de Componentes Pentaho Data Integration
96
Al realizar un cambio en fichero Excel, sustituyendo 400 por 700 en el atributo mod, y
escogiendo como tipo de cambio el Insert, al volver a realizar el procesamiento, la
tabla dimensional queda como sigue:
Agregándose al final de la tabla, una nueva fila con código 7, versión 2 y con modd =
700,0.
Guía de Componentes Pentaho Data Integration
97
Sin embargo, si prefiero Actualizar en el tipo de Cambio (lo especifico en la columna
Tipo de actualización en dimensión), entonces luego de procesar, y actualizar el
modd con 900, se puede observar que se actualiza la última versión:
¿Qué pasaría si se especifica en el Excel el valor 100 y se selecciona la opción Punch
through?
Entonces se actualizan todas las versiones.
HTTP
El ícono o el símbolo que representa al paso HTTP es el siguiente:
Guía de Componentes Pentaho Data Integration
98
Este se encuentra en el menú File Management de la herramienta como se muestra
en la (Figura 46).
Figura 31: Ubicación del Componente HTTP
Es un trabajo que se puede utilizar para entrar a un archivo desde un servidor Web
usando el protocolo HTTP.
Ejemplo
Configuración del Componente HTTP
Guía de Componentes Pentaho Data Integration
99
Calculadora
El ícono o el símbolo que representa al paso Calculadora es el siguiente:
Este se encuentra en el menú Transformar de la herramienta como se muestra en la
(Figura 47).
Guía de Componentes Pentaho Data Integration
100
Figura 32: Ubicación del Componente Calculadora
Configuración del Componente Calculadora
Guía de Componentes Pentaho Data Integration
101
Descripción
El componente de calculadora tiene funciones predefinidas que se pueden ejecutar
sobre los valores de los campos de entrada.
Guía de Componentes Pentaho Data Integration
102
Lista de funciones
Opciones
Descripción
Nuevo campo Aquí se almacena el nombre del nuevo campo
Calculo
Almacena las operaciones que tiene predefinidas y que puede
realizar ella
Campo A Se escribe el valor del primer campo a calcular
Campo B Se escribe el valor del segundo campo a calcular
Campo C Se escribe el valor del tercer campo a calcular
Tipo de valor Almacena el tipo de valor que va a tener
Longitud Almacena la longitud que va a tener
Precisión Almacena cuanta precisión va a tener
Eliminar Dice si se va a eliminar o no el valor(S/N)
Esta tabla contiene los posibles cálculos que pueden ser realizados con el
componente de calculadora.
Función Descripción Campos
obligatorios
Valor
constante de
A
Crear un campo con valor constante A
A + B A más B A y B
A - B A menos B A y B
A * B A multiplicado por B A y B
A / B A dividido por B A y B
A * A A elevado a la 2 A
SQRT( A ) La raíz cuadrada de A A
100 * A / B Porcentaje de A en B A y B
A - ( A * B / Restar el porciento de B de A A y B
Guía de Componentes Pentaho Data Integration
103
100 )
A + ( A * B /
100 ) Sumar el porciento de B a A A y B
A + B *C Sumar A más B por C A, B y C
SQRT( A*A +
B*B ) A al cuadrado más B al cuadrado A y B
ROUND( A ) Round A to the nearest integer A
ROUND( A,
B ) Round A to B decimal positions A y B
NVL( A, B )
Si A es no Null, retorno A, sino, retorno B. Hay
que tener en cuenta que puede ser que la variable
no sea Null, pero que sea una cadena vacía
A y B
Date A + B
days Añadir B días, a un campo de fecha A A y B
Year of date
A Calcular los años que tiene el campo A de fecha A
Month of
date A
Calcular la cantidad de meses que tiene el campo
A de fecha A
Day of year
of date Calcular día del año de fecha A A
Day of month
of date A Calcular día del mes de fecha A A
Day of week
of date A Calcular día de la semana de fecha A A
Week of year
of date A Calcular semana del año de fecha A A
ISO8601
Week of year
of date A
ISO8601 Calcular semana del año de fecha A A
ISO8601
Year of date
A
ISO8601 Calcular año de fecha A A
Byte to hex
encode of
string A
Codificar bytes en una cadena a una
representación hexadecimal
A
Hex encode
of string A
Codifica una cadena en su representación
hexadecimal A
Char to hex
encode of
string A
Codificar los caracteres de una cadena a una
representación hexadecimal A
Hex decode
of string A
Descodificar una cadena a partir de su
representación hexadecimal (añadir un 0 cuando A
Guía de Componentes Pentaho Data Integration
104
un líder es de longitud impar)
Checksum of
a file A using
CRC-32
Calcular la suma de comprobación de un archivo
con CRC-32 A
Checksum of
a file A using
Adler-32
Calcular la suma de comprobación de un archivo
con Adler-32 A
Checksum of
a file A using
MD5
Calcular la suma de comprobación de un archivo
con MD5 A
Checksum of
a file A using
SHA-1
Calcular la suma de comprobación de un archivo
con SHA-1
A
Levenshtein
Distance
(Source A
and Target
B)
Calcula la distancia de edición al número mínimo
de operaciones requeridas para transformar una
cadena de caracteres en otra
A y B
Metaphone
of A
(Phonetics)
Calculates the metaphone of A :
http://en.wikipedia.org/wiki/Metaphone\\
A
Double
metaphone
of A
Calculates the double metaphone of A :
http://en.wikipedia.org/wiki/Double_Metaphone\\ A
Absolute
value
ABS(A)
Calcular el valor absoluto de A A
File Exists
El ícono o el símbolo que representa al paso File Exists es el siguiente:
Guía de Componentes Pentaho Data Integration
105
Este se encuentra en el menú Condiciones de la herramienta como se muestra en la
(Figura 48).
Figura 33: Ubicación del Componente File Exists
Descripción
Job entry name: Es el nombre que se le da al paso.
Filename: Es el campo que se encarga de almacenar la dirección donde se encuentra
el archivo que voy a comprobar si existe.
Ejemplo
Una vez se coloquen los datos dentro del componente, el nuevo Job que quedaría
como se muestra en la (Figura 49).
Guía de Componentes Pentaho Data Integration
106
Figura 34: Job con el componente File Exists
Los resultados que se muestran al ser ejecutado son los siguientes:
En caso de que el archivo no exista en la dirección que se le define, muestra un
mensaje, como se muestra a continuación.
En caso de que el archivo que se busca exista en la dirección definida, muestra un
mensaje, como se muestra a continuación.
Resultado
Guía de Componentes Pentaho Data Integration
107
Copy Files
El ícono o el símbolo que representa al paso Copy Files es el siguiente:
Este se encuentra en el menú File Management de la herramienta como se muestra
en la (Figura 50).
Resultado
Guía de Componentes Pentaho Data Integration
108
Figura 35: Ubicación del Componente Copy Files
Guía de Componentes Pentaho Data Integration
109
Descripción
Job entry name: Es el nombre que se le da al paso.
Include Subfolders: Habilite esta opción para copiar además los archivos de las
subcarpetas en directorio de destino.
Destination is a file: Activar esta opción si el destino de la copia es un archivo.
Copy empty folders: Si se activa la opción de incluir las subcarpetas, esta opción le
permite especificar si o no para copiar las carpetas vacías.
Replace existing files: Si habilita esta opción está permitiendo sobrescribir
automáticamente cualquier archivo existente.
Remove source files: Esta opción se habilita para eliminar los archivos de origen
después de copia se ha completado.
Copy previous results to args: Esta opción permite pasar los resultados de la
entrada anterior a los argumentos de esta entrada.
File/Folder Source: Especifica el archivo de origen o la carpeta a copiar.
File/Folder destination: Especifica el archivo o carpeta para copiar archivos.
Guía de Componentes Pentaho Data Integration
110
Wildcard: La expresión regular utilizada para definir el patrón de nombre de archivo
para los archivos a copiar.
File/Folders: Esta tabla muestra la lista actualizada de los archivos y carpetas para
copiar.
Display Msgbox Info
El ícono o el símbolo que representa al paso Display Msgbox Info es el siguiente:
Este se encuentra en el menú General de la herramienta como se muestra en la
(Figura 51).
Figura 36: Ubicación del Componente Display Msgbox Info
Descripción
Guía de Componentes Pentaho Data Integration
111
Name of the job entry: Es el nombre que se le da al paso.
Message title: El título del mensaje.
Message body: El mensaje para mostrar.
Ejemplo
Guía de Componentes Pentaho Data Integration
112
ADD a checksum
El ícono o el símbolo que representa al paso Add a checksum es el siguiente:
Este se encuentra en el menú Transformar de la herramienta como se muestra en la
(Figura 52).
Figura 37: Ubicación del Componente Add a checksum
Descripción
Este componente tiene como función principal realizar una suma de control para
detectar la alteración accidental de los datos durante la transmisión o el
almacenamiento, para ello genera una suma de chequeo en el origen y pasa ese
resultado como un nuevo campo en el destino, con el objetivo de que cuando se vuela
a hacer una operación con estos datos haya una manera de comprobar si hubo algún
cambio en ellos. Para esto Add a checksum usa varios métodos. Estos son CRC 32,
ADLER 32, MD5 y SHA-1, estos métodos de manera independiente generan sumas de
verificación que son diferentes, cada uno tiene características específicas de cómo
realizarlo.
Guía de Componentes Pentaho Data Integration
113
CRC 32:
Control de redundancia cíclica (CRC) es un tipo de función que toma como entrada un
flujo de datos de cualquier longitud, y produce como salida un valor de un determinado
espacio, comúnmente un entero de 32 bits, CRC es fácil de analizar
matemáticamente, y especialmente bueno en la detección de errores comunes
causadas por el ruido en los canales de transmisión.
ADLER 32:
Algoritmo de verificación de que fue inventado por Mark Adler. En comparación con un
control de redundancia cíclica de la misma longitud, es la fiabilidad oficios para la
velocidad.
MD5:
MD5 (algoritmo de Message-Digest 5) se utiliza ampliamente una función de hash
criptográfica de 128 bits de un valor de hash. MD5 ha sido empleado en una amplia
variedad de aplicaciones de seguridad, y también es comúnmente utilizado para
comprobar la integridad de sus archivos. Un hash MD5 es generalmente expresado
como un número hexadecimal de 32 dígitos.
SHA-1:
SHA-1 es la mejor de las establecidas hash SHA funciones, y se emplea ampliamente
en varias aplicaciones de seguridad y protocolos.
Ejemplo
Primeramente se debe tener un origen de datos, en este ejemplo se usa una tabla de
una base de datos, la misma se muestra a continuación:
Guía de Componentes Pentaho Data Integration
114
La siguiente transformación muestra el ejemplo del uso del Componente como se
muestra en la (Figura 53).
Guía de Componentes Pentaho Data Integration
115
Figura 38: Transformación del paso Add a checksum
Pasos
1. Se define el origen de datos mediante la Entrada Tabla.
2. Se realiza sobre la tabla de entrada un Add a checksum usando cualquiera de
los métodos anteriormente explicados.
Descripción del Componente Add a checksum
Guía de Componentes Pentaho Data Integration
116
Figura 39: Configuración del Componente Add a checksum
Nombre del Paso: Se especifica el nombre que va a ser único del paso.
Tipo: Se especifica el tipo de método a utilizar.
Campo resultado: Se especifica el nombre del campo donde se va a
almacenar el resultado del método del checksum.
Campos usados en el Checksum: Se especifican los campos que se van a
usar en el checksum.
3. Se especifica una Tabla Salida donde se va a almacenar el resultado.
Guía de Componentes Pentaho Data Integration
117
Resultado
Partir Campos
El ícono o el símbolo que representa al paso Partir Campos es el siguiente:
Este se encuentra en el menú Transformar de la herramienta como se muestra en la
(Figura ).
Guía de Componentes Pentaho Data Integration
118
Figura 40: Ubicación del Componente Partir Campos
Descripción
Esta transformación de Pentaho se encarga de, dado una tabla de entrada que tenga
algún campo de tipo Cadena, dividir el contenido de cada una de las tuplas de dicho
campo en nuevos campos de una tabla de Salida.
Ejemplo
Primeramente tenemos que identificar el Origen de Datos en este caso será una
Entrada Tabla.
Guía de Componentes Pentaho Data Integration
119
La siguiente transformación muestra el ejemplo del uso del Componente como se
muestra en la (Figura 55).
Guía de Componentes Pentaho Data Integration
120
Figura 41: Transformación del paso Partir Campos
Configuración del Componente Partir Campos
Nombre del Paso: Se especifica el nombre que va a ser único del paso.
Campo a Partir: Se especifica el nombre del campo que se desea partir.
Separador: Se especifica el separador que se usa.
Campos: Se especifican los nombres de los nuevos campos y sus datos.
Guía de Componentes Pentaho Data Integration
121
Resultado
Guía de Componentes Pentaho Data Integration
122
Check if connected to repository
El ícono o el símbolo que representa al paso Check if connected to repository es el
siguiente:
Este se encuentra en el menú Repositorio de la herramienta como se muestra en la
(Figura 57).
Figura 42: Ubicación del Componente Check if connected to repository
Descripción
Este componente se encarga de verificar si la conexión al repositorio de la herramienta
es correcta, en caso de serlo retorna true.
Guía de Componentes Pentaho Data Integration
123
Check if a column exists
El ícono o el símbolo que representa al paso Check if a column exists es el
siguiente:
Este se encuentra en el menú Búsqueda de la herramienta como se muestra en la
(Figura 58).
Guía de Componentes Pentaho Data Integration
124
Figura 43: Ubicación del Componente Check if a column exists
Descripción
Este componente permite verificar la existencia de una columna específica en una
tabla de base de datos. A continuación una breve descripción de cada uno de las
opciones que brinda.
Configuración del Componente Check if column exists
Guía de Componentes Pentaho Data Integration
125
Nombre del paso: Este nombre tiene que ser único en una sola transformación.
Conexión: Conexión que la base de datos usa.
Nombre de esquema: (opcional) El nombre de esquema de la tabla de la columna
comprobada.
Nombre de la tabla: Nombre de la tabla de la columna comprobada.
Nombre de la tabla en el campo: Permite leer el nombre de la tabla en un campo de
entrada.
Campo nombre de tabla: Especifica el campo que contienen los parámetros y el tipo
de parámetro.
Campo nombre de columna: El nombre del campo columna en el flujo de entrada.
Resultados del campo: El nombre resultante de la bandera de campo booleano.
Ejemplo
Este ejemplo es de una tabla dimensional de Datacimex, donde se verificaran si existe
la columna COS-gl de la tabla Rep Tem_ImGroup en otra tabla de la BD (Rep
Tem_GrupoInventario).
Acotar que este caso de estudio esta aplicado a una tesis con esa transformación, lo
único que se le agrega es el componente de buscar la columna, la Cosulta en java y el
fichero para mostrar los resultados de una forma más entendible para todos.
A continuación se indicaran los pasos a seguir para toda la transformación realizada.
Pasos
1. Se borra todo el contenido de la tabla temporal almacenada hasta el momento.
2. Se selecciona el fichero origen para leer los datos de él.
3. Se seleccionan y renombran los datos del mismo.
4. Se almacena en la tabla Rep Tem_ImGroup.
De aquí es la parte más importante en esta tarea ya que se ejemplifica como
se sabe si hay una columna determinada de la tabla Rep Tem_ImGroup en la
Guía de Componentes Pentaho Data Integration
126
tabla Rep Tem_GrupoInventario y se muestran los resultados en el fichero de
texto prueba creado previamente en D.
5. Se selecciona la opción Check if a column exists, al dar doble clic aparecerá la
siguiente ventana (Figura ):
Figura 44: Configuración del Componente Check if column exists
Vale aclarar que en table name, cuando examinas permite buscar una columna
determinada en otra tabla de la base de datos, en este ejemplo tratamos de
buscar la columna la COS-gl de la tabla Rep Tem_ImGroup en la tabla Rep
Tem_GrupoInventario.
Otro detalle es que cuando se habilita la opción tablename in field?,
automáticamente se deshabilita la opción table name y se habilita la opción
tablename field quedando la búsqueda limitada a la tabla en la cual estaremos
trabajando inicialmente, en este ejemplo seria Rep Tem_ImGroup.
La variable result es una variable booleana que almacena la información si la
columna fue encontrada o no.
6. Se crea una consulta en java script con el fin de que ocurriera algún cambio en
el almacenamiento de los datos al checar si la columna existe o no. La
consulta propuesta es la siguiente:
Guía de Componentes Pentaho Data Integration
127
7. El resultado de la transformación se almacenara en un fichero prueba creado
previamente, en el cual se cargaran los datos de la tabla Rep Tem_ImGroup
con los cambios a partir de la consulta realizada.
El valor de la variable result en la consulta fue false por lo tanto el valor del atributo
description en la tabla Rep Tem_ImGroup se cambia a prueba en el fichero de texto tal
y como se muestra a continuación.
Guía de Componentes Pentaho Data Integration
128
El proceso de transformación completo se muestra en la (Figura 60).
Guía de Componentes Pentaho Data Integration
129
Figura 45: Transformación del paso Check if column exists
Información del Sistema
El ícono o el símbolo que representa al paso Información del Sistema es el siguiente:
Este se encuentra en el menú Entrada de la herramienta como se muestra en la
(Figura 61).
Guía de Componentes Pentaho Data Integration
130
Figura 46: Ubicación del Componente Información del Sistema
Descripción
Muestra la información del sistema que se desea obtener.
Configuración del Componente Información del Sistema
Nombre del paso: Este nombre tiene que ser único en una sola transformación.
Guía de Componentes Pentaho Data Integration
131
Nombre: Nombre con el que se desea que se visualice la información.
Tipo: Contiene el tipo de información del sistema que se desea obtener. Puede ser de
todas las formas que se muestran a continuación.
Ejemplo
En el siguiente ejemplo se visualiza la información del sistema referente al Ip del
servidor, nombre del servidor y nombre de la transformación.
La transformación realizada es muy sencilla, solo se leyó información desde un
fichero, luego se dio la opción de información del sistema y por último se visualizó en
un documento de texto.
La transformación quedo de la siguiente forma:
Guía de Componentes Pentaho Data Integration
132
Resultados
Start
El ícono o el símbolo que representa al paso Start es el siguiente:
Este se encuentra en el menú Transformar de la herramienta como se muestra en la
(Figura 62).
Figura 47: Ubicación del Componente Start
Descripción
Es el componente que indica cuando empezar a realizar un trabajo determinado.
Configuración del Componente Start
Guía de Componentes Pentaho Data Integration
133
Repeat: Indica que este trabajo se va a repetir.
Type: Permite programar cuando se realizara el trabajo.
Interval in seconds: Programa el intervalo de segundos para realizar el trabajo.
Interval in minutes: Programa el intervalo de minutos para realizar el trabajo.
Time of day: Programa la hora del día para realizar el trabajo.
Day of week: Permite seleccionar el día de la semana en que se realizara el trabajo.
Day of month: Permite seleccionar el mes en que se realizara el trabajo.
Nota: es importante saber que al en este componente solo se encuentran habilitados
inicialmente la opción Repeat y Type y según el tipo que se seleccione, se habitaran
las demás. Por ejemplo, si se selecciona el tipo interval solo se habilitaran las
opciones Interval in seconds y Interval in minutes.
Compare Folder
El ícono o el símbolo que representa al paso Compare Folder es el siguiente:
Guía de Componentes Pentaho Data Integration
134
Este se encuentra en el menú File Management de la herramienta como se muestra
en la (Figura 63).
Figura 48: Ubicación del Componente Compare Folder
Descripción
Permite comparar carpetas 2 carpetas o archivos.
Configuración del Componente Compare Folder
Guía de Componentes Pentaho Data Integration
135
Job entry name: Este es el nombre del paso, debe ser único.
Include subfolders: Si marca esta opción compara las subcarpetas que contengan
las carpetas que se van a comparar.
Compare: Permite seleccionar lo que se quiere comparar.
Wildcard: Esta opción permite especificar lo que se va a comparar, en caso que se
selecciones la opción de comparación Let me specify...
Compare file size: Si se marca esta opción compara los tamaños de los archivos.
Compare archivos: Si se marca esta opción compara los archivos.
File/folder name 1: Se especifica el nombre de un archivo o carpeta a comparar.
File/folder name 2: Se especifica el nombre de un archivo o carpeta a comparar.
Insert-Update
El ícono o el símbolo que representa al paso Insert-Update es el siguiente:
Guía de Componentes Pentaho Data Integration
136
Este se encuentra en el menú Salida de la herramienta como se muestra en la (Figura
64).
Figura 49: Ubicación del Componente Insert-Update
Descripción
El paso Insert/Update primero hace una búsqueda de la fila en la tabla usando una o
más llaves de búsqueda, si no la encuentra inserta la fila, si la encuentra y contiene la
misma información no hace nada, y si no son iguales la actualiza.
Nota: Si se encuentran múltiples filas que comparte igual llave, solo la primera fila
encontrada es con la cual se compara. El resultado dependerá de lo que se explico
anteriormente, y las otras filas de igual llave se les harán el mismo proceso.
Configuración del Componente Insert-Update
Guía de Componentes Pentaho Data Integration
137
Nombre del paso: Se especifica el nombre del paso debe ser único en la
transformación.
Conexión: Conexión a la base de datos que se va a realizar la operación.
Esquema Destino: El nombre de la Schema donde se encuentra la tabla a ser escrita.
Tabla Destino: Nombre de la tabla a la cual que se le va a hacer la operación.
Commit size: El número de filas a cambiar (insert / update) despúes de ejecutar la
consulta.
Don't perform any updates: Si esta marcado no se realizaran actualizaciones.
Key Lookup table: Permite especificar el campo a comparar así como la operación.
Pueden usarse: =, <>, <, <=, >, >=, LIKE, BETWEEN, IS NULL, IS NOT NULL.
Guía de Componentes Pentaho Data Integration
138
Nota: Dando click se obtienen los campos.
Update Fields: Permite especificar todos los campos a ser una operación de
insert/update incluyendo las llaves.
SQL button: Click SQL para generar el SQL para crear las tablas y columnas para la
correcta operación.
Clone Row
El ícono o el símbolo que representa al paso Clone Row es el siguiente:
Este se encuentra en el menú Transformar de la herramienta como se muestra en la
(Figura 65).
Figura 50: Ubicación del Componente Clone Row
Descripción
En este paso se crea una copia (se clona) la fila y se inserta a continuación de la
clonada en el próximo paso.
Guía de Componentes Pentaho Data Integration
139
Configuración del Componente Clone Row
Nombre del Paso: Se especifica el nombre del paso.
Nr clones: Número de filas que se quieren tener después de la original.
Add clone flag: Se chequea si se quiere adicionar una fila donde se indica si la fila fue
clonada.
N / false: no es una fila clonada, esta es la original.
Y / true: Fila clonada. .
Clone flag field: Nombre de la nueva fila.
Java Script Job Entry
El ícono o el símbolo que representa al paso Java Script Job Entry es el siguiente:
Este se encuentra en el menú Scripting de la herramienta como se muestra en la
(Figura 66).
Guía de Componentes Pentaho Data Integration
140
Figura 51: Ubicación del Componente Java Script Job Entry
Descripción
El resultado de la entrada de Javascipt tiene que ser una expresión de true o false, en
otras palabras tiene que terminar con una expresión booleana.
Alguna de las opciones que se pueden utilizar. Se utiliza una variable definida
“previous_result”, con la cual se llaman estas funciones.
Configuración del Componente Java Script Job Entry
Funciones
previous_result.getResult() - boolean
Guía de Componentes Pentaho Data Integration
141
True si se ejecutó correctamente, y falso si existió algún error.
previous_result.getExitStatus() - int
Se sale del estado.
previous_result.getEntryNr() - int
El número de veces que se ha ejecutado.
previous_result.getNrErrors() - long
El número de errores.
previous_result.getNrLinesInput() - long
El numero de filas leídas desde la BD o fichero.
previous_result.getNrLinesOutput() - long
Número de filas afectadas.
previous_result.getNrLinesRead() - long
Número de filas leídas de entrada.
previous_result.getNrLinesUpdated() - long
Número de filas actualizadas en la BD o fichero.
previous_result.getNrLinesWritten() - long
Número de filas escritas para el próximo paso.
Las filas que se obtienen del paso anterior se pueden tratar como un arreglo, row[0]
haría referencia a la primera fila. Si esto se guarda en una variable y luego se quiere
hacer alusión a algún campo en específico se haría de la siguiente forma:
firstRow.getString("name", "").equals("Pepe");
Validador de Datos
El ícono o el símbolo que representa al paso Validador de Datos es el siguiente:
Guía de Componentes Pentaho Data Integration
142
Este se encuentra en el menú Transformar de la herramienta como se muestra en la
(Figura 67).
Figura 52: Ubicación del Componente Validador de Datos
Descripción
Validación de datos se suele utilizar para asegurarse de que los datos tiene una cierta
calidad. Validación puede ocurrir por diversas razones, por ejemplo, si usted sospecha
que los datos no tiene buena calidad o simplemente porque tiene un determinado lugar
en el SLA.
El paso de datos Validator le permite definir reglas sencillas para describir lo que los
datos en un campo deben ser similares. Esto puede ser un rango de valores, una lista
de valores o los datos de longitud.
Guía de Componentes Pentaho Data Integration
143
Configuración del Componente Validador de Datos
Figura 53: Primera Parte del Componente Validador de Datos
Guía de Componentes Pentaho Data Integration
144
Figura 54: Segunda Parte del Componente Validador de Datos
Nombre del paso
Nombre único que identifica al paso
Nombre de la fila a validar
Nombre de la fila a validar
Código del error
El código del error para pasar el manejo de errores de validación de esta regla. (reemplaza el valor por defecto)
Descripción del error
La descripción del error para pasar al manejo de errores de validación de esta regla (reemplaza el valor por defecto)
Tipo ¿Verificar tipo de datos?
Comprueba si se desea especificar un determinado tipo de datos que coinciden.
Tipo de datos Especificar el tipo de datos para verificar
Conversión de la máscara
la máscara de utilizar para convertir los datos especificados en la presente regla de validación
Decimales símbolo el símbolo decimal de utilizar para convertir los datos especificados en la presente regla de validación
Datos Este bloque de información contiene la mayor parte de la regla de validación
¿Permite nulo? Desactive esta opción si no desea permitir valores nulos en los datos del campo seleccionado.
Max longitud de la cadena
Compruebe la longitud de la cadena de forma de los datos del campo seleccionado, asegúrese de que sea más corto que el tiempo o como aquí se especifica la duración.
Min. longitud de la Compruebe la longitud de la cadena de forma
Guía de Componentes Pentaho Data Integration
145
cadena: de los datos del campo seleccionado, asegúrese de que sea más largo o más, siempre y cuando la longitud especificada aquí.
Valor máximo: Verificar los datos del campo seleccionado y ver si no es superior al valor máximo especificado aquí
Valor mínimo: Verificar los datos del campo seleccionado y ver si no es inferior al valor mínimo especificado aquí.
Previsto iniciar la cadena
la cadena de valor de validar el valor que tiene que empezar con este valor (cuando se especifique)
Esperado final de cadena
la cadena de valor de validar el valor que tiene que terminar con este valor (cuando se especifique)
Expresión regular previsto para que coincida con el valor de la cadena
De validar el valor que debe coincidir con esta expresión regular (cuando se especifique)
Expresión regular no pueden igualar
El valor de la cadena de validar el valor que no se le permite esta expresión regular partido (cuando se especifique)
Los valores permitidos Asegúrese de que los datos del campo seleccionado es sólo uno de los valores de la lista. Puede usar los botones a la derecha para añadir o eliminar los valores de la lista.
¿Leer valores permitidos de un paso?
Esta opción para permitir que la fuente de datos de otro paso en la transformación. Esto elimina la necesidad de codificar valores permitidos. Ahora puede almacenar en una tabla de base de datos o un archivo en alguna parte. También debe especificar el paso a leer y sobre el terreno de si esta opción está seleccionada.
Ejemplo
La siguiente Transformación muestra un ejemplo con el uso del Componente Validador
de Datos (Figura 70).
Guía de Componentes Pentaho Data Integration
146
Descripción de la transformación.
En esta transformación se validará que dado dado un conjunto de datos
(“USA”,”EMEA”y “Australia”, generados por el componente “Generador de Filas”. La
entradas se pueden ser tablas de entrada, archivos XML, fichero de texto, etc),
verificar si estos se encuentran existen entre los valores permisibles, lo cuales se
pueden almacenar en tablas, archivos XML, ficheros de texto, etc. Después que
verifica si los valores existen en el conjunto, entonces delimita cuales fueron la
cantidad de registros correctos y cuales tuvieron errores (se define además el tipo de
error, código que representa, en fin todo los parámetros que se desee).
Pasos
1- Configuración del componente Generador de
Filas:
Figura 55: Transformación del paso Validador de Datos
Guía de Componentes Pentaho Data Integration
147
Con este componente se generan filas, en este caso se configuró para generar
una fila de nombre Territory de tipo string y que su valor por defecto es “USA”
la el limite de este valor es 1 por lo que este componente solo generara la fila
“USA”.
Se utiliza este componente para generar 3 filas con el mismo campo llamado
Territory pero con valor diferentes, los valores son “USA”, “EMEA”, “Australia”
Luego se define la fuente que contiene los valores permisibles.
Nota: se utiliza esta opción cuando la cantidad de valores permisibles es muy
amplia y se tiene almacenada en algún archivo, tabla u otro.
2- Definir el Archivo en el cual se tiene los valores de referencia externa.
Como caso de prueba se utilizara como entrada el componente CSV file input
el cual tendrá 6 valores y el nombre del campo es “T”.
Guía de Componentes Pentaho Data Integration
148
Esta transformación tiene como configuración el nombre del paso, el directorio
donde se encuentra el archivo (previamente creado), el campo al cual se le
quiere analizar. Esta es la configuración del archivo utilizado en la
transformación de prueba.
3- Creación del validador de datos.
Luego de realizar los pasos anteriores se realiza la selección del componente
“Data Validator” y su configuración.
Para realizar su configuración se debe dar doble clic sobre el componente.
Luego se debe seleccionar una nueva validación.
Guía de Componentes Pentaho Data Integration
149
Se define el nombre de la validación, debe ser un nombre diferente para cada
validación que se realice.
Después de crear la validación ya esta en condiciones de configurar la
validación para lo que desee. (En este caso para verificar que los valores
“USA”, “EMEA”, “Australia” se encuentran en el archivo Territory.TXT)
Guía de Componentes Pentaho Data Integration
150
1. Definir el campo de las fila generadas se desea validar,
2. Definir el tipo de datos del campo sin activar la opción “verificar tipo de
datos”,
3. Activar la opción que define si los valores se leerán de algún archivo.
4. Configurar la dirección de esta fuente de valores.
4- Control de errores.
Se define dos transformaciones simuladas una para el caso que ocurren
“Errores” y otra para el caso que los valores están “OK”
En el caso de “OK” es solo crear un paso entre el data validator y la
transformación simulada y en el caso de error se realiza la siguiente
configuración.
1. Clic derecho sobre el data validator.
Guía de Componentes Pentaho Data Integration
151
2. Configuro las opciones siguientes (en la opción “target step” se define para
que transformación simulada se desea enviar los errores).
Cuando se realiza esta transformación debe quedar la relación entre el
data validator con la transformación simulada de la siguiente manera:
La transformación al final del modelado queda de la siguiente manera.
Guía de Componentes Pentaho Data Integration
152
5- Verificación de los resultados.
El resultado de esta validación es la siguiente:
En este caso el error es la fila que tiene valor “Australia”, la cual no se
encuentra entre los valores almacenados en el CSV file input (Territory.TXT).
Entrada XML
El ícono o el símbolo que representa al paso Entrada XML es el siguiente:
Guía de Componentes Pentaho Data Integration
153
Este se encuentra en el menú Entrada de la herramienta como se muestra en la
(Figura 71).
Figura 56: Ubicación del Componente Entrada XML
Descripción
Este paso le permite leer la información almacenada en archivos XML. Las siguientes
secciones describen la interfaz para definir los nombres de los archivos que desea
leer, repetir la parte de los datos del archivo XML y para recuperar los campos.
Nota: Puede especificar los campos por la ruta del elemento o atributo y la conversión
mediante la introducción de las máscaras, y otros tipos de datos de meta-datos.
Configuración del Componente Entrada XML
Guía de Componentes Pentaho Data Integration
154
Pestaña Fichero
La ficha del archivo es donde se define la ubicación de los archivos de Excel desde el
que desea leer. El cuadro que figura a continuación contiene las opciones disponibles:
Opción Descripción
Nombre del
paso
Nombre de la etapa, el nombre tiene que ser único en una sola
transformación
Directorio o
archivo
Especifica la ubicación y / o el nombre de la entrada de archivo de
texto
Nota: Haga clic en Agregar para agregar el archivo / directorio / comodín combinación
a la lista de archivos seleccionados (la red) a continuación.
Expresión
regular
Especifica la expresión regular que desea utilizar para seleccionar
los archivos en el directorio especificado en la opción anterior
Ficheros
seleccionados
Esta tabla contiene una lista de archivos seleccionados (comodín o
selecciones) y una propiedad especifica si el archivo es necesario
o no. Si un archivo es necesario y no lo encuentra, se genera un
error, en caso contrario, se omite el nombre del archivo.
Mostrar Fichero
(s)
Esta opción muestra una lista de los archivos será la generada.
Nota: Esta es una simulación y, a veces, depende del número de
Guía de Componentes Pentaho Data Integration
155
registros en cada archivo.
Pestaña Contenido
La pestaña “Contenido” contiene las siguientes opciones para la descripción del
contenido que se está leyendo:
Opción Descripción
Incluya el
nombre del
fichero en salida.
Activar si desea que el nombre del archivo XML al que pertenece
la fila en la salida. Puede especificar el nombre del campo en el
que el nombre del archivo acabará.
Número de fila
de en salida.
Activar si quiere tener un número de fila (empieza en 1) en el flujo
de salida. Puede especificar el nombre entero, donde la terminará
pulg
Límite Especifica el máximo número de registros a leer aquí (opcional)
N º de filas de
cabecera a omitir
Especifica el número de filas para saltar, desde el inicio de un
documento XML, antes de iniciar el proceso de
Localización Especifica la ruta de acceso por medio de elementos a la
repetición de parte del archivo XML. Por ejemplo, si usted está
leyendo las filas de este XML[file:]
Entonces establecer la ubicación de las Rows, Row
Pestaña Campos
La pestaña “Campos” le permite definir propiedades para la ubicación y el formato de
los campos de lectura de los documentos XML. El cuadro que figura a continuación se
describe cada una de las opciones para configurar el campo de propiedades:
Guía de Componentes Pentaho Data Integration
156
Opción Descripción
Nombre Nombre de la fila
Tipo Tipo de datos de la fila, puede ser string date, number.
Formato El formato para convertir con máscara. Número de Formatos para ver
una descripción completa de especificadores de formato.
Longitud La longitud depende de la opción de “Tipo de campo” de la siguiente
manera
Number-Número total de cifras significativas en una serie
String - longitud total de la cadena
Date - duración de la salida impresa de la cadena (por ejemplo, devuelve sólo 4 años)
Precisión La precisión depende de la opción de “Tipo de campo” de la siguiente
manera:
Number- Número de coma flotante dígitos
String - no utilizado
Fecha - no utilizado
Moneda Símbolo utilizado para representar a monedas como $ 10,000.00 o
E5.000, 00
Decimal Un punto decimal se puede uno "." (10,000.00) o "," (5.000,00)
Grupo La agrupación puede ser una "," (10,000.00) o "." (5.000,00)
Recorte El método para aplicar el recorte de la cadena se encuentra en
Tipo de
poda
Tipo de XML
Repetir Activar si desea repetir valores vacíos con el valor correspondiente de la
fila anterior.
Posición La posición del elemento o atributo XML. Puede utilizar la sintaxis
siguiente para especificar la posición de un elemento, por ejemplo:
El primer elemento llamado "elemento": E = elemento / 1
El primer atributo denominado "atributo": A = atributo / 1
El primer atributo denominado "atributo" en el segundo "elemento" tag: E = elemento / 2, A = atributo / 1
Guía de Componentes Pentaho Data Integration
157
Nota: Haga clic en Obtener Campos para generar automáticamente todas las
posiciones posibles en el archivo XML.
Nota: Pentaho ha añadido soporte para documentos XML que toda la información se
almacena en la raíz elemento. R = El especial de localización se ha añadido que le
permite capturar esta información. Haga clic en Obtener campos para encontrar la
información si está disponible.
Ejemplo
En el ejemplo siguiente se mostrara como configurar el componente “Entrada XML”
para que se pueda lee los datos de un XML.
Pre-condiciones para el ejemplo: Tener el XML previamente creado.
Nombre del XML: Ejemplo.xml
Datos del XML de prueba:
<?xml version="1.0" encoding="UTF-8"?> <Row> <Pintor> <Autor>Boris Kustodiev</Autor> <FechaNac>1878-1927</FechaNac> <LugarNac>Astrakhan, Rusia</LugarNac> </Pintor> <Pintor> <Autor>Frederic Bazille</Autor> <FechaNac>1841-1870</FechaNac> <LugarNac>Francia</LugarNac> </Pintor> <Pintor> <Autor>Gian Pietro Rizzi</Autor> <FechaNac>1495-1549</FechaNac> <LugarNac>Italia</LugarNac> </Pintor> <Pintor> <Autor>Edward Arthur Walton</Autor> <FechaNac>1860-1922</FechaNac> <LugarNac>Escocia, Reino Unido</LugarNac> </Pintor> <Pintor> <Autor>Anthony van Dyck</Autor> <FechaNac>1599-1641</FechaNac>
Guía de Componentes Pentaho Data Integration
158
<LugarNac>Antwerp, Belgica</LugarNac> </Pintor> <Pintor> <Autor>Rogier van der Weyden</Autor> <FechaNac>1399-1464</FechaNac> <LugarNac>Flandes, hoy Belgica</LugarNac> </Pintor> </Row>
Pasos
1- Seleccionar le componente “Entrada XML” y agregarlo a la transformación
2- Dar clic derecho en el componente y seleccionar “Editar Paso”
3- Configurar el paso “Entrada XML”
Lo primero que se debe hacer es nombrar el paso; el cual debe ser único para
cada transformación.
Guía de Componentes Pentaho Data Integration
159
Esta configuración se dividen en tres secciones, ella son “Fichero”,”Contenido” y
“Campos”, las cuales se disponen de la siguiente manera.
Fichero
1. Selecciono el fichero XML que deseo cargar o escribo el directorio donde
se encuentra, en caso que el nombre del fichero se le aplique alguna
expresión regular se añade (opcional)
Guía de Componentes Pentaho Data Integration
160
2. Se añade a los ficheros seleccionados.
Guía de Componentes Pentaho Data Integration
161
Luego que se configura la paleta ficheros se pasa a la de Contenido, en la cual
se realizan los siguientes pasos.
1. Seleccionar los valores opcionales que se muestran a continuación.(En el
ejemplo no se utilizaron estas opciones)
2. Definir la localización de las tuplas en el xml, esta opción es de suma
importancia ya que permiten definir cuales tuplas se desea leer. En este caso
la raíz del documento xml se nombra “Row’” el cual contiene varia columnas de
llamadas “Pintor” por lo que en la localización se pone en la primera fila la raíz
y se sigue la jerarquía hasta el nivel que se quiera leer, en este caso hasta
“Pintor”.
Guía de Componentes Pentaho Data Integration
162
Después que se define la localización se pasa a la paleta “Campos”
Campos:
1. Después de haber realizado las acciones anteriores se podrá utilizar la
opción “Obtener campos”
2. En este Caso se muestran los campos siguientes detectados por la
herramienta. Mostrando además una posición recomendada.
Guía de Componentes Pentaho Data Integration
163
3. En este caso el campo Pintor no almacena ningún dato atómico por lo que
se elimina de la selección.
Guía de Componentes Pentaho Data Integration
164
4. Se puede de esta forma visualizar los valores del XML, utilizando la opción
“Previsualizar filas”
Y se mostrara los valores del XML que se utilizó para la prueba.
A partir de este momento se está en condiciones de realizar cualquier
transformación a estos datos almacenados en el XML. En este ejemplo se
pasaran a la tabla Ejemplo en una base de datos postgre.
Guía de Componentes Pentaho Data Integration
165
Después de ejecutar esta transformación se obtiene los siguientes datos.
Actualizar
El ícono o el símbolo que representa al paso Actualizar es el siguiente:
Este se encuentra en el menú Salida de la herramienta como se muestra en la (Figura
72).
Guía de Componentes Pentaho Data Integration
166
Figura 57: Ubicación del Componente Actualizar
Descripción
El paso actualizar primero busca una fila en una tabla usando una o más claves de
búsqueda. Si la fila no se puede encontrar, se inserta la fila. Si se puede encontrar y
actualizar los campos son los mismos, no se hace nada. Si no son todos iguales, la fila
de la tabla se actualiza.
Configuración del Componente Actualizar
Opción Descripción
Nombre del paso Este nombre debe ser único para esta transformación
Conexión La conexión de la base de datos donde será escrito los
datos.
Esquema de destino El nombre del esquema para la tabla a la que se escribe los
datos.
Tabla destino Nombre de la tabla en la que desea hacer la actualización.
Tamaño de
transacción (commit)
El número de filas actualizadas antes de ejecutar una
transacción completa
¿Ignorar fallo de
búsqueda?
Si está activada, se ignoran los falos que ocurran es la
búsqueda y se almacenaran en el campo que se elija en la
opción “Campo lógico(clave encontrada)”
Las claves para
realizar la búsqueda
de los valores
Le permite especificar una lista de valores de campo y
comparadores. Puede utilizar los siguientes elementos de
comparación: =, <>, <, <=, >, >=, LIKE, BETWEEN, IS NULL,
IS NOT NULL
Guía de Componentes Pentaho Data Integration
167
Nota: Haga clic en Obtener campos para obtener una lista
de campos a partir de la entrada (s).
Actualizar campos Le permite especificar todos los campos en la tabla que
desee actualizar. Evitar actualizaciones sobre determinados
campos, especificando N en la actualización de la columna.
Nota: Haga clic en Obtener actualización de campos para
obtener una lista de campos a partir de la actualización del
flujo de entrada (s).
Botón SQL Haga clic en SQL para generar el SQL para crear la tabla y
los índices para su correcto funcionamiento.
Guía de Componentes Pentaho Data Integration
168
Ejemplo 1
Para realizar este ejemplo los valores de prueba almacenados en la tabla son los
siguientes:
Esta tabla de la base de datos tiene en el campo fecha de nacimiento (fechanac) con
algunos valores nulos. Pero la fuente de datos (en este caso un XML) ya contiene el
valor de este campo por lo que se desea actualizar estos valores, con los
almacenados en el XML.
Pasos
1- Selecciona la fuente de los datos donde están los datos actualizados
Guía de Componentes Pentaho Data Integration
169
Nota: en este ejemplo los valores están almacenados en un XML
Este archivo XML está almacenado en un directorio determinado
Guía de Componentes Pentaho Data Integration
170
Además se le define los valores de que se desean leer.
Con los campos respectivos que se van a seleccionar
Cuando se le realiza una pre visualización de los valores que se van a
actualizar, se muestra lo siguiente.
Guía de Componentes Pentaho Data Integration
171
Como se puede ver en la figura anterior y haciendo una comparación con los
valores que están almacenado en la tabla de la base datos ( figura siguiente)
se puede observar que los últimos valores del XML ya contienen valores con
respecto a la tabla, la cual tiene los valores nulos.
Valores de la tabla.
Después que se ha seleccionado la fuente de los datos actualizados entonces
se procede a seleccionar el componente Actualizar.
2- Seleccionar le componente “Actualizar” y agregarlo a la transformación.
3- Dar clic derecho en el componente y seleccionar “Editar Paso”
Guía de Componentes Pentaho Data Integration
172
4- Configurar el paso “Actualizar”
1- Lo primero que se debe hacer es nombrar el paso; el cual debe ser único
para cada transformación.
2- Debo definir la conexión donde se encuentra localizada la tabla que se
desea actualizar.
Guía de Componentes Pentaho Data Integration
173
Guía de Componentes Pentaho Data Integration
174
3- Especifico el Esquema y la tabla que será actualizada
4- Defino el número máximo de transacciones, y si deseo ignorar los fallos
de buscada, especificando en que campo lo deseo almacenar.
Nota: La opción del número máximo de transacciones trae por defecto 100
transacciones y el caso de si se desea ignorar o no los fallos de búsqueda es
opcional.
Guía de Componentes Pentaho Data Integration
175
5- Planteo la expresión por la que se realizara la actualización, en este caso
deseo actualizar todos los campos (fecha de nacimiento) que sean nulos,
y que se cumpla además que el campo autor del XML sea igual que autor
que está en la tabla y que el lugar de nacimiento también sea el mismo.
Nota: Para selecciona los campos que se utilizarán en la condición de
actualización basta con dar en la opción (Obtener Campos) y la herramienta
propone los valores posibles para establecer las condiciones de actualización.
Guía de Componentes Pentaho Data Integration
176
6- Defino cuales son los campos de la tabla que serán actualizados. En este
caso solo deseo actualizar el campo fecha de nacimiento con los nuevos
valores que están almacenados en el XML, por lo que entre los campos
que se van a actualizar solo selecciono fechanac para la actualización.
Nota: Para selecciona los campos que se actualizaran basta con dar en la opción
(Obtener Campos actualización) y la herramienta propone los valores posibles
para establecer la actualización.
Guía de Componentes Pentaho Data Integration
177
Después que realizamos esta actualización necesitamos ejecuar el botón
“SQL” el cual creará las condiciones necesarias para que se ejecute
satisfactoriamente la transformación. Cuando se selecciona este botón se
muestra la siguiente ventana, la cual se debe ejecutar.
Guía de Componentes Pentaho Data Integration
178
Y ya está todo lo necesario para ejecutar la transformación
Paso final:
Al terminarse la transformación queda modelada de la siguiente forma.
Entre los resultado de la actualización se encuentra la modificación de 3 tuplas que
fueron las actualizadas.
Al ejecutarse esta transformación los valores almacenados en la tabla quedan de la
siguiente manera.
Guía de Componentes Pentaho Data Integration
179
Ejemplo 2
Actualización de campos utilizando valores constantes.
Existen algunos casos que se desea actualizar una tabla pero utilizando para ello los
mismos valores. Un caso puede ser que una fuente determinado contiene un gran
nuero de valores nulos y se desee cambiarlos por otro valor diferente, como puede ser
cambiar donde este el valor “null” por el “No Declarado”.
Para realizar este ejemplo los valores iniciales de la tabla son los siguientes:
Se desea donde están los valores nulos actualizarlos con el valor “No Declarado” para
ellos se debe realizar la transformación de la siguiente manera.
Pasos
Guía de Componentes Pentaho Data Integration
180
1- Leer los valores de la tabla que se va a actualizar.
Para realizar esta lectura de valores se configura el componente “Entrada
Tabla” de la siguiente manera.
1. Configurar el paso, para ellos darle doble clic al componente. Cuando se
muestra la ventana de configuración defino el nombre del paso.
2. Definir la conexión de la base de datos donde se encuentra la tabla.
Guía de Componentes Pentaho Data Integration
181
3. Realizar la consulta a la tabla que se desea actualizar.
Nota: En este ejemplo se selecciona la misma tabla que se va utilizar para
realizar la actualización como entrada del componente “Actualizar”
Guía de Componentes Pentaho Data Integration
182
Cuando se realiza la pre-visualización de los valores de la tabla a
actualizar se puede ver los valores nulos que contiene la tabla, los cuales
serán cambiados por “No Declarado”.
Después que se tiene seleccionado los valores a actualizar se debe definir
los valores constantes.
Guía de Componentes Pentaho Data Integration
183
2- Generar una fila con los valores constante.
Para realizar este paso se selecciona el componente “Generar Fila”.
Luego se realiza la configuración de este componente. Para ellos se da doble
clic al componente. Cuando se muestra la ventana de configuración defino el
nombre del paso.
Se define la cantidad de tuplas que deseo generar, en este caso 1 sola tupla.
Guía de Componentes Pentaho Data Integration
184
Después se esta en condiciones de definir las características de los
valores constantes que se desea generar. En este caso se debe generar la
misma cantidad de columnas con que cuenta la tabla que se desea
actualizar además de contar con las mismas características, como tipo de
datos, precisión, longitud entre otras. Como este caso sola la columna
“fechanac” es la que contiene valores nulos es por ellos que genero valor
nulos para las otras variables excepto fechanac
Guía de Componentes Pentaho Data Integration
185
Después de haber configurado el generador de filas se puede pasar unir
los valores generados por el generador de filas
3- Unir los valores constantes con el de la tabla a actualizar.
Para realizar este paso se selecciona el componente “Append streams”.
Luego se realiza la configuración de este componente. Para ellos se da doble
clic al componente. Cuando se muestra la ventana de configuración defino el
nombre del paso
Luego defino que filas estarán arriba y cuales estarán abajo.
Nota: Para que se realice de forma satisfactoria esta transformación lo valores
constante debe estar de la parte arriba de la unión. Además debe tenerse en cuenta
que para que se muestres los nombres de la tabla y del generador de filas debe
Guía de Componentes Pentaho Data Integration
186
existir previamente un salto entre la tabla y el generador y el componente “Append
streams”.
Después de haber realizado esta configuración la transformación debe esta
de esta manera.
4- Seleccionar le componente “Actualizar” y agregarlo a la transformación.
Ver 2do y 3er Paso del ejemplo anterior…
5- Configurar el componente actualizar (Ejemplo anterior).
Para realizar la configuración de este componente se puede utilizar como
referencia la configuración del ejemplo anterior. La peculiaridad de este
ejemplo es que la conexión a la base de datos, el esquema y la tabla destino
debe ser la misma que las utilizadas por la “Tabla Entrada” configurada
anteriormente.
Guía de Componentes Pentaho Data Integration
187
En este caso las condiciones de actualización es que la fecha de nacimiento
sea nulo.
Guía de Componentes Pentaho Data Integration
188
En caso de que sea nulo entonces se debe actualizar le campo fechanac por
el comodín “No Declarado”.
Nota: Al realizar este tipo de actualización el componente toma como valor de
actualización a el primer valor almacenado en la entrada de valores que tiene
el componente, en este caso nos aseguramos que el primer valor de la
entrada para la variable fechanac sea “No Declarado” generado por el
componente “Generador de fila”
Guía de Componentes Pentaho Data Integration
189
Después que realizamos esta actualización necesitamos ejecuar el botón
“SQL” el cual creará las condiciones necesarias para que se ejecute
satisfactoriamente la transformación.
Guía de Componentes Pentaho Data Integration
190
En este caso se envía la sentencia de ejecución de un INDEX
Y es creado satisfactoriamente
Guía de Componentes Pentaho Data Integration
191
Después que se realiza todos los pasos anteriores la transformación queda
de la siguiente manera:
Al ser ejecutado esta transformación los resultados son los siguientes:
Y los valores actualizados se muestran a continuación
Guía de Componentes Pentaho Data Integration
192
Guía de Componentes Pentaho Data Integration
193