Erstellen einer SparkSession
In dieser Übung baust du einen lokalen Spark-Cluster auf, der alle verfügbaren Kerne nutzt. Der Cluster wird über ein SparkSession
Objekt zugänglich sein.
Die Klasse SparkSession
hat ein Attribut builder
, das eine Instanz der Klasse Builder
ist. Die Klasse Builder
stellt drei wichtige Methoden zur Verfügung, mit denen du
- gib den Standort des Master-Knotens an;
- die Anwendung benennen (optional); und
- eine bestehende
SparkSession
abrufen oder, falls keine vorhanden ist, eine neue erstellen.
Die Klasse SparkSession
hat ein version
Attribut, das die Version von Spark angibt. Hinweis: Die Version kann auch über das Attribut __version__
auf dem Modul pyspark
abgerufen werden.
Mehr über SparkSession
erfährst du hier.
Wenn du mit dem Cluster fertig bist, ist es eine gute Idee, ihn herunterzufahren. Dadurch werden seine Ressourcen frei und stehen für andere Prozesse zur Verfügung.
Anmerkungen:
- Es kann nützlich sein, die Folien aus den Lektionen im Bereich Folien neben der IPython-Shell durchzusehen.
- Die Version von Spark in der Übung ist nicht dieselbe wie in den Lektionen. Die Übungsplattform wurde auf eine neuere Version von Spark aktualisiert.
Diese Übung ist Teil des Kurses
Maschinelles Lernen mit PySpark
Anleitung zur Übung
- Importiere die Klasse
SparkSession
auspyspark.sql
. - Erstelle ein
SparkSession
Objekt, das mit einem lokalen Cluster verbunden ist. Nutze alle verfügbaren Kerne. Nenne die Anwendung'test'
. - Verwende das Attribut
version
desSparkSession
Objekts, um die Version von Spark auf dem Cluster zu ermitteln. Hinweis: Die Version kann sich von derjenigen unterscheiden, die in der Präsentation verwendet wird (sie wird von Zeit zu Zeit aktualisiert). - Schalte den Cluster ab.
Interaktive Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Import the SparkSession class
from ____ import ____
# Create SparkSession object
spark = SparkSession.builder \
.master(____) \
.____(____) \
.____()
# What version of Spark?
print(spark.____)
# Terminate the cluster
spark.____()