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 SQL-Fensterfunktionen anstelle von Join und GroupBy
FensterfunktionenSUM
oder MAX
arbeiten mit einer Gruppe von Zeilen und berechnen für jede Gruppe einen einzelnen Rückgabewert. Fensterfunktionen sind nützlich für die Verarbeitung von Aufgaben wie die Berechnung eines gleitenden Durchschnitts oder für den Zugriff auf den Wert von Zeilen auf der Grundlage der relativen Position der aktuellen Zeile.
Das Tool Spark groupBy
Die Funktion sammelt Daten in Gruppen und führt Aggregatfunktionen für die gruppierten Daten aus. Wenn Sie verwendengroupBy
, Spark aggregiert die Daten zunächst teilweise und mischt dann den reduzierten Datensatz. Wenn Sie Fensterfunktionen verwenden, wird der gesamte Datensatz gemischt. Fensterfunktionen können für schnellere Laufzeiten sorgen.
Bei sehr großen Datensätzen werden Fensterfunktionen empfohlen, wenn die Kardinalität der Spalte groß ist. Wenn die Kardinalität der Spalte jedoch klein ist, ist die Datenaggregation gering, und das aggregierte Ergebnis kann in der Verknüpfung übertragen werden.