Está en la página 1de 20

Pentaho Data Integration

TRANSFORMACIONES
SOBRE UN CONJUNTO REGISTROS
Trans. Conj. de registros. Pentaho

Transformaciones sobre un conjunto registros


 Son pasos que operan sobre un conjunto entero de datos dentro de un flujo (el
registro con todos los campos)
Pasos cubiertos en esta sección
 Filter rows  Merge Rows
 Sort rows  Unique rows
 Join rows  Group by

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 2


Trans. Conj. de registros. Pentaho

Filtrar registros – Filter rows


 Filtra filas basándose en condiciones.
 Soporte completo de lógica booleana.
 Su salida puede ser dirigida a dos flujos:
los registros que pasan la condición
(verdadero) y los que no (falso).
 Generalmente es usados para:
• Identificar excepciones que deben ser
escritas a un archivo de errores
• Lógica en la transformación donde
exista una ramificación en el flujo de
datos.

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 3


Trans. Conj. de registros. Pentaho

Filtrar registros – Filter rows


 Filtra filas basándose en condiciones.
 Soporte completo de lógica booleana.
 Su salida puede ser dirigida a dos flujos:
los registros que pasan la condición
(verdadero) y los que no (falso).
 Generalmente es usados para:
• Identificar excepciones que deben ser
escritas a un archivo de errores
• Lógica en la transformación donde
exista una ramificación en el flujo de
datos.

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 4


Trans. Conj. de registros. Pentaho

Ordenar registros – Sort rows


 Ordena los registros basándose en los campos campos especificados.
 Ordenamiento ascendente y descendente.
 Filtrado de registros duplicados
 Ordenamiento en memoria principal y secundaria

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 5


Trans. Conj. de registros. Pentaho

Unión de registros – Join Rows


 Produce combinaciones de todas los registros de los los flujos de datos de entrada.
 Utilice una condición para limitar la cantidad de registros de salida.

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 6


Trans. Conj. de registros. Pentaho

Fusionar registros – Merge Rows


 Compara y une 2 flujos de data
• Flujo de referencia = Data previamente cargada.
• Flujo de comparación = La nueva data extraída desde la fuente.
 Mayormente usado en la identificación de deltas en la data origen cuando no existe
una marca de tiempo (timestamp) disponible en los datos de origen.
 Los flujos de datos deben estar ordenados por los campos claves.
 El campo de salida puede obtener los siguientes
valores:
• Identical, la clave fue encontrada en ambos
flujos y los valores a comparar son idénticos.
• Changed, la clave fue encontrada en ambos
flujos pero uno de los valores es diferente.
• New, la clave no fue encontrada en el flujo de
referencia.
• Deleted, la clave no fue encontrada en el flujo
de comparación.
© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 7
Trans. Conj. de registros. Pentaho

Registros únicos– Unique rows


 Elimina registros duplicados del flujo de datos
 Se comprar únicamente registros consecutivos, así́ que los registros deben estar
ordenados.
 Algunas opciones disponibles:
• Add counter to output?, habilitando esta
opción se colocará en un campo
resultante la cantidad de veces que el
registro estaba repetido.
• Counter fields, si la opción anterior se
encuentra habilitada, en esta propiedad
se establece el nombre del campo
contador.
• Redirect duplicate row, desvía los
registros duplicados a un flujo alterno.

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 8


Trans. Conj. de registros. Pentaho

Agrupar registros – Group by


 Agrupa los registros del flujo de datos
 Los registros han de estar ordenados para poder utilizar este paso.

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 9


Transformaciones de conjuntos
Crear STAGE_COUNTRYTERRITORY

LABORATORIO

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 10


Lab. Trans. de conjuntos

Cargar la dimensión de territorio->país


Objetivo
 Crear una dimensión para la relación entre país y territorio:

STAGE_COUNTRYTERRITORY.
Actividades
 Cree una nueva transformación y en ella coloque los pasos Table input x 2, Stream

lookup, Database lookup, Filter rows, Dimension lookup/update, Dummy y


conecte los pasos entre ellos así como se muestra en la siguiente imagen.

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 11


Lab. Trans. de conjuntos

Cargar la dimensión de territorio->país


 Configure el primer paso Table input para cargar todos los países de la tabla
CUSTOMERS de la base de datos pentaho_oltp.

SELECT
country
, salesrepemployeenumber
FROM customers

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 12


Lab. Trans. de conjuntos

Cargar la dimensión de territorio->país


 Configure el segundo paso Table input para cargar todos códigos de empleados de
la tabla EMPLOYEE de la base de datos pentaho_oltp.

SELECT
employeenumber
, officecode
FROM employees

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 13


Lab. Trans. de conjuntos

Cargar la dimensión de territorio->país


 Configure el segundo paso Database lookup para buscar el territorio de las oficinas
de la tabla OFFICES en la base de datos pentaho_oltp.
 La clave a comprar entre la
tabla y los registros del flujo
será el campo officecode.
 El campo a retornar es
territory del tipo string.

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 14


Lab. Trans. de conjuntos

Cargar la dimensión de territorio->país


 Configure el segundo paso Stream lookup para buscar el territorio del representante
de ventas de los clientes.
 La clave a comprar entre los flujos es salesrepemployeenumber para el flujo de
datos provenientes de los clientes y employeenumber proveniente del flujo de datos
de los empleados.
 El campo a retornar es
territory del tipo string.
Flujo informativo

Campo clave del flujo de


Campo del flujo informativo
datos principal

Campo retornado del flujo


informativo en caso de
encontrar coincidencia

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 15


Lab. Trans. de conjuntos

Cargar la dimensión de territorio->país


 Configure el segundo paso Filter rows para clasificar los registros que tengan un
territorio sin datos (nulos).
 Los registros que cumplan con la condición, son aquellos donde el territorio es nulo, y
serán descartados del flujo al ser redireccionados al paso Dummy.
 Aquellos registros que no cumplan con la condición son candidatos a ser insertados
en la dimensión STAGE_COUNTRYTERRITORY.

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 16


Lab. Trans. de conjuntos

Cargar la dimensión de territorio->país


 Almacene los registros en la
dimensión
STAGE_COUNTRYTERRITORY
en la bases de datos
pentaho_olap.

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 17


Lab. Trans. de conjuntos

Cargar la dimensión de territorio->país


Campos a registrar en la
dimensión
 territory

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 18


Lab. Trans. de conjuntos

Cargar la dimensión de territorio->país


 Presione el botón de SQL para generar y ejecutar la sentencia SQL necesaria para
crear la tabla STAGE_COUNTRYTERRITORY en la base de datos pentaho_olap.

CREATE TABLE stage_countryterritory


(
countryid BIGSERIAL
, version INTEGER
, date_from TIMESTAMP
, date_to TIMESTAMP
, country VARCHAR(50)
, territory VARCHAR(10)
, CONSTRAINT idx_stage_countryterritory_tk PRIMARY KEY (countryid)
);

CREATE INDEX idx_stage_countryterritory_lookup ON stage_countryterritory(country);

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 19


Lab. Trans. de conjuntos

Cargar la dimensión de territorio->país


 Guarde todos los cambios realizados, ejecute la transformación y verifique la tabla
destino.

© 2014, UCV. Inteligencia de Negocios. Prof. Wilfredo Rangel : wilfredorangel.ucv@gmail.com 20

También podría gustarte