You are on page 1of 47

Universidad Central de Venezuela Facultad de Ciencias Escuela de Computacin

Pentaho

Semestre: I -2012

Prof. Wilfredo Rangel

Sistemas de Informacin Semestre I - 2012

Prep. Adriana Lpez. Prep. Jos Zambrano. Prep. Leonardo Da Silva.

HISTORIAL DE REVISIONES Fecha 15/06/2012 Versin 1.2 Descripcin Autor Jos Zambrano

1.Escenario de entrenamiento:
1.1 Vista general del Negocio
Nombre de Compaa: Open Logistics. Negocio Primario: Transporte/Camioneros Empresa basada en Indianpolis (Midwest). Tiene una clientela variada, desde empresas Fortune 500 a PYMES y departamentos dentro de grandes organizaciones. Las Rutas son de instalaciones a instalaciones, nunca son envos directos al cliente. Tiene un fuerte crecimiento anual desde 2001. Es una pequea compaa con < 100 empleados, en donde muchos de sus servicios (camiones, conductores, etc.) son subcontratados/outsourcing. Open Logistics trata de reducir al mnimo los costos de transporte a travs de acciones como la consolidacin de carga, movimientos continuos, la seleccin de modo de transporte, seleccin de transportista, la entrega a tiempo, la satisfaccin del cliente, el cumplimiento de las guas de rutas, el uso preferido de los transportistas

1.2Vista General de Indicadores Claves de Rendimiento (KPI)


Estado de salud de la empresa derivada de:o Ingreso por Milla, Ganancia por Milla, % Vaco Se desea analizar estas mtricas (y otras) en el contexto del tiempo, cliente, origen de envo, destino de envo, entre otras dimensiones. El rendimiento optimo del negocio es medido por la habilidad para mantener los camiones lo mas llenos posibles en todo momento.

1.3Vista General de los Datos


nica fuente de todos los datos contenidos en la base de datos "OL_OLTP". Datos operacionales estructurados en Tercera Forma Normal (3FN). El objetivo es una tabla fact (hecho en ingles) con dimensiones basado en un Data Warehouse en Esquema Estrella. Esta base de datos se conoce como la base de datos "OL_OLAP".

Volumen de Datos. Actual tasa de corrida es ~20.000 ordenes por ao siendo cada orden aproximadamente equivalente a un "movimiento" (envo de lugar A a lugar B). Los datos de la OL_OLTP contienen registros de diciembre del 2000 a julio del 2006. ~70.000 ordenes distintas en total. Contenido de Datos. Se especificarn las definiciones especficas de medidas y dimensiones. Se especificarn los mapeos de la BD OL_OLTP a la BD OL_OLAP.

Camiones

Para este laboratorio utilizaremos Postgres 9.1 o superior.

Instalacin PostgresSQL 9.1.4 en Windows.

La contrasea de este instalador es: postgre.

Conexin a Bases de Datos. Entramos a pgs admin III

Luego hacemos doble clip donde aparece la X e ingresamos la clave de conexin dada en la instalacin => postgre.

Hacemos clip derecho en login roles para aadir los roles que usaremos; y le damos a New login role

El password => postgre.

NOTA: (Aadir role ol_olap).Repita los procedimientos anteriores, pero ahora para el caso ol_olap.

Ya creado el rol, pasamos a crear la BD. Para ello nos dirigimos a Data Bases.

Hacemos clip derecho -> New Object -> New DataBase

NOTA: (Aadir database ol_olap).Repita los procedimientos anteriores, pero ahora para el caso ol_olap.

Actualizamos pgAdmin haciendo clic en el icono de las flechas circulares. Esto mostrar sus nuevas bases de datos y las funciones de inicio de sesin.

Restaurar la "ol_oltp" Base de datos. Haga clic derecho sobre la Base de datos "ol_oltp" -> Seleccione Restore(restaurar).

Display object

Para ol_olap

Display objet ,OK.

