Usar uma consulta SQL para transformar dados
Você pode usar uma transformação SQL para escrever sua própria transformação na forma de uma consulta SQL.
Um nó de transformação SQL pode ter vários conjuntos de dados como entradas, mas produz apenas um único conjunto de dados como saída. Ele contém um campo de texto, onde você insere a consulta do Apache SparkSQL. Você pode atribuir aliases a cada conjunto de dados usado como entrada, para ajudar a simplificar a consulta SQL. Para obter mais informações sobre a sintaxe SQL, consulte a documentação do Spark SQL
nota
Se você usar uma transformação do Spark SQL com uma origem dos dados localizada em uma VPC, adicione um endpoint da VPC do AWS Glue à VPC que contém a origem dos dados. Para obter mais informações sobre como configurar endpoints de desenvolvimento, consulte Adicionar um endpoint de desenvolvimento, Configurar seu ambiente para endpoints de desenvolvimento e Acessar o endpoint de desenvolvimento no Guia do desenvolvedor do AWS Glue.
Para usar um nó de transformação SQL no diagrama de trabalho
-
(Opcional) adicione um nó de transformação ao diagrama de trabalho, se necessário. Escolha Consulta SQL para o tipo de nó.
nota
Se você usar uma sessão de visualização de dados e um SQL personalizado ou um nó de código personalizado, a sessão de visualização de dados executará o SQL ou o bloco de código no estado em que se encontra para todo o conjunto de dados.
-
Na guia Node properties (Propriedades do nó), insira um nome para o nó no diagrama de trabalho. Se um nó pai ainda não estiver selecionado, ou se você quiser várias entradas para a transformação SQL, escolha um nó na lista Node parents (Nós pais) para usar como fonte de entrada para a transformação. Adicione nós pais conforme necessário.
-
Escolha a guia Transform (Transformação) no painel de detalhes do nó.
-
Os conjuntos de dados de origem para a consulta SQL são identificados pelos nomes especificados no campo Name (Nome) de cada nó. Se você não quiser usar esses nomes, ou se eles não forem adequados para uma consulta SQL, você pode associar um nome a cada conjunto de dados. O console fornece aliases padrão, como
MyDataSource
.Por exemplo, se um nó pai do nó de transformação SQL for nomeado como
Rename Org PK field
, você poderá associar o nomeorg_table
com este conjunto de dados. Esse alias pode ser usado na consulta SQL no lugar do nome do nó. -
No campo de entrada de texto, no cabeçalho Code block (Bloco de código), cole ou insira a consulta SQL. O campo de texto exibe o realce da sintaxe SQL e sugestões de palavra-chave.
-
Com o nó de transformação SQL selecionado, escolha a guia Output schema (Esquema de saída) e, em seguida, escolha Edit (Editar). Forneça as colunas e os tipos de dados que descrevem os campos de saída da consulta SQL.
Especifique o esquema usando as seguintes ações na seção Output schema (Esquema de saída) da página:
-
Para renomear uma coluna, coloque o cursor na caixa de texto Key (Chave) da coluna (também conhecida como field (campo) ou property key [chave de propriedade]) e insira o novo nome.
-
Para alterar o tipo de dados de uma coluna, selecione o novo tipo de dados para a coluna na lista suspensa.
-
Para adicionar uma nova coluna de nível superior ao esquema, escolha o botão Overflow (excedente, ) e, em seguida, escolha Add root key (Adicionar chave raiz). Novas colunas são adicionadas na parte superior do esquema.
-
Para remover uma coluna do esquema, escolha o ícone de exclusão ( ) à extrema direita do nome da chave.
-
-
Quando terminar de especificar o esquema de saída, escolha Apply (Aplicar) para salvar suas alterações e saia do editor de esquema. Se não quiser salvar as alterações, escolha Cancel (Cancelar) para editar o editor de esquemas.
(Opcional) depois de configurar as propriedades do nó e da transformação, você pode previsualizar o conjunto de dados modificado escolhendo a guia Data preview (Previsualização de dados) no painel de detalhes do nó. Na primeira vez que você escolher essa guia para qualquer nó em seu trabalho, você receberá uma solicitação para fornecer uma função do IAM para acessar os dados. Há um custo associado ao uso desse recurso e o a cobrança começa assim que você fornece uma função do IAM.