Verwenden von Scala zum Programmieren von AWS Glue-ETL-Skripts - AWS Glue

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verwenden von Scala zum Programmieren von AWS Glue-ETL-Skripts

Sie können mit der AWS Glue-Konsole automatisch ein Extraktions-, Transformations- und Ladeprogramm (ETL) in Scala erzeugen und bei Bedarf ändern, bevor Sie es einem Auftrag zuweisen. Oder Sie können Ihr eigenes Programm von Grund auf neu schreiben. Weitere Informationen finden Sie unter Konfiguration der Auftragseigenschaften für Spark-Jobs in AWS Glue. AWS Glue kompiliert Ihr Scala-Programm anschließend auf dem Server, ehe der verknüpfte Auftrag ausgeführt wird.

Um sicherzustellen, dass Ihr Programm fehlerfrei kompiliert wird und wie erwartet ausgeführt wird, ist es wichtig, dass Sie es auf einen Entwicklungsendpunkt in einem REPL (Read-Eval-Print Loop) oder einem Jupyter Notebook laden und dort testen, bevor Sie es in einem Job ausführen. Da die Kompilierung auf einem Server stattfindet, haben Sie keinen guten Einblick in möglicherweise auftretende Probleme.

Testen eines Scala-ETL-Programms in einem Jupyter Notebook auf einem Entwicklungsendpunkt

Um ein Scala-Programm auf einem AWS Glue-Entwicklungsendpunkt zu testen, richten Sie den Entwicklungsendpunkt ein. Einzelheiten dazu finden Sie unter Hinzufügen eines Entwicklungsendpunkts.

Als Nächstes verbinden Sie es mit einem Jupyter Notebook, das entweder lokal auf Ihrem Computer oder remote auf einem EC2 Amazon-Notebook-Server ausgeführt wird. Befolgen Sie zum Installieren einer lokalen Jupyter-Notebook-Version die Anweisungen unter Tutorial: Jupyter-Notizbuch in JupyterLab.

Der einzige Unterschied zwischen der Ausführung von Scala-Code und der Ausführung von PySpark Code auf Ihrem Notebook besteht darin, dass Sie jeden Absatz auf dem Notebook wie folgt beginnen sollten:

%spark

Dadurch wird verhindert, dass der Notebook-Server standardmäßig die PySpark Variante des Spark-Interpreters verwendet.

Testen eines Scala-ETL-Programms in einer Scala REPL

Mit dem AWS Glue Scala REPL können Sie ein Scala-Programm auf einem Entwicklungs-Endpunkt testen. Folgen Sie den Anweisungen unterTutorial: Verwenden Sie ein SageMaker KI-Notizbuch, außer am Ende des SSH-to-REPL Befehls, -t gluepyspark ersetzen -t glue-spark-shell Sie durch. Dies ruft die AWS Glue Scala REPL auf.

Geben Sie sys.exit ein, um die REPL zu schließen, wenn Sie fertig sind.