2011-11-18 29 views
13

Deseo realizar transacciones mientras escribo en DB en Talend, pero no sé cómo. Intenté varios componentes de la paleta, pero no pude lograrlo. Agradecería cualquier ayuda o incluso mejor cualquier tutorial relacionado con este tema.Transacciones en Talend

Gracias!

Respuesta

13

Talend admite la retrotracción de la transacción y el compromiso al escribir en la base de datos.

Tomemos Mysql por ejemplo: para usar tMysqlConnection para crear una conexión de base de datos al comienzo del trabajo y usar tMysqlCommit para confirmar el cambio y cerrar si el trabajo previo de subjobulación funciona bien, tMysqlRollback para deshacer el cambio si el trabajo de subjob anterior fallo, el trabajo sencillo se ve así:

tMysqlConnection_1 
    | 
onsubjobok 
    | 
tFileInputDelimited--main---tMysqlOutput 
    | 
onsubjobok---tMysqlCommit 
onsubjoberror---tMysqlRollback 

en tMysqlOutput, marque la opción using an existing connection

+1

Y recuerde desmarcar "Autocommit" en el componente tMysqlConnection (pestaña "Configuración avanzada"). –

2

Existen varios métodos de escritura de datos en una base de datos de Talend. Usted tiene la opción de usar un componente de conexión por separado (usar una conexión existente) o usar un built-in. Cuando utiliza un componente de conexión por separado, debe confirmar su transacción explícitamente utilizando un componente tMSSqlCommit (o un componente similar para otro tipo de base de datos). Si usa un built-in, la transacción se confirma automáticamente sin un componente tMSSqlCommit (o un componente similar para otro tipo de base de datos).

He preparado un tutorial más detallado para usted, pero necesito puntos de reputación para publicar imágenes. Trataré de llevarlos al servidor de archivos para poder enlazarlos y publicar la respuesta más detallada.