Aller au contenu principal

Utiliser les données Databricks sur Microsoft Power Platform

Cette page explique comment utiliser vos données Databricks à partir des plateformes suivantes après avoir créé une connexion :

  • Power Apps : Créez des applications pouvant lire et écrire sur Databricks, tout en préservant vos contrôles de gouvernance Databricks.
  • **Power Automate** : Créez des flux et ajoutez des actions qui permettent d'exécuter des requêtes SQL personnalisées ou un Job existant et de récupérer les résultats.
  • Copilot Studio : Créez des agents personnalisés en utilisant vos données Databricks comme source de connaissances ou connectez les agents Genie comme outils. Voir comment utiliser les données Databricks dans Microsoft Copilot Studio.

Prérequis

Avant de vous connecter à Databricks depuis Power Platform, vous devez créer une connexion à Databricks sur Microsoft Power Platform.

Utilisez vos données Databricks pour créer des applications Power canvas.

Pour ajouter vos données Databricks à votre application, effectuez les opérations suivantes :

  1. Dans la barre de navigation la plus à gauche de Power Apps, cliquez sur Créer .
  2. Cliquez sur start avec un canevas vide et choisissez la taille de canevas souhaitée pour créer une nouvelle application de canevas.
  3. Depuis votre application, cliquez sur **Ajouter des données > Connecteurs > Databricks**. Cliquez sur la connexion Databricks que vous avez créée.
  4. Sélectionnez un catalogue dans la barre latérale **Choisir un dataset**.
  5. Dans la barre latérale Choisir un dataset , sélectionnez toutes les tables auxquelles vous souhaitez connecter votre application canevas.
  6. Cliquez sur Connecter .

Opérations de données dans Power Apps :

Le connecteur prend en charge les Opérations de création, de mise à jour et de suppression, mais uniquement pour les tables dont une clé primaire est définie. Lors de l’exécution d’Opérations de création, vous devez toujours spécifier la clé primaire.

Databricks prend en charge les colonnes d'identité générées. Dans ce cas, les valeurs de clé primaire sont générées automatiquement sur le serveur lors de la création des lignes et ne peuvent pas être spécifiées manuellement.

Utilisez vos données Databricks pour créer des flux Power Automate

L'API Databricks Statement Execution et l'API Jobs sont exposées dans Power Automate, vous permettant d'écrire des instructions SQL et d'exécuter des Jobs existants. Pour créer un flux Power Automate en utilisant Databricks comme action, procédez comme suit :

  1. Dans la barre de navigation la plus à gauche de Power Automate, cliquez sur **Créer**.

  2. Créez un flux et ajoutez n'importe quel type de Trigger.

  3. Depuis votre nouveau flux, cliquez sur + et recherchez "Databricks" pour voir les actions disponibles.

  4. Pour écrire une requête SQL, sélectionnez l'une des actions suivantes :

    • Exécutez une instruction SQL : Écrivez et exécutez une instruction SQL. Saisissez les informations suivantes :

      • Pour Body/warehouse_id , saisissez l'identifiant du warehouse sur lequel exécuter l'instruction SQL.
      • Pour Body/statement_id , saisissez l'ID de l'instruction SQL à exécuter.

      Pour en savoir plus sur les paramètres avancés, consultez la documentation de l'API.

    • **Vérifiez l'état et obtenez les résultats** : Vérifiez l'état d'une instruction SQL et recueillez les résultats. Saisissez les informations suivantes :

      • Pour l' identifiant de l’instruction , saisissez l'ID renvoyé lors de l'exécution de l'instruction SQL.

      Pour en savoir plus sur le paramètre, consultez la documentation de l’API.

    • **Annuler l’exécution d’une instruction :** Mettre fin à l’exécution d’une instruction SQL. Saisissez les informations suivantes :

      • Pour Identifiant de l'instruction , veuillez entrer l'identifiant de l'instruction SQL à arrêter.

      Pour en savoir plus sur le paramètre, consultez la documentation de l’API.

    • Obtenir le résultat par index de bloc : Obtenez les résultats par index de bloc, ce qui convient aux grands ensembles de résultats. Saisissez les informations suivantes :

      • Pour Statement ID , saisissez l'ID de l'instruction SQL dont vous souhaitez récupérer les résultats.
      • Pour l' index de segment , saisissez l'index de segment cible.

      Pour en savoir plus sur les parameters, consultez la documentation de l'API.

  5. Pour interagir avec un Job Databricks existant, sélectionnez l'une des actions suivantes :

    • Lister les jobs : récupère une liste de jobs. Pour plus d'informations, consultez la documentation de l'API.
    • Trigger un nouveau job : exécute un job et renvoie le run_id de l'exécution déclenchée. Pour plus d'informations, consultez la documentation de l'API.
    • Obtenir une exécution de job unique : Renvoie les métadonnées concernant une exécution, y compris le statut de l'exécution (par exemple, RUNNING, SUCCESS, FAILED), l'heure de start et de fin, les durées d'exécution, les informations sur le cluster, etc. Pour plus d'informations, consultez la documentation de l'API.
    • **Annuler une exécution :** Annule l'exécution d'un job ou l'exécution d'une tâche. Pour plus d'informations, consultez la documentation de l'API.
    • **Obtenir la sortie d'une seule exécution :** Récupère la sortie et les métadonnées d'une seule exécution de Job ou de tâche. Pour plus d'informations, consultez la documentation de l'API.

Effectuer des mises à jour par batch

Si vous avez besoin d'effectuer des opérations de création, de mise à jour ou de suppression en masse en réponse aux entrées Power Apps, Databricks recommande de mettre en œuvre un flux Power Automate. Pour ce faire, procédez comme suit :

  1. Créez une application canevas en utilisant votre connexion Databricks dans Power Apps.

  2. Créez un flux Power Automate en utilisant la connexion Databricks et utilisez Power Apps comme Trigger.

  3. Dans le trigger Power Automate, ajoutez les champs d’entrée que vous souhaitez transmettre de Power Apps à Power Automate.

  4. Créez un objet de collection dans Power Apps pour collecter toutes vos modifications.

  5. Ajouter le flux Power Automate à votre application toile.

  6. Appelez le flux Power Automate depuis votre application canevas et itérez sur la collection à l'aide d'une commande ForAll.

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

Écritures simultanées

La concurrence au niveau des lignes réduit les conflits entre les Opérations d'écriture concurrentes en détectant les modifications au niveau des lignes et en résolvant automatiquement les conflits qui surviennent lorsque des écritures concurrentes mettent à jour ou suppriment différentes lignes dans le même fichier de données.

La concurrence au niveau des lignes est incluse dans Databricks Runtime 14.2 ou supérieur. La concurrence au niveau des lignes est prise en charge par default pour les types de tables suivants :

  • Tables avec vecteurs de suppression activés et sans partitionnement
  • Tables avec clustering liquide, à moins que les vecteurs de suppression ne soient désactivés.

Pour activer les vecteurs de suppression, exécutez la commande SQL suivante.

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

Pour plus d'informations sur les conflits d'écriture concurrents dans Databricks, consultez Niveaux d'isolement et conflits d'écriture.

Limitations

Limites de Power Apps

Les formules PowerFx suivantes calculent des valeurs en utilisant uniquement les données récupérées localement :

Catégorie

Formule

Fonction de table

  • GroupBy
  • Distinct

Agrégation

  • CountRows
  • StdevP
  • StdevS

Catégorie

Formule

Fonction de table

  • GroupBy
  • Distinct

Agrégation

  • CountRows
  • StdevP
  • StdevS