Teilen über


Festlegen von Spark-Konfigurationseigenschaften in Azure Databricks

Sie können Spark-Konfigurationseigenschaften festlegen, um Einstellungen in Ihrer Computeumgebung anzupassen.

Databricks empfiehlt im Allgemeinen, die meisten Spark-Eigenschaften nicht zu konfigurieren. Insbesondere beim Migrieren von der Open-Source-Version von Apache Spark oder beim Aktualisieren von Databricks-Runtimeversionen können ältere Spark-Konfigurationen neue Standardverhaltensweisen außer Kraft setzen, die Workloads optimieren.

Für viele Verhaltensweisen, die von Spark-Eigenschaften gesteuert werden, bietet Azure Databricks auch Optionen zum Aktivieren des Verhaltens auf Tabellenebene oder zum Konfigurieren des benutzerdefinierten Verhaltens als Teil eines Schreibvorgangs. Beispielsweise wurde die Schemaentwicklung zuvor von einer Spark-Eigenschaft gesteuert, wird aber jetzt in SQL, Python und Scala abgedeckt. Siehe Schemaentwicklungssyntax für Merge.

Konfigurieren von Spark-Eigenschaften für Notebooks und Aufträge

Sie können Spark-Eigenschaften für Notebooks und Aufträge festlegen. Der Umfang der Konfiguration hängt davon ab, wie Sie sie festlegen.

Konfigurierte Eigenschaften: Gilt für:
Verwenden der Computekonfiguration Alle Notebooks und Aufträge werden mit der Computeressource ausgeführt.
Innerhalb eines Notebooks Nur die SparkSession für das aktuelle Notebook.

Anweisungen zum Konfigurieren von Spark-Eigenschaften auf Computeebene finden Sie unter Spark-Konfiguration.

Verwenden Sie die folgende Syntax, um eine Spark-Eigenschaft in einem Notebook festzulegen:

SQL

SET spark.sql.ansi.enabled = true

Python

spark.conf.set("spark.sql.ansi.enabled", "true")

Scala

spark.conf.set("spark.sql.ansi.enabled", "true")

Konfigurieren von Spark-Eigenschaften in Databricks SQL

Databricks SQL ermöglicht Administratoren das Konfigurieren von Spark-Eigenschaften für den Datenzugriff im Menü „Arbeitsbereichseinstellungen“. Siehe Datenzugriffskonfigurationen

Abgesehen von Datenzugriffskonfigurationen lässt Databricks SQL nur wenige Spark-Konfigurationen zu, die aus Gründen der Einfachheit einen kürzeren Namen als Alias erhalten haben. Weitere Informationen finden Sie unter Konfigurationsparameter.

Für die meisten unterstützten SQL-Konfigurationen können Sie das globale Verhalten in Ihrer aktuellen Sitzung außer Kraft setzen. Im folgenden Beispiel wird der ANSI-Modus deaktiviert:

SET ANSI_MODE = false

Konfigurieren von Spark-Eigenschaften für Lakeflow Spark Declarative Pipelines

Lakeflow Spark Declarative Pipelines ermöglicht Ihnen die Konfiguration von Spark-Eigenschaften für eine Pipeline, für eine Computeressource, die für eine Pipeline konfiguriert ist, oder für einzelne Flüsse, materialisierte Ansichten oder Streamingtabellen.

Sie können Pipeline- und Compute-Spark-Eigenschaften über die Benutzeroberfläche oder JSON festlegen. Siehe Konfigurieren von Pipelines.

Verwenden Sie die spark_conf Option in Lakeflow Spark deklarative Pipeline-Dekoratorfunktionen, um Spark-Eigenschaften für Flows, Ansichten oder Tabellen zu konfigurieren. Siehe Lakeflow Spark Declarative Pipelines Python-Sprachreferenz.

Konfigurieren von Spark-Eigenschaften für serverlose Notizbücher und Aufträge

Serverless Compute unterstützt das Festlegen der meisten Spark-Eigenschaften für Notizbücher oder Aufträge nicht. Im Folgenden sind die Eigenschaften aufgeführt, die Sie konfigurieren können:

Eigentum Standard Beschreibung
spark.databricks.execution.timeout 9000 (gilt nur für Notizbücher) Das Ausführungstimeout in Sekunden für Spark Connect-Abfragen. Der Standardwert gilt nur für Notizbuchabfragen. Für Aufträge, die auf serverlosem Compute ausgeführt werden (und Aufträge, die auf der klassischen Standardberechnung ausgeführt werden), gibt es kein Timeout, es sei denn, diese Eigenschaft ist festgelegt.
spark.sql.legacy.timeParserPolicy CORRECTED Richtlinie für den Zeitparser
spark.sql.session.timeZone Etc/UTC Die ID der lokalen Zeitzone der Sitzung im Format entweder regionsbasierter Zonen-IDs oder Zonenoffsets.
spark.sql.shuffle.partitions auto Die Standardanzahl der Partitionen, die beim Mischen von Daten für Verknüpfungen oder Aggregationen verwendet werden sollen.
spark.sql.ansi.enabled true Wenn wahr, verwendet Spark SQL einen ANSI-kompatiblen Dialekt, anstatt hive-kompatibel zu sein.
spark.sql.files.maxPartitionBytes 134217728 (128 MB) Die maximale Anzahl von Bytes, die beim Lesen von Dateien in eine einzelne Partition verpackt werden sollen.

Abrufen der aktuellen Einstellung für eine Spark-Konfiguration

Verwenden Sie die folgende Syntax, um die aktuelle Einstellung einer Spark-Konfiguration zu überprüfen:

spark.conf.get("configuration_name")