Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Kafkadb

6,124 views

Published on

Presentación de KafkaDB una herramienta para la migración de datos basada en Kettle.
Herramienta desarrollada por NaN·tic y presentada en las V jornadas de OpenERP en Donostia 2012.

Published in: Business
  • Be the first to comment

  • Be the first to like this

Kafkadb

  1. 1. KafkaDB NaN·tic ` ` Angel Alvarez Serra 31 de Mayo de 2012` `Angel Alvarez Serra — KafkaDB 1/16
  2. 2. ´ Indice Introducci´n o Objetivos B´squeda y Desarrollo. u Como Funciona Instalaci´n y Puesta en Marcha o Como Migrar un M´dulo. o Estado y P´gina del proyecto. a Preguntas y Contacto.` `Angel Alvarez Serra — KafkaDB 2/16
  3. 3. Introducci´n o La idea de KafkaDB Nace en el momento que OpenERP SA anunci´ que las herramientas de migraci´n no formar´ parte o o ıan del software libre y p´blico. u Herramienta para la migraci´n de datos. o Basada en Kettle Adaptaci´n Para OpenERP. o` `Angel Alvarez Serra — KafkaDB 3/16
  4. 4. Objetivos Modular y re-utilizable Rapidez Vers´til a F´cil de utilizar y Compartir. a` `Angel Alvarez Serra — KafkaDB 4/16
  5. 5. B´squeda y Desarrollo u C´mo nace KafkaDB. o Prueba de Concepto. Python y openetl ETL creado por OpenERP SA) https://launchpad.net/openetl Segundo Intento. Brewery. Tercer Intento. Buscar Opciones etl JAVA y XML como Scriptella. ´ Cuarto y Ultimo Intento. Kettle.` `Angel Alvarez Serra — KafkaDB 5/16
  6. 6. Como Funciona (Introducci´n) o KafkaDB Se basa en 2 peque˜as aplicaciones y los ficheros de n configuraci´n o kafkadb.py Ayuda a la generaci´n de ficheros de configuraci´n o o Ejecuta el proceso de migraci´n. o kafkadb.jar Lee los ficheros de configuraci´n. o Crea las transformaciones de volcado. Las ejecuta teniendo en cuenta las dependencias. Fichero de configuraci´n y Transformadas o` `Angel Alvarez Serra — KafkaDB 6/16
  7. 7. Como Funciona (Introducci´n 2) o Transformada Inicial (Abstract) Herencia. Deferred Contraints (Postgresql 9.1)` `Angel Alvarez Serra — KafkaDB 7/16
  8. 8. Como Funciona: (Kafkadb.py) Aplicaci´n de l´ o ıneas de comando que: Facilita la generaci´n de ficheros de configuraci´n o o Consulta de a que m´dulos pertenece una tabla o campo o Ejecuta el proceso de migraci´n. o` `Angel Alvarez Serra — KafkaDB 8/16
  9. 9. Como Funciona: Configuraci´n (1) o { ”res request”: { ” comment ” : ”CHECK 2012−04−21” , ” on ” : ” b o t h ” , ” target ” : [ ” state ” , ”priority” ], ” migrate ” : true , ” source ” : [ ”priority” , ” state ” ], ” depends ” : f a l s e , ” transformation ” : null , ” delete ” : true }, }` `Angel Alvarez Serra — KafkaDB 9/16
  10. 10. Como Funciona: Configuraci´n (2) o ”res partner address”: { ” comment ” : ”CHECK 2012−04−21” , ” on ” : ” b o t h ” , ” target ” : [ ” color ” , ” company id ” , ”title”, ” function ” , ” type ” ], ” migrate ” : true , ” source ” : [ ” function ” , ”title”, ” type ” ], ” depends ” : [ ” r e s p a r t n e r t i t l e ” , ” r e s c o u n t r y ” , ” r e s c o u n t r y s t a t e ” ] , ” transformation ” : [ ” model−k t r / v6 . 1 / b a s e / r e s p a r t n e r a d d r e s s . k t r ” ], ” delete ” : true },` `Angel Alvarez Serra — KafkaDB 10/16
  11. 11. Instalaci´n y Configuraci´n o o El proyecto est´ alojado en Bitbucket, simplemente a descargarse el repositorio. P´gina del proyecto:https://bitbucket.org/angelnan/kafkadb/ a Ficheros a configurar: config.py Base de datos (origen y destino) , directorio de transfomaciones ... .kettle/kettle.properties Variables de entorno de las transformaciones .kettle/shared.xml Configuraci´n de la base de datos de o las transformaciones` `Angel Alvarez Serra — KafkaDB 11/16
  12. 12. Migrar M´dulo: Producto o Migrar m´dulo producto, paso a paso. o Generar el fichero de migraci´n para el m´dulo Producto. o o ./kafkadb.py –migrate-module=product Creamos un directorio para el nuevo m´dulo. o Movemos el fichero de configuraci´n al directorio. o Seleccionar las tablas que queremos migrar. Hacemos las transformaciones necesarias.` `Angel Alvarez Serra — KafkaDB 12/16
  13. 13. Migrar M´dulo: Producto o Migrar m´dulo producto, paso a paso. o product pricelist product pricelist` `Angel Alvarez Serra — KafkaDB 13/16
  14. 14. Migrar M´dulo: Producto o Migrar m´dulo producto, paso a paso. o Generar el fichero de migraci´n. o ./kafkadb.py –make-config=migration.json Ejecutar la migraci´n o ./kafkadb.py –migrate=migration.json` `Angel Alvarez Serra — KafkaDB 14/16
  15. 15. KafkaDB: Hoja de Ruta Hacer parametrizable las diferentes opciones como base datos, directorios.. para facilitar la utilizaci´n del o framework. Tener solo un fichero de configuraci´n o Migrar los m´dulos restantes. o A˜adir en los ficheros de configuraci´n la posibilidad de n o renombrar campos y a˜adir constantes. n` `Angel Alvarez Serra — KafkaDB 15/16
  16. 16. Preguntas y cr´ ıticas ¡Muchas gracias por vuestra atenci´n! o NaN·tic ` ` Angel Alvarez i Serra angel@nan-tic.com @aasnan Esta obra est´ sujeta a la licencia Creative Commons a Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported License. Para ver una copia de esta licencia, visite creativecommons.org/licenses/by-nc-nd/3.0/ o envie una carta a Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.` `Angel Alvarez Serra — KafkaDB 16/16

×