Spark Submit (Vorversion)
Der Spark Submit-Vorgangsart ist ein Vorversionsmuster zum Konfigurieren von JARs als Aufgaben. Databricks empfiehlt die Verwendung der JAR-Aufgabe. Siehe JAR-Aufgaben für Jobs.
Anforderungen
- Sie können spark submit-Aufgaben nur für neue Cluster ausführen.
- Sie müssen Ihre JAR-Datei an einen Speicherort oder ein Maven-Repository hochladen, das mit Ihrer Compute-Konfiguration kompatibel ist. Weitere Informationen finden Sie unter Java- und Scala-Bibliotheksunterstützung.
- Sie können nicht auf JAR-Dateien zugreifen, die in Volumes gespeichert sind.
- „spark-submit“ unterstützt keine automatische Clusterskalierung. Weitere Informationen zur automatischen Skalierung finden Sie unter Automatische Clusterskalierung.
- „spark-submit” unterstützt keine Databricks-Hilfsprogramme (dbutils). Verwenden Sie stattdessen JAR-Aufgaben, um Databricks-Hilfsprogramme zu verwenden.
- Falls Sie einen Cluster mit Unity Catalog-Unterstützung verwenden, wird „spark-submit“ nur unterstützt, wenn der Cluster den Zugriffsmodus für Einzelbenutzer verwendet. Der Modus für gemeinsamen Zugriff wird nicht unterstützt. Weitere Informationen finden Sie unter Zugriffsmodi.
- Für strukturierte Streaming-Jobs sollte die maximale Anzahl gleichzeitiger Ausführungen nie auf einen Wert von mehr als 1 festgelegt werden. Streamingaufträge sollten so festgelegt werden, dass sie mithilfe des Cron-Ausdrucks
"* * * * * ?"
(jede Minute) ausgeführt werden. Da eine Streamingaufgabe kontinuierlich ausgeführt wird, sollte sie immer die letzte Task in einem Auftrag sein.
Konfigurieren einer Spark Submit-Aufgabe
Fügen Sie eine Spark Submit
-Aufgabe auf der Registerkarte Aufgaben in der Benutzeroberfläche Jobs hinzu, indem Sie wie folgt vorgehen:
- Wählen Sie im Dropdownmenü Typ die Option
Spark Submit
aus. - Verwenden Sie Compute, um einen Cluster zu konfigurieren, der die Logik Ihrer Aufgabe unterstützt.
- Verwenden Sie das Textfeld Parameter, um alle Argumente und Konfigurationen bereitzustellen, die zum Ausführen Ihrer Aufgabe als JSON-Matrix von Zeichenketten erforderlich sind.
Die ersten drei Argumente werden verwendet, um die Hauptklasse zu identifizieren, die in einem JAR auf einem angegebenen Pfad ausgeführt werden soll, wie im folgenden Beispiel:
["--class", "org.apache.spark.mainClassName", "dbfs:/Filestore/libraries/jar_path.jar"]
Sie können die Einstellungen
master
,deploy-mode
undexecutor-cores
, die von Azure Databricks konfigurierten sind, nicht außer Kraft setzenVerwenden Sie
--jars
und--py-files
, um abhängige Java-, Scala- und Python-Bibliotheken hinzuzufügen.Verwenden Sie
--conf
, um Spark-Konfigurationen festzulegen.Die Argumente
--jars
,--py-files
und--files
unterstützen DBFS-Pfade.Der spark submit-Auftrag verwendet standardmäßig den gesamten verfügbaren Arbeitsspeicher mit Ausnahme des für Azure Databricks-Dienste reservierten Arbeitsspeichers. Sie können
--driver-memory
und--executor-memory
auf einen kleineren Wert festlegen, um etwas Puffer für die Verwendung außerhalb des Heaps zu haben.
- Klicken Sie auf Aufgabe speichern.