Link para la descarga de postgres 9.1.4 para Windows 64 bits -> http://www.enterprisedb.com/crossover-thankyou Link para la descarga de postgres 9.1.4 dependiendo del OS -> http://www.enterprisedb.com/products-services-training/pgbindownload Link para descargar kettle para Windows -> http://sourceforge.net/projects/pentaho/files/Data%20Integration/4.3.0-stable/pdi-ce-4.3.0stable.zip/download Link para descargar kettle para Ubuntu -> http://sourceforge.net/projects/pentaho/files/Data%20Integration/4.3.0-stable/pdi-ce-4.3.0stable.tar.gz/download Link para descargar base de datos a usar (mencionadas en los pasos anteriores) -> https://www.dropbox.com/sh/7med23pu6ybw4j2/YsL3_88eVy

QUE ES ETL? ETL es un proceso de integracin de datos en la construccin de un data warehouse que involucra extraer datos de las bases de datos fuentes, transformarlos para que se ajusten a la base de datos destino, y por ltimo cargarlos (loading) al data warehouse. ETL es necesario porque: Integra datos de fuentes heterogneas Limpia los datos removiendo problemas transaccionales y asegurando consistencia en los datos Reestructura los datos para procesamiento analtico ptimo EXTRACCIN. Acceso a las fuentes de datos Extraccin eficiente de cada fuente de datos La menor cantidad de procesamiento posible Solo se busca los datos que sean requeridos Solo se ejecutan con la frecuencia necesaria para satisfacer los requerimientos de procesamiento analticos requeridos Generacin de formatos de datos que pueden ser consumidos en una forma consistente por parte de procesos de carga y transformacin Se puede almacenar datos temporalmente en un rea especializada para su transformacin e integracin con otras fuentes Esto puede involucrar un paso de transporte para mover datos extrados de la base de datos fuente al servidor destino TRANSFORMACION. Transformar datos extrados del formato fuente al formato destino. Esto puede involucrar: Sumar valores de mltiples filas de datos Enforzar reglas de calidad de datos y procesamiento de excepciones Segregar columnas especficas para la carga Decodificar valores codificados Codificar valores de forma libre para que correspondan al formato de base de datos destino Procesar clculos de datos Generar valores de claves sustitutas Intercambio de ejes de datos (convertir columnas a filas o viceversa) CARGAR. Mover datos transformados a la base de datos destino de forma correcta y eficiente Puede requerir secuenciamiento de cargas (e.g. dimensiones antes de hechos) Carga en lotes para grandes volmenes de datos Puede requerir re-indexacin u otras tareas de afinamiento de datos fsicos antes y/o despus del proceso de carga TRANSFORMACION VS TAREA. Transformacin Un proceso atmico que obtiene una o ms entradas fuente, y ejecuta transformaciones y las carga a una o ms salidas A veces llamado un mapeo Entradas pueden ser tablas, archivos, XML, etc.

Salidas pueden ser tablas, archivos, servicios web, etc. Puede tener lgica de excepcin que genera archivos malos, usa remediacin inteligente o genera fallas programticas, dependiendo del diseo. Genera estadsticas de auditora atmicas (e.g. registros ledos, escritos, etc.) Tarea Un proceso de coordinacin a travs de una o ms transformaciones Generalmente es pautada para ejecutase en un horario determinado Introduce lgica de procesos como ramas, paralelismo, etc. Generalmente permite la notificacin automatizada de notificacin de resultados por correo, alertas, etc. Rastrea corridas de ejecucin a travs de un rastro de auditora DISEAR ETL. Los pasos analticos requeridos antes de desarrollar cdigo ETL incluyen: Entender los requerimientos del negocio para determinar los requerimientos de datos dentro del alcance Analizar disponibilidad, calidad e interdependencias de los datos fuentes Perfiles de datos Anlisis de calidad de datos Anlisis de dependencia de datos Disear base de datos destino Documentar mapeos origen a destino Hay mucha iteracin en este proceso COMPONENETES DE KETTLE Spoon Es una herramienta grfica orientada al usuario final que permite modelar transformaciones y tareas. Las transformaciones modelan el flujo de datos desde su entrada, a travs de sus transformaciones y finalmente su salida. Una tarea esta compuesta de entradas de tarea como transformaciones, descargas de FTP, etc. que son colocados en un flujo de control. Pan Es una herramienta de lnea de comando que ejecuta transformaciones modeladas con Spoon. Kitchen Es una herramienta de lnea de comando para ejecutar tareas creadas con Chef. TRANSFORMACIONES: Las transformaciones son una serie de tareas lgicas organizadas en una secuencia: Leer archivo plano Filtrarlo Ordenarlo Cargarlo a MySQL

