Usando a transformação Array To Columns para extrair os elementos de uma matriz para colunas de nível superior - AWS Glue

Usando a transformação Array To Columns para extrair os elementos de uma matriz para colunas de nível superior

A transformação Array To Columns permite extrair alguns ou todos os elementos de uma coluna do tipo matriz para novas colunas. A transformação preencherá as novas colunas o máximo possível se a matriz tiver valores suficientes para extrair, opcionalmente usando os elementos nas posições especificadas.

Por exemplo, se você tiver uma coluna de matriz “sub-rede”, que foi o resultado da aplicação da transformação “Split String” em uma sub-rede ip v4, você pode extrair a primeira e a quarta posições para as novas colunas “primeiro_octeto” e “quarto_octeto”. A saída da transformação neste exemplo seria (observe que as duas últimas linhas têm matrizes mais curtas do que o esperado):

sub-rede primeiro_octeto quarto_octeto
[54, 240, 197, 238] 54 238
[192, 168, 0, 1] 192 1
[192, 168] 192
[]
Para adicionar uma transformação Array To Columns:
  1. Abra o painel Recurso e escolha Array To Columns para adicionar uma nova transformação ao diagrama do trabalho. O nó selecionado no momento da adição do nó será o nó superior.

  2. (Opcional) Na guia Propriedades do nó, insira um nome para o nó no diagrama do trabalho. Se ainda não houver um nó pai selecionado, escolha um na lista Node parents (Nós pais) para usar como fonte de entrada para a transformação.

  3. Na guia Transformar, escolha a coluna da matriz a ser extraída e insira a lista de novas colunas para os tokens extraídos.

    A captura de tela mostra a guia Transformar para a transformação Array To Columns.
  4. (Opcional) Se não quiser usar os tokens da matriz para atribuir às colunas, você pode especificar os índices a serem obtidos, que serão atribuídos à lista de colunas na mesma ordem especificada. Por exemplo, se as colunas de saída forem “coluna1, coluna2, coluna3” e os índices “4, 1, 3”, o quarto elemento da matriz irá para a coluna1, o primeiro para a coluna2 e o terceiro para a coluna3 (se a matriz for menor que o número do índice, será atribuído um valor NULL).