Partilhar via


Definir variáveis de ambiente em um aplicativo Databricks

O Azure Databricks define automaticamente certas variáveis de ambiente no ambiente de execução da aplicação. Essas variáveis fornecem informações essenciais sobre o aplicativo e o espaço de trabalho e são acessíveis a todos os aplicativos Databricks por padrão. Para uma lista de variáveis padrão, consulte Ambiente de Aplicações Databricks.

Se seu aplicativo exigir variáveis de ambiente adicionais, defina-as no arquivo de configuração app.yaml na env seção . Cada variável requer um nome e um valor. As variáveis podem usar um valor codificado ou fazer referência a uma fonte externa.

Por exemplo:

env:
  - name: LOG_LEVEL
    value: 'debug'

Apenas inclua valores codificados quando são estáticos, não sensíveis e consistentes em todos os ambientes. Exemplos incluem value: "true" alternâncias de funcionalidades, value: "us-west" regiões fixas ou value: "UTC" fusos horários padrão.

Importante

Para manter a sua aplicação segura e portátil, nunca faça referência a chaves secretas ou outros valores sensíveis diretamente na configuração da sua aplicação. Por exemplo, evite incorporar valores secretos value no campo de uma variável de ambiente ou diretamente no código-fonte. Em vez disso, use o valueFrom campo para fazer referência segura a segredos e outros recursos gerenciados definidos em seu bloco de recursos. Isto garante que os segredos são recuperados do Azure Databricks em tempo de execução e nunca são expostos em texto simples nos seus ficheiros de configuração.

Usar variáveis de ambiente para acessar recursos

Se definir recursos da aplicação, como armazenamentos SQL ou segredos, referencie esses recursos na seção env do seu arquivo app.yaml usando o campo valueFrom. Isso conecta variáveis de ambiente em seu aplicativo às chaves de recurso definidas em resources.

Exemplo app.yaml de trecho:

env:
  - name: WAREHOUSE_ID
    valueFrom: sql_warehouse

  - name: SECRET_KEY
    valueFrom: secret

Em seguida, no código do aplicativo, acesse-os como variáveis de ambiente:

Python

import os

warehouse_id = os.getenv("WAREHOUSE_ID")
secret_value = os.getenv("SECRET_KEY")

JavaScript

const warehouseId = process.env.WAREHOUSE_ID;
const secretValue = process.env.SECRET_KEY;

valueFrom referência

A tabela seguinte mostra o valor a que valueFrom se resolve para cada tipo de recurso.

Tipo de recurso Valor resolvido Exemplo
Aplicação Databricks Nome do aplicativo my-app
Espaço Genie ID do espaço 01ef1fa2b3c45678
Base de dados Lakebase Autoscaling Caminho do ponto final projects/my-project/branches/main/endpoints/ep123
Base de dados Lakebase Provisioned Host postgres-host.example.com
Trabalho Lakeflow ID do trabalho 123456789
Experiência MLflow ID do experimento 456789012
Endpoint de disponibilização de modelo Nome do ponto final my-serving-endpoint
Segredo Valor secreto desencriptado (O Valor Secreto)
Armazém SQL ID do Armazém a1b2c3d4e5f67890
Ligação ao Catálogo Unity Nome da conexão my_connection
Tabela do Catálogo Unity Nome completo da tabela catalog.schema.table
Volume do catálogo Unity Caminho de volume /Volumes/catalog/schema/volume
Função definida pelo utilizador Nome completo da função catalog.schema.my_function
Índice de pesquisa vetorial Nome completo do índice catalog.schema.my_index

Próximos passos