Use os dados do Azure Databricks na Microsoft Power Platform

Esta página explica como usar os seus dados Azure Databricks das seguintes plataformas após criar uma ligação:

  • Power Apps: crie aplicativos que podem ler e gravar no Azure Databricks, preservando seus controles de governança do Azure Databricks.
  • Power Automate: crie fluxos e adicione ações que permitam executar SQL personalizado ou um trabalho existente e recupere os resultados.
  • Copilot Studio: Constrói agentes personalizados usando os teus dados de Azure Databricks como fonte de conhecimento ou liga Genie Spaces como ferramentas. Veja Usar os dados do Azure Databricks no Microsoft Copilot Studio.

Pré-requisitos

Antes de se ligar ao Azure Databricks a partir da Power Platform, deve criar uma ligação ao Azure Databricks na Microsoft Power Platform.

Usar seus dados do Azure Databricks para criar aplicativos Power canvas

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

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

Operações de dados no Power Apps:

O conector suporta 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ê sempre deve 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

A API de Execução de Instruções do Azure Databricks e a API de Trabalhos são expostas no Power Automate, permitindo que você escreva instruções SQL e execute Trabalhos existentes. 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 no Power Automate, clique em Criar.

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

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

  4. Para escrever uma consulta SQL, selecione uma das seguintes ações:

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

      • Para Body/warehouse_id, insira a ID do depósito no qual executar a instrução SQL.
      • Em Body/statement_id, insira a ID da instrução SQL a ser executada.

      Para saber mais sobre parâmetros avançados, consulte a documentação da API.

    • Verifique o status e obtenha resultados: verifique o status de uma instrução SQL e reúna resultados. Insira o seguinte:

      • Para ID da instrução, insira a ID retornada quando a instrução SQL foi executada.

      Para mais informações sobre o parâmetro, consulte a documentação da API.

    • Cancelar a execução de uma declaraçã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 mais informações sobre o parâmetro, consulte a documentação da API.

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

      • Para ID da instrução, insira a ID da instrução SQL cujos resultados você deseja recuperar.
      • Para Índice de blocos, insira o índice de bloco de destino.

      Para mais informações sobre os parâmetros, consulte a documentação da API.

  5. Para interagir com um Trabalho do Azure Databricks existente, selecione uma das seguintes ações:

    • Listar vagas: Recupera uma lista de trabalhos. Para mais informações, consulte a documentação da API.
    • Acione uma nova execução de trabalho: Executa um trabalho e retorna o run_id da execução acionada. Para mais informações, consulte a documentação da API.
    • Obtenha uma única execução de trabalho: Retorna metadados sobre uma execução, incluindo status da execução (por exemplo, RUNNING, , SUCCESSFAILED), hora de início e fim, durações de execução, informações de cluster e assim por diante. Para mais informações, consulte a documentação da API.
    • Cancelar uma execução: Cancela uma execução de trabalho ou de tarefa. Para mais informações, consulte a documentação da API.
    • Obtenha a saída para uma única execução: Recupera a saída e os metadados de um único trabalho ou tarefa executada. Para mais informações, consulte a documentação da API.

Criar tabelas virtuais do Dataverse com seus dados do Azure Databricks

Você também pode criar tabelas virtuais Dataverse com o conector Azure Databricks. As tabelas virtuais, também conhecidas como entidades virtuais, integram dados de sistemas externos com o Microsoft Dataverse. Uma tabela virtual define uma tabela no Dataverse sem armazenar a tabela física no banco de dados Dataverse. Para saber mais sobre tabelas virtuais, consulte Introdução às tabelas virtuais (entidades).

Note

Embora as tabelas virtuais não consumam a capacidade de armazenamento do Dataverse, a Databricks recomenda o uso de ligações diretas para melhor desempenho.

Você deve ter a função Personalizador do Sistema ou Administrador do Sistema. Para obter mais informações, consulte funções de segurança para Power Platform.

Siga estas etapas para criar uma tabela virtual Dataverse:

  1. Em Power Apps, na barra lateral, clique em Tabelas.
  2. Clique em + Nova tabela na barra de menus e selecione Criar uma tabela virtual.
  3. Selecione uma conexão existente do Azure Databricks ou crie uma nova conexão com o Azure Databricks. Para adicionar uma nova ligação, consulte Criar uma ligação Azure Databricks na Microsoft Power Platform.
    • A Databricks recomenda utilizar uma conexão de principal de serviço para criar uma tabela virtual.
  4. Clique em Next.
  5. Selecione as tabelas a serem representadas como uma tabela virtual do Dataverse.

    Note

    As tabelas virtuais Dataverse requerem uma chave primária. A chave deve ser um GUID (string), bigInt ou um inteiro. As vistas não podem ser tabelas virtuais, mas as vistas materializadas podem ser.

  6. Clique em Next.
  7. Configure a tabela virtual atualizando os detalhes da tabela, se necessário.
  8. Clique em Next.
  9. Confirme os detalhes da fonte de dados e clique em Concluir.
  10. Utilize a tabela virtual do Dataverse no Power Apps, Power Automate e no Copilot Studio.

Para obter uma lista de limitações conhecidas das tabelas virtuais do Dataverse, consulte Limitações conhecidas e solução de problemas.

Você deve usar tabelas virtuais ou uma conexão direta?

As tabelas virtuais Dataverse e uma conexão direta oferecem diferentes vantagens. O método escolhido depende do seu caso de uso. A tabela abaixo resume as principais capacidades de cada método.

Método de acesso aos dados Passagem de credenciais do usuário final via OAuth Cópia zero Leitura Gravar no Azure Databricks Aplicativos Canvas Aplicações orientadas por modelos
Ligação direta
Tabelas virtuais do Dataverse

Realizar atualizações em lote

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

  1. Crie uma aplicação de tela utilizando a sua ligação ao Azure Databricks nos Power Apps.

  2. Crie um fluxo do Power Automate usando a conexão do Azure Databricks com o Power Apps como disparador.

  3. No gatilho Power Automate, adicione os campos de entrada que pretende 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 à sua aplicação de canvas.

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

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

Gravações simultâneas

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

A simultaneidade em nível de linha está incluída no Databricks Runtime 14.2 ou superior. A simultaneidade em nível de linha é suportada 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 seguinte comando SQL.

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

Para mais informações sobre conflitos de escrita concorrentes no Azure Databricks, veja Níveis de isolamento e conflitos de escrita.

Limitations

Limitações do Power Apps

As seguintes fórmulas PowerFx calculam valores usando apenas os dados recolhidos localmente:

Categoria Formula
Função de Tabela
  • AgruparPor
  • Distinto
Agregação
  • CountRows
  • StdevP
  • StdevS