Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Você pode definir as propriedades de configuração do Spark (confs do Spark) para personalizar as configurações em seu ambiente de computação.
O Databricks geralmente não recomenda a configuração da maioria das propriedades do Spark. Especialmente ao migrar do Apache Spark de código aberto ou atualizar versões do Databricks Runtime, as configurações herdadas do Spark podem substituir novos comportamentos padrão que otimizam cargas de trabalho.
Para muitos comportamentos controlados por propriedades do Spark, o Azure Databricks também oferece opções para ativar comportamentos ao nível de uma tabela ou para configurar comportamentos personalizados como parte de uma operação de escrita. Por exemplo, a evolução do esquema era anteriormente controlada por uma propriedade Spark, mas agora tem cobertura em SQL, Python e Scala.
Veja MERGE com a evolução do esquema usando SQL, Python e Scala.
Configurar propriedades do Spark para blocos de anotações e trabalhos
Você pode definir propriedades do Spark para blocos de anotações e trabalhos. O escopo da configuração depende de como você a definiu.
| Propriedades configuradas | Aplica-se a |
|---|---|
| Usando a configuração de computação | Todos os cadernos e trabalhos são executados com os recursos computacionais. |
| Dentro de um caderno | Apenas o SparkSession para o bloco de notas atual. |
Para obter instruções sobre como configurar as propriedades do Spark no nível de computação, consulte Configuração do Spark.
Para definir uma propriedade Spark em um bloco de anotações, use a seguinte sintaxe:
SQL
SET spark.sql.ansi.enabled = true
Python
spark.conf.set("spark.sql.ansi.enabled", "true")
linguagem de programação Scala
spark.conf.set("spark.sql.ansi.enabled", "true")
Configurar propriedades do Spark no Databricks SQL
O Databricks SQL permite que os administradores configurem as propriedades do Spark para acesso a dados no menu de configurações do espaço de trabalho. Consulte as configurações de acesso a dados
Além das configurações de acesso a dados, o Databricks SQL permite apenas um punhado de configurações do Spark, que foram abreviadas para nomes mais curtos para simplificar. Consulte Parâmetros de configuração.
Para a maioria das configurações SQL com suporte, você pode substituir o comportamento global em sua sessão atual. O exemplo a seguir desativa o modo ANSI:
SET ANSI_MODE = false
Configurar propriedades do Spark para Lakeflow Spark Declarative Pipelines
O Lakeflow Spark Declarative Pipelines permite configurar as propriedades do Spark para um pipeline, para um recurso de computação configurado para um pipeline ou para fluxos individuais, exibições materializadas ou tabelas de streaming.
Você pode definir propriedades de pipeline e de computação do Spark usando a interface do utilizador ou JSON. Veja Configurar pipelines.
Use a opção spark_conf nas funções do decorador Lakeflow Spark Declarative Pipelines para configurar as propriedades do Spark para fluxos, vistas ou tabelas. Consulte Lakeflow Spark Declarative Pipelines referência da linguagem Python.
Configurar propriedades do Spark para blocos de anotações e trabalhos sem servidor
A computação serverless não suporta a definição da maioria das propriedades do Spark para blocos de notas ou tarefas. A seguir estão as propriedades que você pode configurar:
| Propriedade | Predefinição | Descrição |
|---|---|---|
spark.databricks.execution.timeout |
9000 (aplicável apenas a computadores portáteis) |
O tempo limite de execução, em segundos, para consultas do Spark Connect. O valor padrão só é aplicável para consultas de bloco de anotações. Os administradores do espaço de trabalho podem alterar a predefinição dos blocos de notas sem servidor nas definições de administração do espaço de trabalho. Veja proteção contra gastos excessivos sem servidores. Para trabalhos executados em computação sem servidor (e trabalhos executados em computação padrão clássica), não há tempo limite a menos que essa propriedade esteja definida. |
spark.sql.legacy.timeParserPolicy |
CORRECTED |
A política do analisador de tempo. |
spark.sql.session.timeZone |
Etc/UTC |
O ID do fuso horário local da sessão no formato de IDs de zonas baseadas em região ou deslocamentos de zona. |
spark.sql.shuffle.partitions |
auto |
O número padrão de partições usadas ao processar dados para junções ou agregações. |
spark.sql.ansi.enabled |
true |
Quando verdadeiro, o Spark SQL usa um dialeto compatível com ANSI em vez de ser compatível com Hive. |
spark.sql.files.maxPartitionBytes |
134217728 (128 MB) | O número máximo de bytes para empacotar em uma única partição ao ler arquivos. |
Propriedades Spark não suportadas
As seguintes propriedades de configuração do Spark não são suportadas no Azure Databricks. Propriedades Spark não suportadas são ignoradas pelo Azure Databricks ou podem causar conflitos e falhas quando usadas simultaneamente com funcionalidades do Azure Databricks. Se estiver a migrar cargas de trabalho para Azure Databricks, substitua propriedades não suportadas pelas alternativas recomendadas.
Note
Para além das propriedades aqui listadas, o modo de acesso padrão no Databricks Runtime 19 e superiores restringe certas propriedades de configuração do Spark. Criar ou editar um cluster que define uma propriedade restrita falha com um erro. Ver limitações de configuração do Spark.
| Propriedades Spark não suportadas | Aplica-se a | Alternativa aos Databricks |
|---|---|---|
spark.dynamicAllocation.enabledspark.dynamicAllocation.initialExecutorsspark.dynamicAllocation.minExecutorsspark.dynamicAllocation.maxExecutorsspark.dynamicAllocation.executorIdleTimeout |
Computação clássica | Em vez disso, configure o autoscaling do Azure Databricks, que gere o ciclo de vida dos executores a nível de plataforma. Veja Ativar o dimensionamento automático. |
spark.masterspark.driver.hostspark.driver.port |
Computação sem servidor e Pipelines Declarativos Spark do Lakeflow | A infraestrutura serverless do Azure Databricks gere automaticamente estas propriedades internas de ligação. Não podem ser definidas pelos utilizadores. Configurá-los para computação sem servidor ou para o Lakeflow Spark Declarative Pipelines gera um erro. |
spark.jars |
Computação sem servidor e Pipelines Declarativos Spark do Lakeflow | O Azure Databricks não suporta anexar ficheiros JAR à computação sem servidor nem ao Lakeflow Spark Declarative Pipelines através de configurações do Spark, mas pode executar tarefas JAR sem servidor. Consulte Configurar ambiente para tarefas de trabalho. |
spark.databricks.runtimeoptions.* |
Computação clássica | Use o runtime_options atributo na configuração do cluster em vez disso. As opções de runtime não podem ser definidas como configuração Spark em qualquer tipo de cluster. Tentar defini-los usando configurações do Spark resulta num erro. |
Obter a configuração atual para uma configuração do Spark
Use a sintaxe a seguir para revisar a configuração atual de uma configuração do Spark:
spark.conf.get("configuration_name")