Bei Verwendung von Spark-Submit gibt es mehrere Optionen zum Hinzufügen von JAR-Dateien zu einem Spark-Job, jeweils mit seine eigenen Auswirkungen auf Klassenpfad, Dateiverteilung und Priorität.
Spark-Submit beeinflusst ClassPaths durch diese Optionen:
Damit eine Datei auf beiden eingebunden werden kann ClassPaths, es muss in beiden Flags angegeben werden.
Die Dateiverteilung hängt vom Ausführungsmodus ab:
Spark-Submit unterstützt die folgenden URI-Präfixe für Dateiverteilung:
Die in der Frage genannten Optionen wirken sich wie folgt auf die JAR-Dateiverarbeitung aus:
Eigenschaften, die direkt auf SparkConf festgelegt werden, haben die höchste Priorität, gefolgt von Spark-Submit-Flags und dann Optionen in spark-defaults.conf. Daher überschreiben alle im Code festgelegten Werte die entsprechenden Flags oder Optionen.
Im Client-Modus ist es sicher, JAR-Dateien mit allen drei Hauptoptionen hinzuzufügen:
spark-submit --jars additional1.jar,additional2.jar \ --driver-class-path additional1.jar:additional2.jar \ --conf spark.executor.extraClassPath=additional1.jar:additional2.jar \ --class MyClass main-application.jar
Im Cluster-Modus sollten Sie Dateien jedoch nur mit --jars hinzufügen und diese selbst manuell an die Worker-Knoten verteilen. Redundante Argumente wie die Übergabe von JAR-Dateien an --driver-library-path sollten vermieden werden.
Das obige ist der detaillierte Inhalt vonWie werden JAR-Dateien mithilfe von Spark-Submit zu einem Spark-Job hinzugefügt, und welche unterschiedlichen Optionen und Überlegungen gibt es dafür?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!