Compartilhar via


Conectar-se ao Azure Databricks por meio do Microsoft Power Platform

Importante

Esse recurso está em Visualização Pública.

Esta página explica como se conectar ao Azure Databricks do Microsoft Power Platform adicionando o Azure Databricks como uma conexão de dados. Quando conectado, você pode usar seus dados do Azure Databricks das seguintes plataformas:

  • Power Apps: crie aplicativos que podem ler e gravar no Azure Databricks, preservando os controles de governança do Azure Databricks.
  • Power Automate: crie fluxos e adicione ações que habilitem a execução do SQL personalizado e obtenham de volta os resultados.
  • Copilot Studio: crie agentes personalizados usando seus dados do Azure Databricks como uma fonte de conhecimento.

Antes de começar

Antes de se conectar ao Azure Databricks do Power Platform, você deve atender aos seguintes requisitos:

  • Você tem uma conta do Microsoft Entra ID (anteriormente Azure Active Directory).
  • Você tem uma licença premium do Power Apps.
  • Você tem uma conta do Azure Databricks.
  • Você tem acesso a um SQL Warehouse no Azure Databricks.

Opcional: conectar-se com redes virtuais do Azure

Se o workspace do Azure Databricks usar redes virtuais, haverá duas maneiras de se conectar:

Opcional: crie uma entidade de serviço do Microsoft Entra

Importante

Se o Azure Databricks e o Power Platform estiverem em locatários diferentes, você deverá usar entidades de serviço para autenticação.

Antes de se conectar, conclua as seguintes etapas para criar, configurar e atribuir um Principal de Serviço do Microsoft Entra à sua conta ou espaço de trabalho do Azure Databricks.

Etapa 1: Adicionar uma conexão do Azure Databricks ao Power Platform

Observação

Se você estiver usando o Copilot Studio, o conector do Azure Databricks deverá ser definido usando o Power Apps ou o Power Automate. Em seguida, ele pode ser usado no Copilot Studio.

Para adicionar uma conexão do Azure Databricks, faça o seguinte:

  1. No Power Apps ou no Power Automate, na barra lateral, clique em Conexões.

  2. Clique em + Nova conexão no canto superior esquerdo.

  3. Pesquise "Azure Databricks" usando a barra de pesquisa no canto superior direito.

  4. Selecione o bloco do Azure Databricks.

  5. Selecione o Tipo de autenticação no menu suspenso.

  6. Selecione seu método de autenticação e insira suas informações de autenticação.

    • Se a implantação do Power Platform e a conta do Azure Databricks estiverem no mesmo locatário do Microsoft Entra, você poderá usar a conexão OAuth. Insira as seguintes informações:

      • Para Nome do Host do Servidor, insira o nome do host do SQL Warehouse do Azure Databricks.
      • Para o caminho HTTP, insira o caminho HTTP do SQL Warehouse.
      • Clique em Criar.
      • Entre com sua ID do Microsoft Entra.
    • Conexão da entidade de serviço pode ser usada em qualquer cenário. Antes de se conectar, crie uma entidade de serviço do Microsoft Entra. Insira as seguintes informações:

      • Para ID do Cliente, insira a ID da entidade de serviço.
      • Para Segredo do Cliente, insira o segredo da entidade de serviço.
      • Para Locatário, insira o locatário da entidade de serviço.
      • Para Nome do Host, insira o nome do host do SQL Warehouse do Azure Databricks.
      • Para o caminho HTTP, insira o caminho HTTP do SQL Warehouse.
      • (Opcional) Você pode renomear ou compartilhar a conexão da entidade de serviço com os membros da equipe após a criação da conexão.
    • Para localizar os detalhes da conexão do SQL Warehouse do Azure Databricks, consulte Obter detalhes de conexão para um recurso de computação do Azure Databricks.

  7. Clique em Criar.

Etapa 2: Usar a conexão do Azure Databricks

Depois de criar uma conexão do Azure Databricks no Power Apps ou no Power Automate, você pode usar seus dados do Azure Databricks para criar aplicativos de tela do Power, fluxos do Power Automate e agentes do Copilot Studio.

Use seus dados do Azure Databricks para construir aplicativos canvas do Power

Importante

Você só pode criar aplicativos de tela no Power Apps porque não é possível salvar tabelas do Azure Databricks.

Para adicionar seus dados do Azure Databricks ao seu aplicativo, faça o seguinte:

  1. Na barra de navegação mais à esquerda, clique em Criar.
  2. Clique em Iniciar com uma tela em branco e selecione o tamanho de tela desejado para criar um novo aplicativo de tela.
  3. Em seu aplicativo, clique em Adicionar conectores > de dados > do Azure Databricks. Selecione a conexão do Azure Databricks que você criou.
  4. Selecione um catálogo na barra lateral Escolher um conjunto de dados .
  5. Na barra lateral Escolher um dataset, selecione todas as tabelas às quais você deseja conectar seu aplicativo Canvas.
  6. Clique em Conectar.

Operações de dados no Power Apps:

O conector dá suporte a operações de criação, atualização e exclusão, mas apenas para tabelas que têm uma chave primária definida. Ao executar operações de criação, você deve sempre especificar a chave primária.

O Azure Databricks dá suporte a colunas de identidade geradas. Nesse caso, os valores de chave primária são gerados automaticamente no servidor durante a criação da linha e não podem ser especificados manualmente.

