Transformação de roteador na Informatica: exemplo de múltiplas condições
⚡ Resumo Inteligente
A transformação de roteador no Informatica é um objeto ativo e conectado que testa as linhas recebidas em relação a várias condições de filtro de grupo simultaneamente e envia cada linha para o grupo de saída correspondente ou para o grupo padrão.

O que é transformação de roteador?
A transformação Router é uma transformação ativa e conectada, semelhante à transformação Filter, usada para filtrar os dados de origem.
A funcionalidade adicional oferecida além da filtragem é a possibilidade de coletar os dados descartados (dados filtrados) no mapa.pingAlém disso, é possível aplicar múltiplas condições de filtro para obter diversos conjuntos de dados.
Por exemplo, ao filtrar os dados para deptno = 10, também podemos obter os registros em que deptno é diferente de 10. Assim, a transformação Router fornece vários grupos de saída, e cada grupo de saída pode ter sua própria condição de filtro.
Além disso, existe também um grupo padrão. Este grupo padrão contém os conjuntos de registros que não atendem a nenhuma das condições do grupo. Por exemplo, se você criou dois grupos para as condições de filtro deptno=10 e deptno=20, respectivamente, os registros que não possuem deptno 10 e 20 serão alocados a este grupo padrão.
Resumindo, os dados rejeitados pelos grupos de filtro serão coletados por este grupo padrão, e às vezes pode haver a necessidade de armazenar esses dados rejeitados. Nesses cenários, o grupo de saída padrão pode ser útil.
Para permitir múltiplas condições de filtro, a transformação Router oferece a opção de grupo.
- Existe um grupo de entrada padrão que recebe dados de entrada.
- Existe também um grupo de saída padrão que fornece todos os dados que não foram atendidos por nenhuma condição de filtro.
- Para cada condição de filtro, um grupo de saída é criado na transformação Router. Você pode conectar diferentes destinos a esses diferentes grupos.
Componentes da Transformação de Roteadores
Antes de construir o mapapingPara entender melhor o funcionamento, é útil conhecer as quatro partes que o Designer cria para você. Uma transformação de roteador é composta por um grupo de entrada, um conjunto de grupos de saída, as portas dentro deles e as condições que definem o destino de cada linha.
| Componente | O que ele faz |
|---|---|
| Grupo de entrada | O ponto de entrada único para a transformação. Cada linha de entrada chega aqui uma única vez, independentemente da quantidade de grupos de saída existentes. |
| Grupo de saída definido pelo usuário | Um grupo que você cria e nomeia, como por exemplo, deptno_20. Cada um possui sua própria condição de filtro de grupo. |
| Grupo de saída padrão | Criado automaticamente assim que o primeiro grupo definido pelo usuário existir. Não possui nenhuma condição de filtro e não pode ser editado ou excluído. |
| Condição do filtro de grupo | Uma expressão booleana escrita no Editor de Expressões. As linhas para as quais ela resulta em VERDADEIRO são excluídas desse grupo. |
O Designer copia as definições de porta do grupo de entrada para cada grupo de saída, de modo que as portas não precisam ser recriadas grupo por grupo. Duas regras decorrem desse projeto:
- As linhas podem ser duplicadas. Se uma linha satisfizer mais de uma condição de filtro de grupo, ela será passada uma vez para cada grupo correspondente. Essa é a razão usual pela qual um destino acaba com mais linhas do que a origem.
- É possível remover linhas. Se o grupo padrão for deixado desconectado, as linhas que chegarem até ele simplesmente desaparecerão do pipeline, que é a maneira mais rápida de descartar dados indesejados.
Transformação de roteador vs. transformação de filtro
Ambos os objetos testam os dados em relação a uma condição e ambos são transformações ativas, portanto, a escolha entre eles se resume a quantas condições estão envolvidas e se as linhas rejeitadas são relevantes.
| Ponto de comparação | Transformação de filtro | Transformação de roteador |
|---|---|---|
| Condições por objeto | completa | Um ou muitos, cada um em seu próprio grupo. |
| Linhas rejeitadas | Descontinuado e indisponível | Coletados no grupo padrão |
| Grupos de saída | Um único tubo de saída | Um pipeline por grupo, mais o grupo padrão. |
| A fonte diz: | Uma leitura por filtro quando as condições são encadeadas. | Uma leitura para todas as situações. |
| Uso típico | Remover linhas que nunca são necessárias. | Dividir uma fonte em vários alvos |
Testar três condições com transformações de filtro significa três objetos e, em um design encadeado, as mesmas linhas de origem são avaliadas repetidamente. Um único roteador realiza o mesmo trabalho em uma única passagem, razão pela qual geralmente é a opção mais eficiente quando uma segunda condição aparece. Para uma única condição descartável, a solução mais simples é a mais eficiente. Transformação de filtro continua sendo a melhor opção.
Como criar uma transformação de roteador no Informatica
O passo a passo abaixo cria um roteador que envia os funcionários do departamento 20 para uma mesa de destino. Siga os nove passos na ordem indicada no mapa.ping Designer.
Passo 1) Crie uma mapa,ping tendo origem “EMP” e destino “EMP_TARGET”. O Mapaping A tela do designer então contém a definição da fonte, seu qualificador de fonte e a definição do destino, conforme mostrado abaixo.
Passo 2) Então, no mapaping
- Selecione o menu Transformação
- Selecione a opção de criação
O caminho do menu usado para iniciar o assistente está destacado na próxima captura de tela.
Passo 3) Na janela de criação de transformação
- Selecione a transformação do roteador
- Insira um nome para a transformação “rtr_deptno_10”
- Selecione a opção Criar
Passo 4) A transformação do roteador será criada no mapa.pingSelecione a opção "Concluído" na janela. A janela "Criar Transformação", usada em ambas as etapas, é mostrada abaixo.
Passo 5) Arraste e solte todas as colunas de Qualificador de origem Transformação em roteador. Todas as portas agora estão vinculadas ao novo objeto, como mostra a captura de tela.
Passo 6) Double Clique na transformação Router e, em seguida, na propriedade de transformação.
- Selecione a guia do grupo
- Digite o nome do grupo “deptno_20”
- Clique na condição de filtro do grupo
A seguir, é exibida a aba Grupos com o novo grupo adicionado.
Passo 7) No Editor de Expressões, insira a condição de filtro deptno=20 e selecione o botão OK. O editor que contém essa condição é mostrado abaixo.
Passo 8) Selecione o botão OK na janela do grupo. A condição agora aparecerá ao lado do grupo, como mostra a próxima captura de tela.
Passo 9) Conecte as portas do grupo deptno_20 da transformação Router às portas da tabela de destino. O mapa finalizado.ping Executa desde a origem, passando pelo grupo, até EMP_TARGET.
Agora, quando você executar este mapaping, os registros filtrados serão carregados na tabela de destino.
Transformação de Roteadores: Melhores Práticas e Erros Comuns
O mapaping O exemplo acima utiliza um único grupo, o que oculta a maior parte dos comportamentos que posteriormente geram chamados de suporte. Os pontos abaixo abordam as mudanças ocorridas quando um segundo grupo é introduzido.
- Fique atento a linhas duplicadas. As condições de grupo não são mutuamente exclusivas. Escrever sal>1000 em um grupo e deptno=20 em outro significa que um funcionário que se encaixa em ambos os critérios será cadastrado duas vezes. Torne as condições exclusivas ou aceite a duplicação deliberadamente.
- Conecte o grupo padrão quando as rejeições forem importantes. As linhas que não satisfazem nenhuma condição são perdidas, a menos que o grupo padrão esteja vinculado a um destino ou a um arquivo de rejeição. Cargas auditáveis geralmente as mantêm.
- Nomeie os grupos de acordo com a regra, não com o alvo. O grupo de exemplo deptno_20 é legível; um grupo chamado group1, não. Observe que a própria transformação é denominada rtr_deptno_10 neste passo a passo, enquanto o grupo filtra por deptno 20, que é exatamente o tipo de incompatibilidade que um padrão de nomenclatura evita.
- Filtre antes de traçar a rota, sempre que possível. Linhas que nenhum grupo jamais desejará remover são mais baratas na consulta do qualificador de origem do que carregá-las para o roteador.
- Não trate o roteador como uma junção. Isso divide um pipeline em vários. Reunir as ramificações requer uma transformação de União, e combinar duas fontes diferentes requer a Transformação de marceneiro.
Um grupo cuja condição retorna NULL em vez de TRUE ou FALSE é tratado como não correspondente, portanto, as linhas com valores nulos na coluna testada são alocadas ao grupo padrão. O tratamento explícito de valores nulos na condição evita essa surpresa durante a execução do teste. ajuste de desempenho e testes.