SALTOS. Un salto es una conexin entre pasos Permite a la metadata del esquema ser pasado de paso a paso Saltos determinan el flujo de datos a travs de pasos Cuando un paso manda salidas a ms de un salto, los datos pueden ser copiado a cada salto o distribuido entre ellos

REPOSITORIO. Kettle puede guardar su metadata en un archivo XML o en un repositorio de base de datos Objetos almacenados en el repositorio incluyen conexiones, transformaciones, tareas, esquemas y definiciones de usuarios y perfiles VISTA LOG. Muestra las estadsticas asociadas con la ejecucin de una transformacin Se usa para entender el rendimiento y revisar los resultados de una tarea Puede ser muy granular hasta el nivel de fila si es necesario

PASOS CUBIERTOS Pasos de Entrada Entrada de archivo de texto Entrada de Tabla Entrada de Excel Entrada de Xbase Generar Filas Obtener Informacin del Sistema

Pasos de Salida Salida de Archivo de Texto Salida de Tabla Insertar / Actualizar Actualizar Borrar Salida XML Pasos Especiales de Dimensiones Actualizacin/Consulta de Dimensin Combinacin de Actualizacin/Consulta Entrada de Archivo de Texto

Lee una gran cantidad de distintos archivos de texto, incluyendo archivos CSV generados por hojas de clculo, etc. Las opciones provistas por la interfaz de Kettle para aceptar entradas de archivos de texto incluyen: Opciones de especificacin de nombre de archivo- un archivo puede ser agregado a una lista de archivos seleccionados. Aceptar nombre de archivos de un paso previo- el nombre de archivo puede venir de cualquier fuente, como un archivo de texto, tabla de base de dato, etc. Espeficacin de Contenido- le permite al usuario especificar el formato de los archivos que

se estn leyendo. Manejo de Errores- le permite al usuario definir como reaccionar cuando se encuentra un error. Filtros- le permite al usuario especificar las lneas que debern ser saltadas en el archivo de texto. Campos- le permite al usuario definir las caractersticas de los campos. Formatos- incluye formatos para nmeros y fechas. Entrada de Tabla Lee informacin de una base de datos, usando una conexin y SQL. Las opciones provistas por la interfaz de Kettle para aceptar entradas de tabla incluyen: Nombre de Paso- Este nombre debe ser nico para una transformacin. Conexin- La conexin de base de datos de la cual se debe leer los datos SQL- La sentencia usada para leer la informacin de la conexin de la base de datos. (i.e. tabla no es un trmino correcto, es el conjunto de resultados de cualquier

sentencia SQL que es usada como una entrada) Insertar datos de un pasoEspecificar el nombre del paso de entrada del cual vienen los parmetros para el SQL, si aplica. Lmite- Fija el nmero de lneas que son ledas de la base de datos. Entrada de Excel Lee informacin de uno o ms archivos de Excel. Las opciones provistas por la interfaz de Kettle para aceptar entradas de Excel incluyen: Nombre del paso- Nombre del paso. Tab de Archivo- Para definir los nombres de archivos, con soporte de variables. Tab de Hojas- Para definir las hojas a importar. Tab de Campos- Para especificar los campos que deben ser ledos de los archivos de Excel. Tab de Manejo de Errorespermite al usuario definir como reaccionar cuando un error es encontrado. Tab de Contenido- Incluye las

