23
Pentaho Kettle Step ` Angel ` Alvarez Serra 18 Abril 2009 ` Angel ` Alvarez Serra Pentaho Kettle Step

Migración de datos con OpenERP-Kettle

Embed Size (px)

DESCRIPTION

II Jornadas de OpenERPhttp://jornadas.openerpspain.com

Citation preview

Page 1: Migración de datos con OpenERP-Kettle

Pentaho Kettle Step

Angel Alvarez Serra

18 Abril 2009

Angel Alvarez Serra Pentaho Kettle Step

Page 2: Migración de datos con OpenERP-Kettle

Introduccion a ETL.

Introduccion a Kettle.

Transformaciones.Trabajos.

OpenErp Kettle Step

Instalacion.Como Utilizarlo.

Angel Alvarez Serra Pentaho Kettle Step

Page 3: Migración de datos con OpenERP-Kettle

Introduccion a ETL

Herramienta para la obtencion, transformacion y volcado de datos deorigenes 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 calculos, unir tablas, descartar datos, cambiartipos, lanzar procesos de la base de datos ...

Volcar datos Volcar a ficheros, base de datos, ficheros remotos...

Angel Alvarez Serra Pentaho Kettle Step

Page 4: Migración de datos con OpenERP-Kettle

Utilidades

Hacer traspasos de datos completos ante la implantacion de unnuevo sistema.

Hacer volcados de informacion automatizados hacia elDataWareHouse.

