Tâche Power BI pour les Jobs
Aperçu
La fonctionnalité de tâche Power BI est en aperçu public.
Bien que vous puissiez publier manuellement sur Microsoft Power BI en ligne depuis votre Workspace Databricks, vous pouvez utiliser une tâche Power BI pour orchestrer automatiquement vos modèles sémantiques Power BI.
Pour en savoir plus sur la publication dans Power BI dans l'interface utilisateur de Databricks, consultez Publier dans le service Power BI depuis Databricks.
Exigences
- Vous devez respecter les mêmes exigences que lors de la publication manuelle dans Power BI. Pour plus de détails, consultez Publication sur Power BI Online depuis Databricks.
- Disposez d'une connexion Power BI, ou créez-en une. Découvrez comment créer une connexion Power BI dans Unity Catalog pour l'orchestration.
- Vous devez disposer du privilège
USE CONNECTIONdans Unity Catalog pour cette connexion, ainsi que des privilèges pour accéder aux tables et au SQL Warehouse à utiliser. Voir Gérer les identités, les autorisations et les privilèges pour les Lakeflow Jobs.
Configurez une tâche Power BI
Une fois que vous avez configuré une connexion Power BI, vous pouvez créer une tâche pour automatiser la publication à l'aide de cette connexion.
L'interface utilisateur des Jobs affiche les options de manière dynamique en fonction d'autres paramètres configurés.
Pour commencer le flux de configuration d'une tâche Power BI :
- Accédez à l’onglet tab de l’interface utilisateur Jobs, pour le Job auquel vous souhaitez ajouter une tâche.
- Cliquez sur
Ajouter une tâche .
- Saisissez un Nom de la tâche .
- Dans le menu déroulant Type , sélectionnez Power BI .
- Configurez les propriétés de la tâche (consultez le tableau suivant pour les propriétés et leur utilisation).
- (Facultatif) Pour configurer les nouvelles tentatives, les threshold de durée d'exécution ou de backlog de streaming, ou les notifications, consultez Paramètres de tâches avancés.
- Cliquez sur Enregistrer la tâche .
Databricks recommande de définir un Service Principal Databricks comme identité **Exécuter en tant que** pour la tâche. Pour les bonnes pratiques, consultez Bonnes pratiques pour la gouvernance des Jobs. Le Service Principal nécessitera les privilèges nécessaires pour accéder aux tables Databricks, aux schémas, à la connexion Power BI et au SQL Warehouse utilisés par la tâche.
Lors de la modification d'une tâche, les informations d'identification de l'utilisateur actuel sont utilisées, mais lors de l'exécution de la tâche, l'identité Exécuter en tant que est utilisée. L'identité doit disposer des privilèges appropriés pour exécuter la tâche.
Propriété de la tâche Power BI | Description |
|---|---|
SQL Warehouse | Le SQL Warehouse qui traite les refresh en mode Import , ou les query en mode DirectQuery pour le modèle sémantique. La tâche Power BI nécessite un SQL Warehouse. Le compute à usage général n'est pas pris en charge. |
Connexion Power BI | La connexion Power BI pour cette tâche. La tâche utilise cette connexion pour récupérer les workspaces Power BI et les modèles sémantiques, et pour publier sur Power BI. Voir Créer une connexion Power BI dans Unity Catalog pour l'orchestration. |
Workspace Power BI | Le workspace Power BI auquel un modèle sémantique est publié. |
modèle sémantique Power BI | Le modèle sémantique Power BI à publier. Sélectionnez un modèle existant ou saisissez un nouveau nom de modèle et cliquez sur Publier un nouveau modèle sémantique <name> . |
Remplacer le modèle existant | Par default, les mises à jour des métadonnées ne sont ajoutées qu'à un modèle existant. Cocher cette case garantit que toutes les mises à jour des métadonnées et des données se propagent aux modèles sémantiques Power BI lorsque la tâche est exécutée. |
Mode de requête Power BI | Le mode d’interrogation par default pour les tables publiées. Lorsque **DirectQuery** est sélectionné, vous pouvez également définir les modes de query sur les tables individuelles à l’aide de la propriété **Configurer les modes de query de table**. L'une des valeurs suivantes :
Le mode de query Power BI est également appelé mode de stockage dans Power BI. Pour plus d'informations sur les modes de query, consultez Modes de modèle sémantique dans le service Power BI. |
Tables à mettre à jour | Les tables et schémas sources pour le modèle sémantique. Si vous sélectionnez un schéma pour cette propriété, alors lorsque vous exécutez la tâche, toutes les tables sous le schéma à ce moment-là sont utilisées pour la mise à jour. La tâche met à jour toutes les nouvelles tables, colonnes, commentaires et relations de clé primaire/clé étrangère. |
Méthode d'authentification | Définit la manière dont le modèle sémantique s’authentifie auprès du SQL Warehouse choisi. Lors de l’utilisation d’OAuth, les identifiants peuvent nécessiter une configuration sur Power BI après la première exécution de la tâche. Si vous ne pouvez pas définir les identifiants du Service Principal dans l’interface utilisateur de Power BI pour votre configuration, consultez Configurer les identifiants avec une API REST. Lors de l’utilisation d’un PAT, le système génère et intègre un PAT pour l’identité Exécuter en tant que . |
Configurer les modes de query de table | Lorsque DirectQuery est sélectionné comme mode de requête Power BI , vous pouvez éventuellement configurer des tables individuelles pour utiliser le mode de stockage Dual . Les tables configurées en mode de stockage Dual peuvent agir comme des modes Import ou DirectQuery en fonction du contexte de la requête. Pour plus d'informations, consultez Modes de modèle sémantique dans le service Power BI. |
refresh après la mise à jour | Cette option est disponible si **Importation** est sélectionné comme mode de query. Par default, seules les métadonnées du modèle sont mises à jour, mais si cette case est cochée, alors cela triggers également un data refresh (qui queries le SQL Warehouse). Ce refresh peut être vu dans l'historique des refresh sur Power BI. |
Pour modifier, cloner, désactiver ou supprimer cette tâche, consultez Configurer et modifier les tâches dans Lakeflow Jobs.
Configurer les identifiants avec une API REST
Pour définir les identifiants du Service Principal du modèle sémantique avec une API REST au lieu de l’interface utilisateur Power BI, utilisez l’API Microsoft Fabric Connections ou l’API REST Power BI :
- L'API Microsoft Fabric Connections définit les identifiants sur la connexion et fonctionne pour tous les types de connexion : cloud, passerelle de données on-premise et passerelle de données VNet.
- L’ API REST Microsoft Power BI définit les identifiants sur une source de données, origine de données. Cela fonctionne pour les connexions de passerelle de données on-premise et les sources de données cloud.
Pour vous authentifier avec un Service Principal Databricks, utilisez le type d'identifiant Basic avec l'ID d'application du Service Principal comme nom d'utilisateur et son secret comme mot de passe.
API Microsoft Fabric Connections
Utilisez l’API Microsoft Fabric Connections pour mettre à jour les identifiants de la connexion utilisée par le modèle sémantique. L’API Fabric nécessite un jeton d’accès Microsoft Entra ID, et l’identité que vous utilisez doit disposer de l’autorisation pour la connexion (ou de l’autorisation d’administrateur de passerelle Power BI pour une connexion de passerelle). Pour savoir comment obtenir un jeton, consultez la documentation de l’API REST Microsoft Fabric.
Les étapes dépendent du fait que Power BI se connecte via une connexion cloud ou une passerelle de données on-premise.
Connexion au cloud
-
Listez les connexions auxquelles l’identité peut accéder et trouvez la connexion
ShareableCloudpour votre Databricks SQL warehouse. Notez sonid.HTTPGET https://api.fabric.microsoft.com/v1/connectionsPour plus de détails, consultez la documentation Microsoft sur List Connections.
-
Mettez à jour les identifiants de la connexion en utilisant la connexion
id. Transmettez directement les identifiants du Service Principal :HTTPPATCH https://api.fabric.microsoft.com/v1/connections/{connectionId}JSON{
"connectivityType": "ShareableCloud",
"credentialDetails": {
"credentials": {
"credentialType": "Basic",
"username": "<service-principal-application-id>",
"password": "<service-principal-secret>"
}
}
}Pour plus de détails, consultez la documentation Microsoft sur Update Connection.
Passerelle de données on-premise
-
Listez les connexions auxquelles l'identité peut accéder et trouvez la connexion
OnPremisesGatewaypour votre Databricks SQL warehouse. Notez sesidetgatewayId.HTTPGET https://api.fabric.microsoft.com/v1/connectionsPour plus de détails, consultez la documentation Microsoft sur List Connections.
-
Obtenez la clé publique de la passerelle, en utilisant le
gatewayIdde la connexion :HTTPGET https://api.fabric.microsoft.com/v1/gateways/{gatewayId}Pour plus de détails, consultez la documentation Microsoft sur Get Gateway.
-
Chiffrez les identifiants du Service Principal avec la clé publique de la passerelle. Pour plus de détails, consultez la documentation Microsoft sur Configure credentials programmatically.
-
Mettez à jour la connexion en utilisant la connexion
idde la première étape. Envoyez une entréevaluespar membre de la passerelle :HTTPPATCH https://api.fabric.microsoft.com/v1/connections/{connectionId}JSON{
"connectivityType": "OnPremisesGateway",
"credentialDetails": {
"credentials": {
"credentialType": "Basic",
"values": [
{
"gatewayId": "<gateway-id>",
"encryptedCredentials": "<encrypted credential data>"
}
]
}
}
}Pour plus de détails, consultez la documentation Microsoft sur Update Connection.
D’autres types de connectivité, tels qu’une passerelle de données VNet (VirtualNetworkGateway), utilisent le même endpoint avec la charge utile d’identifiant pour ce type. Pour le schéma de requête complet, consultez la documentation Microsoft sur Update Connection.
API REST Power BI
Vous pouvez également utiliser l'API REST Power BI pour mettre à jour les identifiants de la source de données, origine de données. L’API REST Power BI nécessite un jeton d’accès Microsoft Entra ID. Les étapes sont les mêmes, que Power BI se connecte via une source de données, origine de données cloud ou une passerelle de données on-premise, mais les exigences diffèrent :
- Source de données cloud (sans passerelle) : vous devez être le propriétaire du modèle sémantique. Envoyez les identifiants directement et définissez
encryptionAlgorithmsurNone. - Passerelle de données on-premise : vous devez disposer de l’autorisation d’administrateur de passerelle. Chiffrez les identifiants avec la clé publique de la passerelle et définissez
encryptionAlgorithmsurRSA-OAEP.
-
Obtenez les sources de données du modèle sémantique et trouvez la source de données Databricks. Notez son
datasourceIdet songatewayId. Power BI lie une source de données, origine de données cloud à une passerelle cloud provisionnée automatiquement, de sorte qu’ungatewayIdest présent même sans passerelle on-premise.HTTPGET https://api.powerbi.com/v1.0/myorg/datasets/{datasetId}/datasourcesPour plus de détails, consultez la documentation Microsoft sur Get Datasources.
-
Mettez à jour les identifiants de cette source de données en définissant
encryptionAlgorithmpour votre type de connexion. L’exemple suivant concerne une source de données, origine de données cloud, avecencryptionAlgorithmdéfini surNone:HTTPPATCH https://api.powerbi.com/v1.0/myorg/gateways/{gatewayId}/datasources/{datasourceId}JSON{
"credentialDetails": {
"credentialType": "Basic",
"credentials": "{\"credentialData\":[{\"name\":\"username\",\"value\":\"<service-principal-application-id>\"},{\"name\":\"password\",\"value\":\"<service-principal-secret>\"}]}",
"encryptedConnection": "Encrypted",
"encryptionAlgorithm": "None",
"privacyLevel": "None"
}
}Pour une passerelle de données on-premise, chiffrez les identifiants avec la clé publique de la passerelle, remplacez la valeur
credentialspar les données chiffrées et définissezencryptionAlgorithmsurRSA-OAEP.Pour plus de détails, consultez la documentation Microsoft sur Update Datasource. Pour un exemple PowerShell qui récupère la clé publique de la passerelle et chiffre les identifiants, consultez l'exemple Databricks M2M OAuth credentials management sample. Pour plus de détails sur le chiffrement des identifiants, consultez la documentation Microsoft sur Configure credentials programmatically.
Dépannage
Ne modifiez pas un modèle sémantique dans le service Power BI pendant qu'une tâche Power BI le met à jour. Cela peut laisser le modèle bloqué sur Modifications en attente .
Pour plus d'informations sur la résolution des problèmes de publication vers Power BI, consultez Résoudre les problèmes de publication vers Power BI. Si vous rencontrez toujours des problèmes, vous pouvez nous faire part de vos commentaires sur le produit. Consultez Soumettre des commentaires sur le produit.
Ressources supplémentaires
- Tâche Power BI: définissez une tâche Power BI en tant que code avec Declarative Automation Bundles.
- Publier vers le service Power BI depuis Databricks: configurez Power BI avec Unity Catalog.
- Bonnes pratiques de gouvernance des Jobs: suivez les bonnes pratiques de gouvernance des Jobs.