sub-opciones de Cabecera, Sin Filas Vacas, Detener al Encontrar Filas Vacas, Nombre de Campo, Campo Nombre de Hoja, Nmero de Fila y Lmite. Entrada XBase Lee datos de la mayora de los archivos DBF derivados, denominados la familia XBase. (dBase III/IV, Foxpro, Clipper, ...) Las opciones provistas por la interfaz de Kettle para aceptar entradas de XBase incluye: Nombre de paso- Nombre del paso. Este nombre debe ser nico en una transformacin. Nombre de Archivo- Con soporte de variables. Lmite de tamao- Solo leer esta cantidad de filas, 0 significa: sin lmite. Agregar nmero de fila?- Esta opcin agrega un campo a la salida con el nombre especificado que contiene el nmero de fila. Produce una cantidad de filas, por defecto vacas, pero con la opcin de contener una cantidad de campos estticos.

Generar Filas

Las opciones provistas por la interfaz de Kettle para generar filas incluye: Nombre del paso Nombre del paso. Debe ser nico en una transformacin. Lmite- La cantidad de filas que un usuario quiere producir. Campos- Campos estticos que un usuario querr incluir en las filas de salida. Obtener informacin del sistema Obtiene informacin del ambiente de Kettle. Las opciones provistas por la interfaz de Kettle para este tipo de dato de entrada incluye: Nombre del Nombre del paso. Debe ser nico en una transformacin. Campos- Los campos de salida. Tipos de Informacin del Sistema: Informacin de Hora y Fecha Metadata en tiempo de ejecucin de la transformacin Argumentos de lnea de comando Exporta datos a distintos formatos de archivo de texto, incluyendo CVS

Salida de archivos de texto

Las opciones provistas por la interfaz de Kettle para generar salidas de archivos de texto, adems de aquellas provistas por aceptar entradas de archivos de texto son: Nombre del paso Extensin Adjuntar Separador Lmite de alcance (enclosure) Cabecera/ Pie de Pgina Comprimido Incluir nmero / fecha/ hora de paso en el nombre de archivo Codificar Rellenar campos a la derecha Separar cada n filas Salida de tabla Inserta informacin en una tabla de una base de datos. Las opciones provistas por la interfaz de Kettle para generar salidas de tablas, adems de aquellos provistos para aceptar entradas de tablas son: Tabla destino Tamao de commit Truncar tabla Ignorar errores de insercin Particionar datos sobre tablas Usar actualizaciones en lote para inserciones

Retornar clave auto-generada Nombrar campo clave auto-generado Es el nombre de la tabla definida en un campo Automatiza el procesamiento de unin: Consulta una fila usando una o ms claves de consulta. Si una fila no es encontrada, insertar nueva fila. Si se encontr y los campos son idnticos, no se hace nada Si encontrado y los campos no son idnticos, actualizar la fila. Las opciones provistas por la interfaz de Kettle para las salidas de insertar/actualizar incluyen: Nombre del paso Conexin Tabla destino Tamao commit Claves Campos para actualizacin No realizar actualizacin (Si es usado, opera como una Salida de Tabla, pero sin Insertar errores causados por claves duplicadas)

Insertar/Actualizar

Actualizar

Igual que el paso Insertar / Actualizar, excepto que no se hace una insercin a la tabla de base de datos. Solo se llevan a cabo actualizaciones. Igual que el paso de actualizacin, salvo que en vez de actualizar, las filas se borran. Le permite al usuario escribir filas de una fuente a uno o ms archivos XML. Las opciones que provee la interfaz grfica de Kettle para generar salidas XML incluyen: Nombre del paso Nombre del Archivo Extensin Incluir nmero de paso en nombre de archivo Incluir fecha en nombre de archivo Incluir hora en nombre de archivo Separar cada filas Elemento XML padre Elemento XML fila Campos Comprimido Codificacin

Borrar

Salida XML

Consulta/Actualizacin de Dimensin