Importar datos de ficheros externos, ( ficheros batch de sistemasmobiles, noticias economicas de ficheros rss...

Limpieza de datos del sistema actual aplicando complejascondiciones de borrado.

Angel Alvarez Serra Pentaho Kettle Step

Page 5: Migración de datos con OpenERP-Kettle

Otros ETL

En el mercado existen varios sistemas ETL, tanto comerciales comoopensource. Requisitos a valorar a la hora de escoger un ETL.

Facilidad de uso.

Actividad del proyecto.

Numero de transformaciones disponibles y opciones de configuracionde estas.

Facilidad a la hora de implementar una nueva Transforamcion.

Integracion con un sistema de Bussiness Intelligent completo.

Angel Alvarez Serra Pentaho Kettle Step

Page 6: Migración de datos con OpenERP-Kettle

Costes del Trabajo con datos

El manejo de datos es costoso, en la implantacion, importacion iexportacion, en tiempo, recursos y dinero.

La Finalidad de los ETL es el augmento de productividad para el tratocon todo tipo de informacion.

Atacar cada caso enparticular.

Desarrollar un ETL propio.

ETL comercial.

ETL opensource.

Angel Alvarez Serra Pentaho Kettle Step

Page 7: Migración de datos con OpenERP-Kettle

Introuduccion a Kettle

Transformaciones Entidad basica de trabajo, define la obtencion, latransfomacion, el volcado o qualquier combinacion deestas.

Trabajos Conjunto de transformaciones, permite el control deestados, marca el inicio , final , comunica si el proceso atenido exito o no...

Angel Alvarez Serra Pentaho Kettle Step

Page 8: Migración de datos con OpenERP-Kettle

Pasos (Step) Entidad basica de la transformacion. Accion a realizar.

Saltos (Hops) Define el paso entre diferentes pasos, posibilidad deparalelizar la accion, copiar datos a diferentes pasos...

Angel Alvarez Serra Pentaho Kettle Step

Page 9: Migración de datos con OpenERP-Kettle

Introuduccion a Kettle

Interfıcie Grafica

Repositorio Almacen y organizacion de todas lastransformaciones.

Vista Control de todas los ’pasos’ de la transformacionDiseno Anadir y editar nuevos pasos a la transformacion

Panel de ejcucion Controla tiempo, numero de filas escritas y leidaspor paso, analisis de impacto en la base de datos,herramientas de depuracion...

Linea de comandosPemite la ejecucion batch de los trabajos y transformaciones , yaesten en fichero como el repositorio. Permite la automatizacion deprocesos.

Angel Alvarez Serra Pentaho Kettle Step

Page 10: Migración de datos con OpenERP-Kettle

Transformaciones

Entradas Obtencion de datos,desde ficheros, base de datos,sistema...

Salidas Anadir, actualizar o eliminar datos de la base de datos,ficheros, hojas de calculo...

Busqueda Buscar valores en tablas, ficheros, llamadas aprocedimientos, webservices...

Tranformaciones Aplicar funciones al estilo sql (Sort,Group By),xml,calculos...

Uniones Unir registros de diferentes transformaciones, productocartesiano, inner, left , right join...

Angel Alvarez Serra Pentaho Kettle Step

Page 11: Migración de datos con OpenERP-Kettle

Transformaciones (continuacion)

Scripting Facilidades de scripting en lenguajes Sql, Javascript yexpresiones regulares.

Data WareHouse Buscar o actualizar datos a nivel de dimensiones.

Trabajos Acciones para la comunicacion con estos, obtener y asignarvariables, devolver el resultado de la transformacion...

Inline Lectura y escritura de registros a nivel socket.

Datos Masivos Optimizaciones para trabajar con grandes cantidades dedatos, por ahora solo oracle.

Experimental Transformaciones no del todo probadas, Datos Masivospara diferentes origenes.

Angel Alvarez Serra Pentaho Kettle Step

Page 12: Migración de datos con OpenERP-Kettle

Trabajos

General Controla el flujo del trabajo, llamadas a mas trabajos otransformaciones, generar log, finalizar la ejecucion...

Mail Obtener Mails de cuentas pop para procesar-los, y enviaremails.

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 condicion.

Scripting Shell, Sql, Javascript

Xml Validador XML, XSL, XSD, transformacion XSL

Volcados Masivos Importar y Exportar grandes cantidades de datos dediferentes base de datos.

Angel Alvarez Serra Pentaho Kettle Step

Page 13: Migración de datos con OpenERP-Kettle

Lınea de comandos

Ofrece la posibilidad de ejecutar las diferentes transforamciones ytrabajos por lineas de comandos.

Posibilidad de integrar con scripts.

Automatizacion.

Posibilidad de ejecutar elementos guardados en el Repositorio.

Ejecutar un trabajokitchen.bat /rep:’Production Repository’

/job:’Update dimensions’/dir:/Dimensions/user:NaN/pass:somepassword/level:Basic

Ejecutar una Transformacionpan.bat /rep:”Production Repository”

/trans:”update Customer Dimension”/dir:/Dimensions//user:NaN/pass:somepassword/level:Basic

Angel Alvarez Serra Pentaho Kettle Step

Page 14: Migración de datos con OpenERP-Kettle

Clustering

Paralelizacion de procesos para un gran volumen de datos de formasenzilla y rapida.

Figura: MasterFigura: 4 Esclavos en 4 pcs diferentes

Angel Alvarez Serra Pentaho Kettle Step

Page 15: Migración de datos con OpenERP-Kettle

Ejecucion y Log

Angel Alvarez Serra Pentaho Kettle Step

Page 16: Migración de datos con OpenERP-Kettle

Depuracion

Angel Alvarez Serra Pentaho Kettle Step

Page 17: Migración de datos con OpenERP-Kettle

Introduccion

Es un plugin para Kettle para volcar datos a OpenErp, facilitando elmapeo de datos.

Necesidad deintroducir datos deforma consistente enOpenErp.

Marca los camposobligatorios

Facil introduccion delos camposrelaciones.

Angel Alvarez Serra Pentaho Kettle Step

Page 18: Migración de datos con OpenERP-Kettle

Instalacion

Para la instalacion del plugin es necesario:

Descargar la version de kettle de http://kettle.pentaho.org/

Decargar el Plugintextbrbzr 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 ybuscamos el plugin en transformaciones/output.

Angel Alvarez Serra Pentaho Kettle Step

Page 19: Migración de datos con OpenERP-Kettle

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

Page 20: Migración de datos con OpenERP-Kettle

Obterner y Seleccionar los modelos.

Angel Alvarez Serra Pentaho Kettle Step

Page 21: Migración de datos con OpenERP-Kettle

Obterner los campos y assignar los valores.

Angel Alvarez Serra Pentaho Kettle Step

Page 22: Migración de datos con OpenERP-Kettle

Estado de OpenErp Kettle Step

Plugin en estado de desarrollo, con cosas pendientes pero totalmentefuncional. Se ha utilizado con exito en la migracion de aplicaciones aOpenErp.

Cosas Pendientes:

traduccion de los campos.

Campos seleccion de openerp.

Lavado de cara al dialogo.

Angel Alvarez Serra Pentaho Kettle Step

Page 23: Migración de datos con OpenERP-Kettle

Preguntas

Angel Alvarez Serra Pentaho Kettle Step