Usar o Scala para programar scripts de ETL do AWS Glue - AWS Glue

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Usar o Scala para programar scripts de ETL do AWS Glue

Você pode gerar automaticamente um programa Scala de extração, transformação e carga (ETL) usando o console do AWS Glue e modificá-lo conforme necessário antes de atribui-lo a um trabalho. Ou, você pode escrever seu próprio programa do zero. Para obter mais informações, consulte Configurando as propriedades da tarefa para tarefas do Spark no AWS Glue. Em seguida, o AWS Glue compila seu programa Scala no servidor antes de executar o trabalho associado.

Para ter certeza de que seu programa compila sem erros e é executado como esperado, é muito importante carregá-lo em um endpoint de desenvolvimento em um REPL (Read-Eval-Print Loop) ou em um caderno Jupyter e testá-lo antes de executá-lo em um trabalho. Como o processo de compilação ocorre no servidor, você não terá uma boa visibilidade dos problemas que ocorrem lá.

Testar um programa de ETL Scala em um caderno Jupyter em um endpoint de desenvolvimento

Para testar um programa Scala em um endpoint de desenvolvimento do AWS Glue, configure o endpoint de desenvolvimento conforme descrito em Adicionar um endpoint de desenvolvimento.

Em seguida, conecte-o a um caderno Jupyter que esteja em execução localmente na sua máquina ou remotamente em um servidor de cadernos do Amazon EC2. Para instalar uma versão local de um caderno Jupyter, siga as instruções em Tutorial: caderno Jupyter no JupyterLab.

A única diferença entre executar o código Scala e executar o código PySpark no seu notebook é que você deve iniciar cada parágrafo no notebook com o seguinte:

%spark

Isso impede que o servidor do notebook seja padronizado para o tipo do PySpark do intérprete Spark.

Testar um programa de ETL Scala em um Scala REPL

Você pode testar um programa Scala em um endpoint do desenvolvedor usando o Scala REPL do AWS Glue. Siga as instruções em Tutorial: usar um caderno do SageMaker, exceto no final do comando SSH para REPL, substitua -t gluepyspark por -t glue-spark-shell. Isso invoca o Scala REPL do AWS Glue.

Para fechar o REPL quando você concluir, digite sys.exit.