Implementa dimensiones que cambian lentamente en el tiempo: Tipo I y Tipo II Puede ser usado para actualizar una tabla dimensin y para buscar valores en una dimensin. (Consulta, si no es encontrado, entonces actualizar/insertar) En la implementacin de dimensin cada entrada en la tabla de dimensin tiene los siguientes campos: Clave tcnica- Esta es la clave primaria (sustituta) de la dimensin. Campo de versin- Muestra la versin de la entrada de dimensin (un nmero para revisiones). Rango de fecha inicial- Este es el nombre del campo que contiene la fecha de comienzo de validez. Rango de fecha final- Este es el nombre del campo que contiene la fecha de terminacin de validez. Claves- Estas son las claves usadas en los sistemas fuentes, como el nmero de cliente, identificador de producto, etc. Estos son usados para funcionalidades

de consulta Campos- Estos campos contienen la informacin real de una dimensin y pueden ser configuradas individualmente para actualizar todas las versiones o para agregar una nueva versin cuando un nuevo valor aparece. Combinacin Actualizacin/Consulta Permite a los usuarios almacenar informacin en una tabla dimensin basura. Una tabla de dimensin que est compuesta de una o ms combinaciones de atributos de dimensin simples, en la cual cada combinacin es una clave distinta La accin de este paso se puede explicar de la siguiente manera: Consulta de combinacin de clave de negocio clave 1,, clave n de flujo de entrada en una tabla dimensin; Si esta combinacin de claves de negocio existe, entonces retornar su clave tcnica (id sustituto); Si esta combinacin de claves de negocio no existe todava,

insertar una fila con los nuevos campos claves y retornar su clave tcnica; Colocar todos los campos de entrada en el flujo de salida incluyendo la clave tcnica retornada, pero remover todos los campos claves de negocio si remover campos de consulta es verdadero. Este paso solo mantendr la informacin clave, la informacin no clave en la dimensin deber ser actualizada por separado.

Construir Cargas Simples Objetivo: Crear transformaciones para cargar el las tablas dimensin Tipo Viaje y Terminal Tareas: Correr Spoon Desarrollar mapeo de Tipo Viaje, ejecutar/probar, confirmar carga apropiada de datos Definir tabla de entrada y consulta Obtener informacin del sistema y obtener la fecha/hora actual Definir el paso Consulta/Actualizacin de Dimensin, usando la fecha/hora actual como el campo fecha en el flujo Desarrollar mapeo Terminal, ejecutar/probar, confirmar carga apropiada de datos Definir tabla de entrada y consulta Obtener informacin del sistema y obtener la fecha/hora actual Definir el paso Consulta/Actualizacin de Dimensin, usando la fecha/hora actual como el campo fecha en el flujo.

Solucin a lo requerido anteriormente Terminal

Tipo de viaje

CONSULTAS. La caracterstica de Consulta que provee Kettle accede una fuente de datos para encontrar valores segn un criterio predefinido, i.e. clave. Hay 6 pasos con funcionalidad de bsqueda en Kettle Bsqueda en Base de Datos Emite una consulta a una base de datos (SQL) a una tabla para obtener atributos usando una consulta basada en clave Bsqueda en Flujo Obtiene valores de un flujo de datos en memoria en una transformacin Unin de Base de Datos (join) Emite una consulta desarollada de base de datos usando valores de un flujo como un parmetro Llamada a Procedimiento de Base de Datos Emite una llamada a un procedimiento de base de datos Actualizacin/Consulta de Dimensin Discutida previamente Combinacin de Actualizacin/Consulta Discutida previamente Bsqueda en Base de Datos Consulta de atributos de una tabla basado en un criterio de bsqueda por claves Las opciones provistas por la interfaz de Kettle para llevar a cabo una consulta de base de datos incluye: Nombre del paso- Nombre del paso. Debe ser nico dentro de una transformacin. Conexin- La conexin a la base de datos usada para consultar los datos. Tabla de consulta- El nombre de la tabla en la cual la consulta se lleva a cabo. Habilitar cach- Esta opcin almacena consultas de base de datos en cach mientras corre la transformacin. Habilitar esta opcin puede incrementar rendimiento Peligro: si otros procesos estn cambiando valores en la tabla, no habilitar esta opcin.

Bsqueda en flujo

