PySpark: Spark mit Python

Grundlagen von Big Data mit PySpark

Upendra Devisetty

Science Analyst, CyVerse

Überblick über PySpark

  • Apache Spark ist in Scala geschrieben

  • Für Python-Unterstützung veröffentlichte die Community PySpark

  • Ähnliche Geschwindigkeit und Leistung wie Scala

  • PySpark-APIs ähneln Pandas und Scikit-learn

Grundlagen von Big Data mit PySpark

Was ist die Spark-Shell?

  • Interaktive Umgebung zum Ausführen von Spark-Jobs

  • Nützlich für schnelles, interaktives Prototyping

  • Shells erlauben Interaktion mit Daten auf Disk oder im Speicher

  • Drei Spark-Shells:

    • Spark-shell für Scala

    • PySpark-shell für Python

    • SparkR für R

Grundlagen von Big Data mit PySpark

PySpark-Shell

  • Die PySpark-Shell ist das Python-basierte Kommandozeilentool

  • Sie ermöglicht Data Scientists den Zugriff auf Spark-Datenstrukturen

  • Die PySpark-Shell kann sich mit einem Cluster verbinden

Grundlagen von Big Data mit PySpark

SparkContext verstehen

  • SparkContext ist der Einstiegspunkt in Spark

  • Ein Einstiegspunkt verbindet dich mit dem Spark-Cluster

  • Ein Einstiegspunkt ist wie ein Schlüssel zum Haus

  • PySpark hat standardmäßig einen SparkContext namens sc

1 https://www.datacamp.com/cheat-sheet/pyspark-cheat-sheet-spark-in-python
Grundlagen von Big Data mit PySpark

SparkContext inspizieren

  • Version: SparkContext-Version abrufen
sc.version
2.3.1
  • Python-Version: Python-Version des SparkContext abrufen
sc.pythonVer
3.6
  • Master: Cluster-URL oder Local-String für lokalen Modus des SparkContext
sc.master
local[*]
1 https://www.datacamp.com/cheat-sheet/pyspark-cheat-sheet-spark-in-python
Grundlagen von Big Data mit PySpark

Daten in PySpark laden

  • Methode parallelize() des SparkContext
rdd = sc.parallelize([1,2,3,4,5])
  • Methode textFile() des SparkContext
rdd2 = sc.textFile("test.txt")
1 https://www.datacamp.com/cheat-sheet/pyspark-cheat-sheet-spark-in-python
Grundlagen von Big Data mit PySpark

Lass uns üben!

Grundlagen von Big Data mit PySpark

Preparing Video For Download...