Ange Spark-konfigurationsegenskaper på Azure Databricks
Du kan ange Spark-konfigurationsegenskaper (Spark-konfigurationer) för att anpassa inställningarna i din beräkningsmiljö.
Databricks rekommenderar vanligtvis att du inte konfigurerar de flesta Spark-egenskaper. Särskilt när du migrerar från Apache Spark med öppen källkod eller uppgraderar Databricks Runtime-versioner kan äldre Spark-konfigurationer åsidosätta nya standardbeteenden som optimerar arbetsbelastningar.
För många beteenden som styrs av Spark-egenskaper tillhandahåller Azure Databricks också alternativ för att antingen aktivera beteende på tabellnivå eller för att konfigurera anpassat beteende som en del av en skrivåtgärd. Schemautvecklingen kontrollerades till exempel tidigare av en Spark-egenskap, men har nu täckning i SQL, Python och Scala. Se Syntax för schemautveckling vid sammanslagning.
Konfigurera Spark-egenskaper för notebookar och jobb
Du kan ange Spark-egenskaper för anteckningsböcker och uppgifter. Omfånget för konfigurationen beror på hur du ställer in den.
Konfigurerade egenskaper: | Gäller för: |
---|---|
Använda beräkningskonfigurationen | Alla notebook-filer och jobb körs med beräkningsresursen. |
I en anteckningsbok | Endast SparkSession för den aktuella notebooken. |
Anvisningar om hur du konfigurerar Spark-egenskaper på beräkningsnivå finns i Spark-konfiguration.
Om du vill ange en Spark-egenskap i en notebook-fil använder du följande syntax:
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")
Konfigurera Spark-egenskaper i Databricks SQL
Med Databricks SQL kan administratörer konfigurera Spark-egenskaper för dataåtkomst på menyn för arbetsyteinställningar. Se konfigurationer för dataåtkomst
Förutom konfigurationer för dataåtkomst tillåter Databricks SQL bara en handfull Spark-konfigurationer, som har aliaserats till kortare namn för enkelhetens skull. Se Konfigurationsparametrar.
För de flesta SQL-konfigurationer som stöds kan du åsidosätta det globala beteendet i den aktuella sessionen. I följande exempel inaktiveras ANSI-läge:
SET ANSI_MODE = false
Konfigurera Spark-egenskaper för DLT-pipelines
Med DLT kan du konfigurera Spark-egenskaper för en pipeline, för en beräkningsresurs som konfigurerats för en pipeline eller för enskilda flöden, materialiserade vyer eller strömmande tabeller.
Du kan ange egenskaper för pipeline och beräkning av Spark med hjälp av användargränssnittet eller JSON. Se till Konfigurera en DLT-pipeline.
Använd alternativet spark_conf
i DLT-dekoratörsfunktioner för att konfigurera Spark-egenskaper för flöden, vyer eller tabeller. Se Python DLT-egenskaper.
Konfigurera Spark-egenskaper för serverlösa notebooks och jobb
Severless compute stöder inte inställning av de flesta Spark-egenskaper för notebook-filer eller jobb. Följande är de egenskaper som du kan konfigurera:
Egenskap | Förvalt | Beskrivning |
---|---|---|
spark.databricks.execution.timeout |
9000 |
Tidsgränsen i sekunder för körning av Spark Connect-frågor. Standardvärdet gäller endast för anteckningsböcker som körs på serverlös beräkning. För jobb som körs på serverlös beräkning och beräkning med standardåtkomstläge finns det ingen tidsgräns om inte den här egenskapen har angetts. |
spark.sql.legacy.timeParserPolicy |
EXCEPTION |
Tidsparser-policyn. |
spark.sql.session.timeZone |
Etc/UTC |
ID:t för sessionslokal tidszon i formatet för antingen regionbaserade zon-ID:er eller zonförskjutningar. |
spark.sql.shuffle.partitions |
auto |
Standardantalet partitioner som ska användas när data blandas för kopplingar eller sammansättningar. |
spark.sql.ansi.enabled |
true |
När det är sant använder Spark SQL en ANSI-kompatibel dialekt i stället för att vara Hive-kompatibel. |
Hämta den aktuella inställningen för en Spark-konfiguration
Använd följande syntax för att granska den aktuella inställningen för en Spark-konfiguration:
spark.conf.get("configuration_name")