Table Union All
Descrição
Seção intitulada “Descrição”Use para combinar várias tabelas de dados com a mesma estrutura de colunas em uma única tabela de dados. Por exemplo, dados de séries temporais são candidatos ideais para esta transformação. O resultado reúne todos os registros das tabelas combinadas.
Origens
Seção intitulada “Origens”A seção Origens reúne todas as tabelas de dados a serem anexadas. Normalmente, todas as tabelas de dados têm a mesma estrutura de colunas (ou uma semelhante). Há dois botões para adicionar uma tabela de dados à lista:
- Inserir linha
- Anexar linha
Além disso, clicar com o botão direito na janela Selecionar origem para editar exibe as mesmas opções. Clicar com o botão direito em uma tabela já adicionada também exibe a opção Excluir.
Para executar a transformação corretamente, é necessário haver uma entrada na seção Origens para cada tabela de dados de origem a ser anexada. Essas entradas são listadas na ordem em que serão anexadas. Para ajustar a ordem, clique com o botão direito em uma tabela para exibir as seguintes opções:
- Mover para baixo (se aplicável)
- Mover para o final (se aplicável)
- Mover para cima (se aplicável)
- Mover para o início (se aplicável)
Por padrão, cada origem se chama New Frame, mas recomendamos que o modelador dê nomes descritivos, clicando duas vezes no nome e renomeando-o.
Tabela de destino
Seção intitulada “Tabela de destino”Por padrão, a Tabela de destino fica em branco. Antes de nomeá-la, observe que as tabelas de dados devem seguir as convenções de nomenclatura do Linux. Por isso, recomendamos que os nomes tenham apenas caracteres alfanuméricos. O Analyze remove automaticamente do nome os caracteres inválidos. Além disso, ele limita o tamanho a 256 caracteres, então seja conciso!
Tabela de destino

Para definir a tabela de destino, selecione uma tabela existente na lista suspensa Tabela de destino ou clique no sinal verde “+” para criar uma nova tabela como destino.
Criação de tabela
Ao criar uma nova tabela, você pode criá-la como Visão ou como Tabela.
Visões:
As visões são úteis porque o tempo necessário para executar uma etapa é bem menor do que quando se usa uma tabela. A desvantagem das visões é que elas não são úteis para explorar dados no modo Detalhes da tabela.
Tabelas:
Ao usar uma tabela como destino, a etapa leva mais tempo para ser executada, mas a exploração de dados no modo Detalhes é muito mais rápida do que com uma visão.
Guia Seleção de dados da tabela
Seção intitulada “Guia Seleção de dados da tabela”Tabela de origem
Seção intitulada “Tabela de origem”Seleção de tabelas
Há duas opções para selecionar a tabela ou, na segunda opção, as tabelas:
A primeira opção é usar a lista suspensa Tabela específica para selecionar a tabela.
A segunda é usar a opção Tabelas correspondentes à pesquisa, na qual você especifica o Caminho de pesquisa e o Texto da pesquisa para selecionar a tabela ou as tabelas que correspondem aos critérios de pesquisa. Essa opção é muito útil se você tem um fluxo de trabalho que cria uma série de tabelas com nomes em comum, salvas com a data anexada.

Colunas de origem
Seção intitulada “Colunas de origem”Configuração do Data Mapper

