Wenn Spark Quelldaten aus einer Datei in einen DataFrame lädt, hängt es von den Faktoren ab, ob die Daten vollständig in den Speicher eines einzelnen Knotens (höchstwahrscheinlich der Treiber/Master-Knoten) oder in die für die Berechnung erforderlichen minimalen, parallelen Teilmengen geladen werden auf den Arbeiter/Executor-Knoten)? Wenn Sie Parquet als Eingabeformat und das Laden über die Spark DataFrame-API verwenden, sind Überlegungen erforderlich, um sicherzustellen, dass das Laden aus der Parquet-Datei parallelisiert und an die Executoren übertragen wird Spalten benötigt für die Berechnung auf dem betreffenden Executor-Knoten?Wie kann sichergestellt werden, dass das Laden von Spark DataFrame von Parquet verteilt und parallelisiert wird?
(Such den Mechanismus Funken verwendet planen Laden von Quelldaten in dem verteilten Ausführungsplan, um zu vermeiden, anstrengende Speicher auf einem Knoten durch das Laden des vollständigen Datensatz. Verstehen)