Permite a los usuarios hacer consultas usando informacin que viene de otros pasos en la transformacin. Los datos que vienen del Paso Fuente se lee a memoria (cach) y luego es usada para consultar los datos para cada registro en el flujo principal. Opciones provistas por la interfaz de Kettle para llevar a cabo una consulta de flujo incluye: Nombre del paso- Nombre del paso. Debe ser nico dentro de una transformacin. Paso fuente- El paso a partir del cual se obtiene los datos de consulta que residen en memoria Claves para valores de consultaPermite al usuario especificar los nombres de los campos que son usados para consultar los valores. Los valores son siempre buscados usando la comparacin de igualdad. Campos a retornar- El usuario puede especificar los nombres de los campos a retornar, as como el valor por defecto en caso de que no haya sido encontrado o un nombre de campo nuevo en caso que el usuario desee cambiar el nombre del campo de flujo de salida.

EJEMPLO: La siguiente transformacin agrega informacin proveniente de un archivo de texto a informacin que viene de una base de datos:

B es el paso fuente. Es el lugar en el cual el flujo de consulta en memoria reside. Obtener campos (Get fields): Automticamente llena los nombres de todos los campos disponibles del flujo principal. (A de la diapositiva anterior) El usuario puede eliminar los campos no usados en la consulta. Obtener campos de consulta (Get lookup fields): Automticamente inserta los nombres de todos los campos disponibles en el flujo de consulta. (B de la diapositiva anterior) El usuario puede borrar los campos que no van a ser retornados. Union de Base de Datos Opciones provistas por la interfaz de Kettle para un procedimiento de join de base de datos incluye: Nombre del paso- Nombre del paso. Debe ser nico dentro de una transformacin.

SQL- La consulta SQL a emitir a la base de datos. Nmero de filas a retornar- 0 significa todas, cualquier otro nmero limita el nmero de filas. Join Externo? (Outer join?)- Cuando habilitada, siempre retornar un registro para cada registro del flujo de entrada, aun si el query no retorn un resultado. La conexin de base de datos a ser usada. Los parmetros a usar en la consulta Un parmetro es denotado como ? en el query Orden de los campos en la lista de parmetros debe coincidir con el orden de los ? en la consulta Llamada a Procedimiento de Base de Datos Ejecuta un procedimiento (o funcin) de base de datos y obtiene los resultados retornados. Opciones provistas por la interfaz de Kettle para llamar a un procedimiento de base de datos incluye: Nombre del paso- Nombre del paso. Debe ser nico dentro de una transformacin. Conexin- Nombre de la conexin de base de datos en la cual el procedimiento reside. Nombre del Procedimiento (Proc-

name)- Nombre del procedimiento o funcin a llamar. Habilitar auto-commit- Esto puede ser usado para llevar a cabo actualizaciones en la base de datos usando un procedimiento especificado. El usuario puede confirmar los cambios usando autocommit o deshabilitando esto. Si auto-commit es deshabilitado, se hace un solo commit despus que la ltima fila es recibida por este paso. Nombre de resultado- Nombre del resultado en la llamada de funcin; no es aplicable para procedimientos. Tipo de resultado- Tipo de resultado de funcin a llamar. No usado en caso de un procedimiento. Parmetros- Lista de parmetros que el procedimiento o funcin necesita: Nombre de campo- Nombre del campo. Direccin- Puede ser IN (solo entrada), OUT (solo salida), INOUT (valor es cambiado en la base de datos). Tipo- Usado para salida de parmetros de forma tal que Kettle sabe que regresa. Otros botones disponibles en este paso son: Botn Find it... Busca en la conexin especificada por

procedimientos y funciones disponibles. Botn Get fields Llena todos los campos en los flujos de entrada para hacer el procedimiento ms fcil borrando las lneas que no son necesarias y reordenando aquellas que s lo son.

Transformaciones de Campos (Parte 1) Transformaciones de campos son pasos que operan a nivel de campo dentro de un registro de flujo Los pasos incluidos en esta seccin son: Seleccionar Valores (Select Values) Calculadora (Calculator) Agregar Constantes (Add Constants) Nulo Si (Null If) Seleccionar Valores Este tipo de paso es usado para Seleccionar/remover campos del flujo del proceso Renombrar campos Especificar/cambiar la longitud y/o precisin de campos Se proveen 3 tabs: Seleccionar y Alterar: Especificar el orden exacto y nombre en el cual los campos deben ser colocados en las filas de salida. Remover: Especifica los campos que

