Spark-configuratie-eigenschappen instellen in Azure Databricks
U kunt Spark-configuratie-eigenschappen (Spark-confs) instellen om instellingen in uw rekenomgeving aan te passen.
Databricks raadt over het algemeen af om de meeste Spark-eigenschappen te configureren. Met name bij het migreren van opensource Apache Spark of het upgraden van Databricks Runtime-versies, kunnen verouderde Spark-configuraties het nieuwe standaardgedrag overschrijven waarmee workloads worden geoptimaliseerd.
Voor veel gedragingen die worden beheerd door Spark-eigenschappen, biedt Azure Databricks ook opties voor het inschakelen van gedrag op tabelniveau of het configureren van aangepast gedrag als onderdeel van een schrijfbewerking. De ontwikkeling van schema's werd bijvoorbeeld eerder beheerd door een Spark-eigenschap, maar heeft nu dekking in SQL, Python en Scala. Zie schema-evolutiesyntaxis voor samenvoegen.
Spark-eigenschappen configureren voor notebooks en jobs
U kunt Spark-eigenschappen instellen voor notebooks en jobs. Het bereik van de configuratie is afhankelijk van hoe u deze instelt.
Geconfigureerde eigenschappen: | Van toepassing op: |
---|---|
Berekeningsconfiguratie gebruiken | Alle notebooks en taken worden uitgevoerd met de rekenkracht. |
Binnen een notitieblok | Alleen de SparkSession voor het huidige notebook. |
Zie de Spark-configuratie voor instructies over het configureren van Spark-eigenschappen op rekenniveau.
Gebruik de volgende syntaxis om een Spark-eigenschap in een notebook in te stellen:
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")
Spark-eigenschappen configureren in Databricks SQL
Met Databricks SQL kunnen beheerders Spark-eigenschappen configureren voor gegevenstoegang in het instellingenmenu van de werkruimte. Zie configuraties voor gegevenstoegang
Behalve configuraties voor gegevenstoegang staat Databricks SQL slechts een handvol Spark-confs toe, die zijn gealiaseerd naar kortere namen voor het gemak. Zie Configuratieparameters.
Voor de meeste ondersteunde SQL-configuraties kunt u het globale gedrag in uw huidige sessie overschrijven. In het volgende voorbeeld wordt de ANSI-modus uitgeschakeld:
SET ANSI_MODE = false
Spark-eigenschappen configureren voor DLT-pijplijnen
Met DLT kunt u Spark-eigenschappen configureren voor een pijplijn, voor één rekenresource die is geconfigureerd voor een pijplijn, of voor afzonderlijke stromen, gerealiseerde weergaven of streamingtabellen.
U kunt pijplijn- en reken-Spark-eigenschappen instellen met behulp van de gebruikersinterface of JSON. Zie Een DLT-pijplijn configureren.
Gebruik de optie spark_conf
in DLT-decoratorfuncties om Spark-eigenschappen te configureren voor stromen, weergaven of tabellen. Zie Eigenschappen van Python DLT.
Spark-eigenschappen configureren voor serverloze notebooks en taken
Serverloze rekenkracht biedt geen ondersteuning voor het instellen van de meeste Spark-eigenschappen voor notebooks of opdrachten. Hier volgen de eigenschappen die u kunt configureren:
Eigenschap | Verstek | Beschrijving |
---|---|---|
spark.databricks.execution.timeout |
9000 |
De time-out voor uitvoering, in seconden, voor Spark Connect-query's. De standaardwaarde is alleen van toepassing op notebooks die draaien op serverloze compute. Voor taken die worden uitgevoerd op serverloze berekeningen en berekeningen met de standaardtoegangsmodus, is er geen time-out, tenzij deze eigenschap is ingesteld. |
spark.sql.legacy.timeParserPolicy |
EXCEPTION |
Het tijdparserbeleid. |
spark.sql.session.timeZone |
Etc/UTC |
De ID van de lokale tijdzone van de sessie in de indeling van zone-ID's gebaseerd op regio's of zone-offsets. |
spark.sql.shuffle.partitions |
auto |
Het standaardaantal partities dat moet worden gebruikt bij het opsnipperen van gegevens voor joins of aggregaties. |
spark.sql.ansi.enabled |
true |
Wanneer waar, gebruikt Spark SQL een ANSI-compatibel dialect in plaats van hive-compatibel te zijn. |
de huidige instelling voor een Spark-configuratie ophalen
Gebruik de volgende syntaxis om de huidige instelling van een Spark-configuratie te controleren:
spark.conf.get("configuration_name")