PySpark Fundamentals
v4.1 — 2026 Edition. Ein umfassender Leitfaden zu PySpark 4.1, der Spark Connect, DataFrames, komplexe Datentypen, Datentransformationen, SQL, UDFs und Profiling abdeckt.
Episoden
Das Big-Data-Problem & das Versprechen von PySpark
3m 54sWir klären die grundlegende Notwendigkeit von PySpark. Entdecke, warum Standard-Python-Bibliotheken wie Pandas bei großen Datenmengen versagen und wie PySpark eine verteilte Ausführungs-Engine bietet, um riesige Datensätze nahtlos zu verarbeiten.
Die Spark Connect Revolution
3m 52sErkunde die Spark Connect Architektur. Wir erklären, wie PySpark Client und Server entkoppelt hat, sodass du Spark-Anwendungen überall ohne sperrige JVM-Abhängigkeiten ausführen kannst.
DataFrames und Lazy Evaluation
4m 18sTauche ein in die grundlegende Abstraktion von PySpark: den DataFrame. Wir diskutieren das Konzept der Lazy Evaluation, den Unterschied zwischen Transformationen und Aktionen und warum Spark plant, bevor es ausführt.
Erstellen und Anzeigen von DataFrames
4m 06sLerne, wie man DataFrames aus rohen Python-Objekten, Dictionaries und Dateien instanziiert und wie du deine verteilten Daten sicher überprüfen kannst, ohne deinen Driver-Node zum Absturz zu bringen.
Grundlegende Datentypen meistern
4m 23sEin Rundgang durch die grundlegenden numerischen und String-Typen von PySpark. Wir untersuchen, wie man Schemata mit StructType und StructField für robuste Datenpipelines explizit definiert.
Die Tücken der Präzision
4m 49sEntdecke die entscheidenden Unterschiede zwischen FloatType, DoubleType und DecimalType. Lerne, warum die Wahl des falschen numerischen Typs zu katastrophalen Rundungsfehlern in Finanzdaten führen kann.
Komplexe und verschachtelte Daten bändigen
4m 17sBig Data ist nicht immer flach. Wir erkunden die komplexen Datentypen von PySpark, einschließlich ArrayType, StructType und MapType, mit denen du tief verschachteltes JSON nativ parsen kannst.
Type Casting und Selektion
3m 56sLerne, wie du deine DataFrame-Schemata aktiv formst. Wir behandeln, wie man Teilmengen von Spalten auswählt und wie man Spalten sicher von einem Datentyp in einen anderen castet.
Function Junction: Schmutzige Daten bereinigen
4m 03sGarbage in, garbage out. Lerne die wesentlichen DataFrame-Transformationen kennen, um Nullwerte zu entfernen, fehlende Werte aufzufüllen und NaN-Datensätze nativ in verteilten Systemen zu behandeln.
Daten transformieren und umformen
4m 13sÜbernimm die Kontrolle über die Form deiner Daten. Wir untersuchen, wie man neue Spalten mit mathematischen Funktionen generiert, String-Manipulationen durchführt und verschachtelte Arrays mit explode abflacht.
Die Mechanik von Gruppierung und Aggregation
3m 46sMeistere die Split-Apply-Combine-Strategie. Wir tauchen ein in das Gruppieren von Daten nach Schlüsseln und die Anwendung leistungsstarker Aggregationsfunktionen, um riesige Datensätze zusammenzufassen.
Wenn DataFrames kollidieren: Die Kunst des Joins
3m 59sNavigiere durch die Nuancen der Kombination von Datensätzen. Wir schlüsseln die sieben verschiedenen Join-Typen in PySpark auf und erklären, wie man DataFrames sicher zusammenführt.
Altes SQL, neue Tricks
3m 37sWarum eine neue API lernen, wenn du rohes SQL verwenden kannst? Lerne, wie du Standard-SQL-Abfragen direkt gegen verteilte PySpark-DataFrames ausführst.
Wechselspiel zwischen DataFrames und SQL
3m 36sMische SQL und Python nahtlos. Entdecke, wie du temporäre Views aus DataFrames erstellst, selectExpr verwendest und programmatische Operationen an SQL-Abfrageergebnisse anhängst.
Spark mit Python UDFs erweitern
4m 24sWenn integrierte Funktionen nicht ausreichen, kommen User-Defined Functions ins Spiel. Wir untersuchen, wie man benutzerdefinierte Python-Logik für DataFrames schreibt und warum standardmäßige skalare UDFs Leistungseinbußen verbergen.
UDFs mit Apache Arrow beschleunigen
3m 41sBeseitige den JVM-zu-Python-Serialisierungsengpass. Wir decken auf, wie Vectorized Pandas UDFs und Apache Arrow-Speicherformate deine benutzerdefinierten Transformationen beschleunigen.
Zeilen mit Python UDTFs explodieren lassen
4m 33sStandard-UDFs geben einen Wert pro Zeile zurück, aber was ist, wenn du mehrere Zeilen benötigst? Lerne, wie Python User-Defined Table Functions (UDTFs) komplexe One-to-Many-Generierungsprobleme lösen.
Die Pandas API auf Spark
4m 28sSkaliere deine bestehenden Pandas-Skripte ins Unendliche. Entdecke, wie die pyspark.pandas API es dir ermöglicht, Standard-Pandas-Syntax nativ auf einem verteilten Spark-Cluster auszuführen.
Laden und Staunen: Speicherformate
4m 12sNicht alle Dateiformate sind gleich. Wir stellen zeilenbasierte CSVs spaltenbasierten Formaten wie Parquet und ORC gegenüber und untersuchen Lese-/Schreiboptionen sowie optimale Speichertechniken.
Bug Busting: Physische Pläne und Joins
3m 23sWirf einen Blick unter die Haube der Ausführungs-Engine von Spark. Lerne, wie man Abfragen mit DataFrame.explain() debuggt und wie man kostspielige Shuffles durch die Verwendung von Broadcast Joins eliminiert.
Profiling von PySpark-Speicher und -Leistung
4m 10sWir schließen unsere PySpark-Reise ab, indem wir native Profiling-Tools vorstellen. Lerne, wie man den Speicherverbrauch Zeile für Zeile verfolgt und versteckte interne Python-Tracebacks aufdeckt.