Usar seus dados do Azure Databricks para criar fluxos do Power Automate

Você pode escrever instruções SQL no Power Automate porque a API de Execução de Instrução do Azure Databricks é exposta no Power Automate. Para criar um fluxo do Power Automate usando o Azure Databricks como uma ação, faça o seguinte:

  1. Na barra de navegação mais à esquerda, clique em Criar.

  2. Crie um fluxo e adicione qualquer tipo de gatilho.

  3. No novo fluxo, clique + e pesquise "Databricks" para ver as ações disponíveis.

  4. Selecione a ação desejada nas quatro opções disponíveis:

    • Execute uma instrução SQL: escreva e execute uma instrução SQL. Insira o seguinte:

      • Para Body/warehouse_id, insira a ID do armazém sobre o qual a instrução SQL deve ser executada.
      • Para Body/statement_id, insira a ID da instrução SQL a ser executada.

      Para obter mais informações sobre os parâmetros avançados, consulte aqui.

    • Verificar o status e obter resultados: verifique o status de uma instrução SQL e colete os resultados. Insira o seguinte:

      • Para ID da Declaração, insira o ID retornado quando a declaração SQL foi executada.

      Para obter mais informações sobre o parâmetro, consulte aqui.

    • Cancele a execução de uma instrução: Encerrar a execução de uma instrução SQL. Insira o seguinte:

      • Para ID da instrução, insira a ID da instrução SQL a ser encerrada.

      Para obter mais informações sobre o parâmetro, consulte aqui.

    • Obter resultado por índice de partes: Obtenha resultados por índice de partes, que é adequado para grandes conjuntos de resultados. Insira o seguinte:

      • Para ID da Instrução SQL, insira o ID da instrução SQL cujos resultados você deseja obter.
      • Para Índice da parte, insira o índice da parte de destino.

      Para obter mais informações sobre os parâmetros, consulte aqui.

Usar o Azure Databricks como uma fonte de conhecimento no Copilot Studio

Para adicionar seus dados do Azure Databricks como uma fonte de conhecimento a um agente do Copilot Studio, faça o seguinte:

  1. Na barra lateral, clique em Agente.

  2. Selecione um agente existente ou crie um novo agente clicando em + Novo agente.

    • Descreva o agente inserindo uma mensagem e clique em Criar.
    • Ou clique em Ignorar para especificar manualmente as informações do agente.
  3. Na guia Conhecimento , clique em + Conhecimento.

  4. Clique em Avançado.

  5. Selecione o Azure Databricks como a fonte de conhecimento.

  6. Insira o nome do catálogo em que os dados estão.

  7. Clique em Conectar.

  8. Selecione as tabelas que você deseja que seu agente use como fonte de conhecimento e clique em Adicionar.

Realizar atualizações em lote

Se você precisar executar operações de criação, atualização ou exclusão em massa em resposta a entradas do Power Apps, o Databricks recomenda implementar um fluxo do Power Automate. Para realizar esta tarefa, faça o seguinte:

  1. Crie um aplicativo de tela usando sua conexão com o Azure Databricks no Power Apps.

  2. Crie um fluxo do Power Automate usando a conexão do Azure Databricks e defina o Power Apps como gatilho.

  3. No gatilho do Power Automate, adicione os campos de entrada que você deseja passar do Power Apps para o Power Automate.

  4. Crie um objeto de coleção no Power Apps para coletar todas as suas alterações.

  5. Adicione o fluxo do Power Automate ao aplicativo Canvas.

  6. Chame o fluxo do Power Automate pelo seu aplicativo de tela e itere pela coleção usando um comando ForAll.

    ForAll(collectionName, FlowName.Run(input field 1, input field 2, input field 3, …)
    

Gravações simultâneas

A simultaneidade no nível de linha reduz conflitos entre operações de gravação simultâneas, detectando alterações no nível da linha e resolvendo automaticamente conflitos que ocorrem quando gravações simultâneas atualizam ou excluem linhas diferentes no mesmo arquivo de dados.

A simultaneidade de nível de linha está disponível no Databricks Runtime 14.2 ou superior. A simultaneidade de nível de linha tem suporte por padrão para os seguintes tipos de tabelas:

  • Tabelas com vetores de exclusão habilitados e sem particionamento
  • Tabelas com agrupamento líquido, a menos que os vetores de exclusão estejam desabilitados

Para habilitar vetores de exclusão, execute o comando SQL a seguir.

ALTER TABLE table_name SET TBLPROPERTIES ('delta.enableDeletionVectors' = true);

Para obter mais informações sobre conflitos de gravação simultâneos no Azure Databricks, consulte níveis de isolamento e conflitos de gravação no Azure Databricks.

Limitações

  • O conector do Power Platform não dá suporte a nuvens governamentais.

Limitações do Power App

As fórmulas do PowerFx a seguir calculam valores usando apenas os dados que foram recuperados localmente:

Categoria Fórmula
Função Table
  • GroupBy
  • Distinct
Agregação
  • CountRows
  • StdevP
  • StdevS

Limitações do Power Automate

  • Os dados retornados de uma consulta do Power Automate não devem ser nulos, pois os conectores personalizados são baseados no OpenAPI 2.0 (Swagger 2.0), caso contrário, o Power Automate gera um erro.