Compartilhar via


Adicionar um recurso do Lakebase a um aplicativo do Databricks

Adicione instâncias de banco de dados do Lakebase como recursos do Databricks Apps para persistir dados entre implantações. Esses recursos com suporte do PostgreSQL permitem que seu aplicativo crie e gerencie esquemas e tabelas que retêm o estado.

Importante

As instâncias de banco de dados do Lakebase estão em Visualização Pública. O administrador do workspace deve habilitá-los antes de adicioná-los como um recurso de aplicativo.

Adicionar um recurso de banco de dados

Antes de adicionar uma instância de banco de dados do Lakebase como um recurso, examine os pré-requisitos do recurso de aplicativo.

  1. Ao criar ou editar um aplicativo, navegue até a etapa Configurar.
  2. Na seção Recursos do aplicativo, clique em + Adicionar recurso.
  3. Selecione Banco de Dados como o tipo de recurso.
  4. Escolha uma instância de banco de dados.
  5. Escolha um banco de dados nessa instância.
  6. Selecione o nível de permissão apropriado para seu aplicativo. Atualmente, a única permissão disponível é Pode se conectar e criar.
  7. (Opcional) Especifique uma chave de recurso personalizada, que é como você faz referência ao banco de dados na configuração do aplicativo. A chave padrão é database.

Quando você adiciona um recurso de banco de dados:

  • O Azure Databricks cria uma função PostgreSQL na instância de banco de dados selecionada. O nome da função corresponde ao ID do cliente da entidade de serviço. Se a função já existir, o Azure Databricks a reutilizará.
  • O Azure Databricks concede à entidade de serviço CONNECT e CREATE privilégios no banco de dados selecionado. Esses privilégios permitem que o aplicativo crie esquemas e tabelas no banco de dados.

Variáveis de ambiente

Quando você implanta um aplicativo com um recurso de banco de dados, o Azure Databricks define as variáveis de ambiente a seguir para o primeiro recurso de banco de dados.

Se o aplicativo usar vários bancos de dados, essas variáveis refletirão apenas a primeira. Use valueFrom com a chave de recurso para recuperar o nome do host do banco de dados. Consulte Usar variáveis de ambiente para acessar recursos.

Variável Descrição
PGAPPNAME Nome do aplicativo
PGDATABASE Nome do banco de dados
PGHOST Nome do host do servidor PostgreSQL
PGPORT Porta para o servidor PostgreSQL
PGSSLMODE Modo SSL para a conexão
PGUSER ID do cliente e nome da função da entidade de serviço

Remover um recurso de banco de dados

Se você remover recursos de banco de dados de um aplicativo, o aplicativo tentará reatribuir todos os objetos pertencentes à entidade de serviço para o usuário que remove o recurso.

A lógica que o aplicativo usa depende principalmente se você tem uma função na instância do banco de dados:

Suas permissões Função na instância do banco de dados? Resultado
CAN MANAGE Sim O Azure Databricks reatribui todos os objetos pertencentes ao principal de serviço para você e exclui a função do principal de serviço.
CAN MANAGE Não O Azure Databricks cria uma função para você, reatribui todos os objetos pertencentes à função da entidade de serviço para você e exclui a função da entidade de serviço.
Não CAN MANAGE Não aplicável O Azure Databricks remove o recurso, mas não exclui a função ou reatribui a propriedade. Um aviso aparece na interface do usuário e você deve limpar manualmente a função e os objetos de propriedade posteriormente.

Anotações

Considere o seguinte ao adicionar bancos de dados como recursos de aplicativo:

  • Se você revogar CONNECT e CREATE de um banco de dados e concedê-los em outro na mesma atualização, o Azure Databricks atualizará os privilégios, mas não recriará a função da entidade de serviço.
  • Os bancos de dados persistem o estado. Todos os esquemas ou tabelas criados por um aplicativo permanecem mesmo após você implantar novamente ou parar o aplicativo.