Transformação de controle de transações na Informatica: comandos TCL

Índice:

Anonim

O que é Transaction Control Transformation?

O Controle de Transação é uma transformação ativa e conectada que nos permite confirmar ou reverter transações durante a execução do mapeamento. As operações de confirmação e reversão são de importância significativa, pois garantem a disponibilidade dos dados.

Ao processar um grande volume de dados, pode haver uma situação em que os dados sejam confirmados para o destino. Se um commit for executado com muita frequência, será uma sobrecarga para o sistema. Se uma confirmação for executada tarde demais, em caso de falha, há chances de perda de dados.

Portanto, para fornecer flexibilidade, a transformação do controle de transações é fornecida.

Comandos TCL COMMIT e ROLLBACK

Existem cinco variáveis ​​embutidas disponíveis nesta transformação para lidar com a operação.

TC_CONTINUE_TRANSACTION
Em tc_continue_transaction não há operações realizadas, o processo de carregamento de dados continua como está.
TC_COMMIT_BEFORE
Em tc_commit_before, quando este sinalizador é encontrado definido, uma confirmação é executada antes do processamento da linha atual.
TC_COMMIT_AFTER
Em tc_commit_after a linha atual é processada, então um commit é executado.
TC_ROLLBACK_BEFORE
Em tc_rollback_before, o rollback é executado primeiro e, em seguida, os dados são processados ​​para gravação.
TC_ROLLBACK_AFTER
Em tc_rollback_after os dados são processados, então o rollback é executado.

Exemplo:

Neste exemplo, vamos confirmar os dados para o destino quando a condição dept no = 20 for considerada verdadeira

Etapa 1 - Criar um mapeamento com EMP como origem e EMP_TARGET como destino

Passo 2 - Crie uma nova transformação usando o menu de transformação, então

  1. Selecione um controle de transação como a nova transformação
  2. Insira o nome da transformação "tc_commit_dept20"
  3. Selecione a opção de criação

Etapa 3 - A transformação do controle da transação será criada, selecione o botão Concluído

Etapa 4 - Arraste e solte todas as colunas do qualificador de origem para a transformação de controle de transação e, em seguida, vincule todas as colunas da transformação de controle de transação à tabela de destino

Etapa 5 - Clique duas vezes na transformação de controle de transação e, em seguida, na janela de edição de propriedade

  1. Selecione a guia de propriedades
  2. Clique no ícone do editor de controle de transação

Etapa 6 - no editor de expressão, insira a expressão -

" iif (deptno = 20, tc_commit_before, tc_continue_transaction)" e selecione OK

Isso significa que se o deptno 20 for encontrado, efetue o commit da transação no destino, caso contrário, continue o processamento atual.

Etapa 7 - Selecione OK na janela anterior

Agora salve o mapeamento e execute-o após criar a sessão e os fluxos de trabalho. Este mapeamento irá comprometer os dados para o destino sempre que o departamento número 20 for encontrado nos dados.