

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Uso di Scala per programmare gli script ETL AWS Glue
<a name="glue-etl-scala-using"></a>

È possibile generare automaticamente un programma di estrazione, trasformazione e caricamento (ETL) Scala usando la console AWS Glue ed effettuare le modifiche necessarie prima dell'assegnazione a un processo. In alternativa, è possibile scrivere il proprio programma da zero. Per altre informazioni, consulta [Configurazione delle proprietà dei job per i job Spark in AWS Glue](add-job.md). AWS Glue compila quindi il programma Scala nel server prima di eseguire il processo associato.

Per garantire che il programma venga compilato senza errori e venga eseguito come previsto, è importante caricarlo su un endpoint di sviluppo in un REPL (Read-Eval-Print Loop) o in un Jupyter Notebook e testarlo lì prima di eseguirlo in un lavoro. Poiché il processo di compilazione viene effettuato sul server, non sarà possibile individuare chiaramente eventuali problemi.

## Test di un programma Scala ETL in un notebook Jupyter su un endpoint di sviluppo
<a name="aws-glue-programming-scala-using-notebook"></a>

Per testare un programma Scala in un endpoint di sviluppo AWS Glue, configura l'endpoint di sviluppo come descritto in [Aggiunta di un endpoint di sviluppo](add-dev-endpoint.md).

Connettilo quindi a un notebook Jupyter in esecuzione sul computer in locale o in remoto su un server notebook Amazon EC2. Per installare una versione locale di un notebook Jupyter, segui le istruzioni riportate alla pagina [Tutorial: Notebook Jupyter in JupyterLab](dev-endpoint-tutorial-local-jupyter.md).

L'unica differenza tra l'esecuzione del codice Scala e l'esecuzione del PySpark codice sul Notebook è che è necessario iniziare ogni paragrafo sul Notebook con quanto segue:

```
%spark
```

Ciò impedisce al server Notebook di utilizzare come impostazione predefinita l'interprete PySpark Spark.

## Test di un programma Scala ETL in una REPL Scala
<a name="aws-glue-programming-scala-using-repl"></a>

Come testare un programma Scala in un endpoint di sviluppo usando un ciclo REPL Scala AWS Glue. Segui le istruzioni riportate in[Tutorial: usa un notebook basato sull' SageMaker intelligenza artificialeTutorial: utilizzo di una shell (interprete di comandi) REPL](dev-endpoint-tutorial-repl.md), tranne che alla fine del SSH-to-REPL comando, sostituisci `-t gluepyspark` con`-t glue-spark-shell`. In questo modo viene richiamato il ciclo REPL Scala AWS Glue.

Per chiudere la REPL quando si è terminato, digitare `sys.exit`.