Kapitel 5. Grundlegende strukturierte Operationen
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
In Kapitel 4 haben wir die wichtigsten Abstraktionen der strukturierten API vorgestellt. In diesem Kapitel geht es nicht mehr um die architektonischen Konzepte, sondern um die taktischen Werkzeuge, mit denen du DataFrames und die darin enthaltenen Daten bearbeiten wirst. Dieses Kapitel konzentriert sich ausschließlich auf die grundlegenden DataFrame-Operationen und lässt Aggregationen, Fensterfunktionen und Joins außen vor. Diese werden in den folgenden Kapiteln behandelt.
Definitionsgemäß besteht ein Datenrahmen aus einer Reihe von Datensätzen (wie Zeilen in einer Tabelle), die vom Typ Row
sind, und einer Reihe von Spalten (wie Spalten in einer Tabellenkalkulation), die einen Berechnungsausdruck darstellen, der mit jedem einzelnen Datensatz im Datensatz durchgeführt werden kann. Schemas definieren sowohl den Namen als auch den Typ der Daten in jeder Spalte. Die Partitionierung des Datenrahmens definiert die physische Verteilung des Datenrahmens oder Datensatzes auf dem Cluster. Das Partitionierungsschema legt fest, wie die Daten verteilt werden. Du kannst dies auf der Grundlage von Werten in einer bestimmten Spalte oder nicht-deterministisch festlegen.
Lass uns einen Datenrahmen erstellen, mit dem wir arbeiten können:
// in Scala
val
df
=
spark
.
read
.
format
(
"json"
)
.
load
(
"/data/flight-data/json/2015-summary.json" ...
Get Spark: Der endgültige Leitfaden now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.