Migración de datos con OpenERP-Kettle

7,942 views
7,703 views

Published on

II Jornadas de OpenERP
http://jornadas.openerpspain.com

Published in: Technology
1 Comment
2 Likes
Statistics
Notes
No Downloads
Views
Total views
7,942
On SlideShare
0
From Embeds
0
Number of Embeds
592
Actions
Shares
0
Downloads
284
Comments
1
Likes
2
Embeds 0
No embeds

No notes for slide

Migración de datos con OpenERP-Kettle

  1. 1. Pentaho Kettle Step ` ` Angel Alvarez Serra 18 Abril 2009 ` ` Angel Alvarez Serra Pentaho Kettle Step
  2. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 15. Ejecuci´n y Log o ` ` Angel Alvarez Serra Pentaho Kettle Step
  16. 16. Depuraci´n o ` ` Angel Alvarez Serra Pentaho Kettle Step
  17. 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. 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. 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
  20. 20. Obterner y Seleccionar los modelos. ` ` Angel Alvarez Serra Pentaho Kettle Step
  21. 21. Obterner los campos y assignar los valores. ` ` Angel Alvarez Serra Pentaho Kettle Step
  22. 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
  23. 23. Preguntas ` ` Angel Alvarez Serra Pentaho Kettle Step

×