O Data Mapper é usado para mapear as colunas dos dados de origem para a tabela de dados de destino.
Inspeção e Preenchimento do Mapeador
O botão de menu Inspecionar origem oferece formas adicionais de mapear colunas da origem para o destino:
- Preencher ambas as tabelas de mapeamento: propaga todos os valores da tabela de dados de origem para a tabela de dados de destino. Este é o comportamento padrão.
- Preencher somente a tabela de mapeamento de origem: mapeia apenas todos os valores da tabela de dados de origem. Isso é útil ao modificar um fluxo de trabalho existente quando a estrutura de colunas da origem mudou.
- Preencher somente a tabela de mapeamento de destino: propaga todos os valores apenas para a tabela de dados de destino.
Se as opções de coluna de origem e de destino não forem suficientes, é possível adicionar outras colunas à tabela de dados de destino de várias maneiras:
- Propagar tudo insere todas as colunas de origem na tabela de dados de destino, quer elas já existam ou não.
- Propagar selecionadas insere apenas as colunas de origem selecionadas.
- Clique com o botão direito no lado do destino e selecione Inserir linha para inserir uma linha imediatamente acima da linha selecionada.
- Clique com o botão direito no lado do destino e selecione Anexar linha para inserir uma linha no final (extrema direita) da tabela de dados de destino.
Exclusão de Colunas
Para excluir colunas da tabela de dados de destino, selecione as colunas desejadas, clique com o botão direito e selecione Excluir.
Colunas de Origem que Não Estão Mais Listadas
Uma linha de destino pode indicar uma Coluna de origem que a tabela de dados de origem não lista mais, por exemplo depois que a origem foi inspecionada novamente. A etapa nunca remove essa linha por você. Em vez disso, o nome da coluna aparece em vermelho, após um sinal de aviso ⚠, e ao passar o mouse sobre ele é exibida a informação de que a coluna não está nas colunas de origem. Em uma etapa com várias tabelas, como uma união, cada tabela é verificada em relação às suas próprias colunas de origem.
Uma linha com resumo Constante, Expressão ou Contagem (incluindo nulos) nunca é sinalizada, porque a etapa não lê a coluna de origem dela. Nada é sinalizado enquanto a tabela de dados de origem não listar nenhuma coluna, por exemplo antes de a origem ser inspecionada pela primeira vez.
Ao salvar uma etapa que ainda tem linhas sinalizadas, uma caixa de diálogo Colunas obsoletas encontradas as lista sob a guia ou a tabela em que estão e oferece três opções:
- Remover todas e salvar — remove as linhas sinalizadas e, em seguida, salva.
- Salvar mesmo assim — salva a etapa como está.
- Cancelar — volta para a etapa sem salvar.
Para manter uma linha e eliminar o aviso dela, adicione a coluna de volta à tabela de dados de origem ou escolha uma coluna que a tabela de dados de origem liste.
Colunas ausentes na tabela de origem
Ao salvar, a própria tabela de dados de origem é verificada no estado atual. Uma coluna que a etapa lista nas colunas de origem, mas que a tabela não tem, por exemplo uma que uma etapa anterior renomeou ou removeu, significa que as colunas da etapa estão desatualizadas, e uma etapa que lê essa coluna falha ao ser executada. Nesse caso, ao salvar, abre-se uma caixa de diálogo Colunas de origem ausentes que informa cada tabela e as colunas que faltam nela, com duas opções:
- Salvar mesmo assim — salva a etapa como está.
- Cancelar — volta para a etapa sem salvar.
Nada é removido automaticamente, porque o problema pode estar na tabela, e ela pode mudar de novo antes da execução da etapa. Quando há também linhas sinalizadas como não listadas, ambas aparecem juntas na caixa de diálogo Colunas obsoletas encontradas, e Remover todas e salvar remove apenas as linhas sinalizadas. Enquanto a lista de colunas de origem estiver vazia, são verificadas as colunas que a etapa mapeia, exceto as linhas com resumo Constante, Expressão ou Contagem (incluindo nulos), que não leem nenhuma coluna.
Uma origem nomeada com uma variável, como {year}/Sales, é verificada com o valor da variável no momento em que você salva, e a caixa de diálogo informa a tabela verificada, como 2026/Sales (from {year}/Sales). Uma variável definida por um loop contém o valor da última iteração, portanto um loop sobre tabelas com estruturas diferentes pode alertar sobre uma tabela que a próxima execução não vai ler. Não são verificadas uma tabela que ainda não existe, por exemplo uma criada por uma etapa anterior do fluxo de trabalho, uma origem cuja variável não tem valor, uma tabela que a etapa localiza por pesquisa durante a execução ou uma tabela que não pode ser lida no momento.
Tipo de Dados da Coluna
Toda coluna de destino tem um Tipo. Uma coluna propagada da origem mantém o tipo da coluna de origem; uma linha que você adiciona manualmente começa como Texto, e você define o Tipo para indicar o que ela deve realmente ser — uma coluna que você pretende somar ou ordenar precisa do tipo numérico ou de data, porque texto é ordenado e somado como texto.
Uma etapa salva com uma coluna sem nenhum tipo ainda é executada. O tipo é determinado quando a etapa é iniciada, a partir da coluna de origem que essa coluna lê. Onde não há de onde lê-lo, ele é tratado como texto: as colunas de uma etapa Extrair SQL vêm da consulta que você escreveu, e não de uma origem mapeada, e onde várias origens têm o mesmo nome de coluna com tipos divergentes, usa-se texto em vez de adivinhar um deles — um palpite errado gera uma conversão que o data warehouse pode rejeitar, e qualquer coisa pode ser convertida em texto.
Definir o Tipo você mesmo continua sendo a forma de dizer o que uma coluna deve ser. Deixá-lo sem definição significa aceitar o tipo que a coluna de origem tiver.
Alteração da Ordem das Colunas
Para reorganizar as colunas na tabela de dados de destino, selecione as colunas desejadas. Você pode usar:
- Setas de movimentação em massa: selecione a opção de movimentação desejada nas setas no canto superior direito
- Menu de contexto: clique com o botão direito e selecione Mover para o início, Mover para cima, Mover para baixo ou Mover para o final.
Reduzir o Resultado a Registros Distintos
Para retornar apenas opções distintas, selecione a opção de menu Distintos. Isso exibe um conjunto de caixas de seleção para cada coluna da origem. Basta marcar a caixa ao lado da coluna correspondente para retornar apenas resultados distintos.
Dependendo da situação, talvez seja melhor considerar o uso de resumo.
O processo de distinção mantém o primeiro registro exclusivo encontrado e descarta os demais. Talvez você queira aplicar uma ordenação aos dados se a consistência entre execuções for importante.
Agregação e Agrupamento
Para agregar resultados, selecione a opção de menu Resumir. Isso exibe um conjunto de caixas de seleção para cada coluna da tabela de dados de destino. Escolha um método de resumo adequado para cada coluna.
Quando Inspecionar origem preenche as colunas, uma coluna numérica começa como Agrupar por em vez de Soma se o nome dela se parecer com um identificador, como id, customer_id, Order No ou CustomerKey, se a tabela dela a definir como chave ou se a junção a usar como chave.
- Agrupar por
- Soma
- Mínimo
- Máximo
- Primeiro
- Último
- Contagem
- Contagem (incluindo nulos)
- Média
- Desvio padrão
- Desvio padrão amostral
- Desvio padrão populacional
- Variância
- Variância amostral
- Variância populacional
- Avançado sem Agrupar por
Para uso avançado do Data Mapper, como expressões, limpeza e constantes, consulte Uso avançado do Data Mapper
Filtros de dados
Seção intitulada “Filtros de dados”
Para oferecer o máximo de flexibilidade, há filtros de dados tanto nos dados de origem quanto nos dados de destino. Em conjuntos de dados maiores, filtrar linhas na origem pode ser especialmente vantajoso, pois as demais operações são executadas sobre um conjunto de dados menor.
Selecionar subconjunto de dados
Este tipo de filtro permite filtrar os dados de origem de entrada com base nas condições especificadas.
Aplicar filtro secundário aos dados de resultado
Este tipo de filtro permite aplicar um filtro aos dados de resultado já transformados, com base nas condições especificadas. Aplicar um filtro ao resultado transformado permite fazer exclusões com base em resultados de cálculos complexos, sumarizações ou funções de janela.
Divisão final da tabela de dados (limite)
O recurso de divisão de linhas permite limitar as linhas do conjunto de resultados com base em um intervalo e um ponto de partida.
Sintaxe de filtro
A sintaxe de filtro usa o Python SQLAlchemy, a mesma sintaxe das outras expressões.
Veja exemplos e funções de expressão na área Expressões.
Correspondência de colunas
Seção intitulada “Correspondência de colunas”Corresponder colunas por, em Tabela de destino, escolhe como as origens são alinhadas:
- Nome (padrão) — as colunas de cada origem são associadas às da primeira origem pelo nome.
- Posição — as origens são empilhadas em ordem, como faz o
uniondo Spark. O resultado usa os nomes de coluna da primeira origem, e todas as origens precisam ter o mesmo número de colunas. O mapeamento de colunas de cada origem não é usado, portanto a guia Seleção de dados da tabela fica desativada.
Com Posição, cada coluna assume um tipo que todas as origens comportam: dois tipos numéricos tornam-se o mais amplo, uma data e um carimbo de data/hora tornam-se um carimbo de data/hora, e as demais combinações tornam-se texto. Uma coluna booleana ou binária combinada com outro tipo não tem tipo comum e faz a etapa falhar, assim como origens com números de colunas diferentes.
Se todas as tabelas de origem estiverem ausentes, a etapa termina com um aviso em vez de falhar, em qualquer um dos modos.
O que é verificado ao salvar
Seção intitulada “O que é verificado ao salvar”Toda origem deve produzir as mesmas colunas da primeira origem: os mesmos nomes de coluna e, quando ambas declaram um, o mesmo tipo. A tabela de destino é construída a partir das colunas da primeira origem. Uma origem pode listar suas colunas em outra ordem, porque elas são associadas pelo nome. Salvar uma etapa cujas origens diferem é recusado, com a indicação de cada diferença: Source ‘east’ must produce the same columns as ‘west’: missing region; not in ‘west’: area.
Ao salvar, também é preenchido o mapeamento de cada origem que tem uma tabela de origem, mas não tem colunas de origem ou de destino, a partir dessa tabela, como faria Preencher ambas as tabelas de mapeamento.