Este documento introduce Pentaho Kettle, una herramienta ETL. Explica conceptos como transformaciones, pasos y trabajos. También cubre la instalación y uso del plugin OpenErp Kettle Step, el cual permite volcar datos a OpenERP de forma sencilla. Finalmente, proporciona detalles sobre características como clustering, ejecución y depuración.
2. Introducci´n a ETL.
o
Introducci´n a Kettle.
o
Transformaciones.
Trabajos.
OpenErp Kettle Step
Instalaci´n.
o
Como Utilizarlo.
` `
Angel Alvarez Serra Pentaho Kettle Step
3. Introducci´n a ETL
o
Herramienta para la obtenci´n, transformaci´n y volcado de datos de
o o
origenes y destinos diferentes
Extraer datos de varias fuentes Diversos tipos de base de datos, oracles,
access... ficheros de texto ( csv, longitud fija, xml ),
origenes rss, ficheros remotos...
Transformar Datos Hacer c´lculos, unir tablas, descartar datos, cambiar
a
tipos, lanzar procesos de la base de datos ...
Volcar datos Volcar a ficheros, base de datos, ficheros remotos...
` `
Angel Alvarez Serra Pentaho Kettle Step
4. Utilidades
Hacer traspasos de datos completos ante la implantaci´n de un
o
nuevo sistema.
Hacer volcados de informaci´n automatizados hacia el
o
DataWareHouse.
Importar datos de ficheros externos, ( ficheros batch de sistemas
m´biles, noticias econ´micas de ficheros rss...
o o
Limpieza de datos del sistema actual aplicando complejas
condiciones de borrado.
` `
Angel Alvarez Serra Pentaho Kettle Step
5. Otros ETL
En el mercado existen varios sistemas ETL, tanto comerciales como
opensource. Requisitos a valorar a la hora de escoger un ETL.
Facilidad de uso.
Actividad del proyecto.
N´mero de transformaciones disponibles y opciones de configuraci´n
u o
de estas.
Facilidad a la hora de implementar una nueva Transforamci´n.
o
Integraci´n con un sistema de Bussiness Intelligent completo.
o
` `
Angel Alvarez Serra Pentaho Kettle Step
6. Costes del Trabajo con datos
El manejo de datos es costoso, en la implantaci´n, importaci´n i
o o
exportaci´n, en tiempo, recursos y dinero.
o
La Finalidad de los ETL es el augmento de productividad para el trato
con todo tipo de informaci´n.
o
Atacar cada caso en
particular.
Desarrollar un ETL propio.
ETL comercial.
ETL opensource.
` `
Angel Alvarez Serra Pentaho Kettle Step
7. Introuducci´n a Kettle
o
Transformaciones Entidad b´sica de trabajo, define la obtenci´n, la
a o
transfomaci´n, el volcado o qualquier combinaci´n de
o o
estas.
Trabajos Conjunto de transformaciones, permite el control de
estados, marca el inicio , final , comunica si el proceso a
tenido ´xito o no...
e
` `
Angel Alvarez Serra Pentaho Kettle Step
8. Pasos (Step) Entidad b´sica de la transformaci´n. Acci´n a realizar.
a o o
Saltos (Hops) Define el paso entre diferentes pasos, posibilidad de
paralelizar la acci´n, copiar datos a diferentes pasos...
o
` `
Angel Alvarez Serra Pentaho Kettle Step
9. Introuducci´n a Kettle
o
Interf´ Gr´fica
ıcie a
Repositorio Almac´n y organizaci´n de todas las
e o
transformaciones.
Vista Control de todas los ’pasos’ de la transformaci´n
o
Dise˜o A˜adir y editar nuevos pasos a la transformaci´n
n n o
Panel de ejcuci´n Controla tiempo, n´mero de filas escritas y leidas
o u
por paso, an´lisis de impacto en la base de datos,
a
herramientas de depuraci´n...
o
Linea de comandos
Pemite la ejecuci´n batch de los trabajos y transformaciones , ya
o
est´n en fichero como el repositorio. Permite la automatizaci´n de
e o
procesos.
` `
Angel Alvarez Serra Pentaho Kettle Step
10. Transformaciones
Entradas Obtenci´n de datos,desde ficheros, base de datos,
o
sistema...
Salidas A˜adir, actualizar o eliminar datos de la base de datos,
n
ficheros, hojas de c´lculo...
a
B´squeda Buscar valores en tablas, ficheros, llamadas a
u
procedimientos, webservices...
Tranformaciones Aplicar funciones al estilo sql (Sort,Group By
),xml,c´lculos...
a
Uniones Unir registros de diferentes transformaciones, producto
cartesiano, inner, left , right join...
` `
Angel Alvarez Serra Pentaho Kettle Step
11. Transformaciones (continuaci´n)
o
Scripting Facilidades de scripting en lenguajes Sql, Javascript y
expresiones regulares.
Data WareHouse Buscar o actualizar datos a nivel de dimensiones.
Trabajos Acciones para la comunicaci´n con estos, obtener y asignar
o
variables, devolver el resultado de la transformaci´n...
o
Inline Lectura y escritura de registros a nivel socket.
Datos Masivos Optimizaci´nes para trabajar con grandes cantidades de
o
datos, por ahora solo oracle.
Experimental Transformaciones no del todo probadas, Datos Masivos
para diferentes origenes.
` `
Angel Alvarez Serra Pentaho Kettle Step
12. Trabajos
General Controla el flujo del trabajo, llamadas a mas trabajos o
transformaciones, generar log, finalizar la ejecuci´n...
o
Mail Obtener Mails de cuentas pop para procesar-los, y enviar
emails.
Gestor/Gestor Remoto de Ficheros Diferentes acciones de sistema,
crear, comparar, mover,zip, unzip, ftp, scp..
Condiciones Comprobar si existen ficheros y datos en la base de datos,
esperar a una cierta condici´n.
o
Scripting Shell, Sql, Javascript
Xml Validador XML, XSL, XSD, transformaci´n XSL
o
Volcados Masivos Importar y Exportar grandes cantidades de datos de
diferentes base de datos.
` `
Angel Alvarez Serra Pentaho Kettle Step
13. L´
ınea de comandos
Ofrece la posibilidad de ejecutar las diferentes transforamciones y
trabajos por lineas de comandos.
Posibilidad de integrar con scripts.
Automatizaci´n.
o
Posibilidad de ejecutar elementos guardados en el Repositorio.
Ejecutar un trabajo Ejecutar una Transformaci´n
o
kitchen.bat /rep:’Production Repository’ pan.bat /rep:”Production Repository”
/job:’Update dimensions’ /trans:”update Customer Dimension”
/dir:/Dimensions /dir:/Dimensions/
/user:NaN /user:NaN
/pass:somepassword /pass:somepassword
/level:Basic /level:Basic
` `
Angel Alvarez Serra Pentaho Kettle Step
14. Clustering
Paralelizaci´n de procesos para un gran volumen de datos de forma
o
senzilla y r´pida.
a
Figura: Master
Figura: 4 Esclavos en 4 pcs diferentes
` `
Angel Alvarez Serra Pentaho Kettle Step
15. Ejecuci´n y Log
o
` `
Angel Alvarez Serra Pentaho Kettle Step
17. Introducci´n
o
Es un plugin para Kettle para volcar datos a OpenErp, facilitando el
mapeo de datos.
Necesidad de
introducir datos de
forma consistente en
OpenErp.
Marca los campos
obligatorios
Facil introducci´n de
o
los campos
relaciones.
` `
Angel Alvarez Serra Pentaho Kettle Step
18. Instalaci´n
o
Para la instalaci´n del plugin es necesario:
o
Descargar la versi´n de kettle de http://kettle.pentaho.org/
o
Decargar el Plugin
textbrbzr branch lp:openerp-kettle
En la estructura de directorios del plugin:
distrib copiar a KETTLEDIR/plugins/steps
libext copiar las librerias a KETTLEDIR/libext
Finalmente ejecutamos KETTLEDIR/spoon.sh y
buscamos el plugin en transformaciones/output.
` `
Angel Alvarez Serra Pentaho Kettle Step
19. Como utilizarlo
Introducir la IP del servidor.
Introducir el usuario y la contrasenya.
Obtener y Seleccionar la Base de datos.
` `
Angel Alvarez Serra Pentaho Kettle Step
21. Obterner los campos y assignar los valores.
` `
Angel Alvarez Serra Pentaho Kettle Step
22. Estado de OpenErp Kettle Step
Plugin en estado de desarrollo, con cosas pendientes pero totalmente
funcional. Se ha utilizado con ´xito en la migraci´n de aplicaciones a
e o
OpenErp.
Cosas Pendientes:
traducci´n de los campos.
o
Campos selecci´n de openerp.
o
Lavado de cara al di´logo.
a
` `
Angel Alvarez Serra Pentaho Kettle Step