tienen que ser removidos de las filas de salida. Meta-data: Cambiar el nombre, tipo, longitud y precisin (la meta-data) de uno o ms campos. Opciones provistas en este paso: Nombre del paso- Nombre del paso. Debe ser nico dentro de una transformacin. Atributos que pueden ser cambiados para un campo dado: Nombre de campo: El nombre de campo a seleccionar o cambiar Renombrar a: Dejar en blanco si renombramiento no es requerido. Longitud: Debe introducirse un nmero para especificar la longitud. (-1: ninguna longitud especificada) Precisin: Debe introducirse un nmero para especificar la precisin. (-1: ninguna precisin especificada) Calculadora Provee una lista de funciones que pueden ser ejecutadas sobre valores de campos. Una importante ventaja de la Calculadora sobre JavaScript personalizado es que la velocidad de ejecucin es mayor. La lista de funciones soportadas por la

calculadora incluye funciones matemticas y de fecha comnmente usadas. Adems de los argumentos (Campo A, Campo B y Campo C) el usuario tambin debe especificar el tipo de retorno de la funcin. Tambin se puede remover el campo del resultado (salida) despus que todos los valores hayan sido calculados. Esto es til para remover valores temporales. Agregar constantes Agregar constantes a un flujo Su uso es muy simple: Especificar el nombre Introducir el valor en forma de un string Especificar los formatos para convertir el valor en el tipo de dato escogido. Si la representacin en string de un campo es igual al valor especificado, entonces el valor de salida es puesto en nulo (vaco).

Nulo si

Construir una Transformacin de Consulta Objetivo: Crear una transformacin para cargar la tabla dimensin Remolque Tareas: Definir el paso de Entrada de Tabla, confirmar SQL Definir paso de Entrada de Excel para Limpieza Designacin de Remolque Trailer Make Crear una bsqueda en flujo para Designaciones de Remolques corregidas Introducir clculo para reemplazar designaciones de remolques que son nulos con UNKNOWN Crear un string constante VanType (Tipo Camioneta) para bsqueda denominada VanType

Crear una bsqueda en Base de Datos para obtener la descripcin del tipo de camioneta Configurar una Consulta/Actualizacin de Dimensin para cargar la tabla destino.

Solucin a lo requerido anteriormente.

Transformaciones en Conjunto Son pasos que operan sobre un conjunto entero de datos dentro de un flujo Las operaciones operan a travs de todas las filas; no necesariamente es limitado a una fila Los pasos cubiertos en esta seccin son: Filtrar Filas Ordenar Filas Unir Filas Fusionar Filas Filas nicas Filas Agregadas Agrupar por Filtrar filas

Filtrar filas basndose en condiciones y comparaciones, con soporte completo de lgica booleana Salida puede ser dirigida a dos flujos: registros que pasan la condicin (verdadero) y registros que evalan la condicin (falso) Generalmente usados para Identificar excepciones que deben ser escritas a un archivo malo Lgica de transformacin de ramificacin si una nica fuente tiene dos interpretaciones Las opciones provistas para este paso son: Nombre del paso- Nombre del paso. Debe ser nico dentro de una transformacin

Enviar datos verdaderos a paso El paso que recibe los datos que pasan la condicin Enviar datos falsos a paso El paso que recibe los datos que fallan la condicin Ordenar filas Ordenar filas basndose en filas especficas, incluyendo sub ordenamientos, en orden ascendiente o descendiente Las opciones de este paso son: Nombre del paso- Nombre del paso. Debe ser nico dentro de una transformacin. Una lista de campos y si deberan o no ser ordenados. Directorio de ordenamientoEste es el directorio en el cual los archivos temporales son almacenados cuando son necesarios. El directorio por defecto es el directorio estndar temporal para el sistema. Tamao de almacenamientoMientras ms filas se puedan almacenar en memoria, ms rpido es el ordenamiento. Eliminar la necesidad de archivos temporales reduce

E/S a disco. El prefijo de archivo TMPEscoger un prefijo reconocible para identificar los archivos cuando aparecen en el directorio temporal. Unir filas Produce combinaciones de todas las filas en los flujos de entrada. Las opciones provistas por Kettle en este paso son: Nombre del paso- Nombre del paso. Debe ser nico dentro de una transformacin. Paso principal del cual leerEspecifica el paso del cual leer la mayora de los datos. Este paso no es cacheado, los otros s. La condicin- El usuario puede introducir una condicin compleja para limitar el nmero de filas de salida. Si es vaco, el resultado es un producto cartesiano. Directorio temporalEspecifica el nombre del directorio en el cual el sistema almacena archivos temporales. Prefijo de archivos

temporales- Este es el prefijo de los archivos temporales que se generarn. Tamao max. cach- El nmero de filas a cachear antes que el sistema lea los datos de los archivos temporales. Fusionar filas Compara y fusiona dos flujos de datos Flujo de Referencia Flujo de Comparacin Generalmente usado para identificar deltas en los datos fuentes cuando no hay marcas de tiempo Flujo de Referencia = Datos previamente cargados Flujo de Comparacin = Los datos nuevos extrados de una fuente Nota de uso: Asegurar que los flujos estn ordenados por los campos claves de comparacin La fila de salida es marcada de la siguiente manera: idntico (identical) : La clave fue encontrada en ambos flujos y los valores a comparar son idnticos. cambiado (changed) : La clave fue encontrada en ambos flujos pero uno o ms

valores son distintos. nuevo (new) : La clave no fue encontrada en el flujo de referencia. borrado (deleted) : La clave no fue encontrada en el flujo de comparacin. Filas nicas Remueve duplicados del flujo de entrada Nota de Uso: Solo registros consecutivos sern comparados para buscar duplicados, por lo tanto el flujo debe ser ordenado por los campos de comparacin Las opciones provistas por Kettle en este paso son : Nombre del paso- Nombre del paso. Debe ser nico dentro de una transformacin. Agregar contador a salida?Habilitar esto para saber cuantas filas duplicadas hay para cada registro de salida. Campos contadores- Nombre del campo numrico que contiene el nombre de filas duplicadas por cada registro de salida Nombres de Campos- Una lista de nombres de campos

en los cuales su unicidad es comparado. Los datos en los otros campos de la fila son ignorados. Bandera de Ignorar Maysculas/MinsculasPermite bsquedas no sensibles a maysculas/minsculas. Agrupar por Calcula valores agregados sobre un grupo de campos definidos. Opera similar a la clusula group by de SQL Las opciones provistas por Kettle en este paso son: Nombre del paso- Nombre del paso. Debe ser nico dentro de una transformacin. Campos de agrupacinEspecificar los campos a ser agrupados. Agregados- Especificar los campos que deben ser agregados, el mtodo (suma, mnimo, mximo, etc.) y el nombre del nuevo campo resultante. Incluir todas las filas- Si habilitado, la salida incluye tanto nuevos registros

agregados como registros originales en detalle. Se debe especificar el nombre del campo de salida que ser creado y una bandera que indica si la fila es agregada o un registro de detalle.

Transformaciones de Conjunto (TAREA). Objetivo: Cargar la tabla dimensin Cliente usando transformaciones de conjunto Tareas : Definir paso de Entrada de Tabla, confirmar SQL Filtrar clientes entre aquellos que tienen cdigo postal y los que no Para los que no, hacer lo siguiente Ordenar los registros por ciudad, estado Definir una Entrada de Archivo y Bsqueda en Flujo para coincidir ciudad/estado con aquellos en el archivo de consulta ordenado Usar Seleccionar Valores para reemplazar el campo cdigo postal vaco con el valor de cdigo postal en la consulta Unir los flujos y bscar el Nombre de la Regin de Cliente Usar un clculo para definir el cdigo postal centroId a ser el cdigo postal regular si el cdigo postal centroId es nulo Cargar/Actualizar la tabla dimensin

You might also like