Effectuer l’analyse des métadonnées

La courte procédure pas à pas suivante montre comment utiliser les API du scanner pour récupérer les métadonnées des éléments Fabric de votre organisation. Il suppose qu'un administrateur Fabric a configuré l'analyse des métadonnées dans votre organisation.

Pour obtenir la liste des métadonnées d'artefact et de sous-artefact renvoyées par l'analyse des métadonnées, consultez la documentation de l'API Admin – WorkspaceInfo GetScanResult.

Les API d’analyseur sont les suivantes. Elles prennent en charge les clouds publics et les clouds souverains.

Important

L’application que vous développez pour l’analyse peut s’authentifier à l’aide d’un jeton d’accès d’administrateur délégué standard ou d’un principal de service. Les deux chemins d’authentification s’excluent mutuellement. En cas d’exécution sous un principal de service, aucune autorisation de consentement de l’administrateur requis pour Power BI ne doit être définie sur votre application. Pour plus d’informations, consultez Activer l’authentification du principal de service pour les API d’administration en lecture seule.

Étape 1 : Effectuer une analyse complète

Appelez workspaces/modified sans le paramètre modifiedSince pour obtenir la liste complète des ID d’espace de travail dans le locataire. Cette analyse permet de récupérer tous les espaces de travail du locataire, notamment les espaces de travail personnels et les espaces de travail partagés. Si vous souhaitez exclure des espaces de travail personnels de l’analyse, utilisez le paramètre workspaces/modified excludePersonalWorkspaces.

Divisez la liste en segments d’au plus 100 espaces de travail.

Pour chaque segment de 100 espaces de travail :

Appelez workspaces/getInfo pour déclencher un appel d’analyse pour ces 100 espaces de travail. Vous recevez dans la réponse le scanId que vous allez utiliser dans les étapes suivantes. Dans l’en-tête d’emplacement, vous allez aussi recevoir l’URI (Uniform Resource Identifier) à appeler pour l’étape suivante.

Notes

Il n’est pas possible d’effectuer plus de 16 appels simultanément. L’appelant doit attendre une réponse de réussite ou d’échec de l’analyse de l’API scanStatus avant d’effectuer un autre appel.

Si certaines métadonnées que vous vous attendiez à recevoir ne sont pas renvoyées, contactez votre administrateur Fabric pour vous assurer qu'il a activé tous les commutateurs d'administration pertinents.

Utilisez l’URI de l’en-tête d’emplacement que vous avez reçu en appelant workspaces/getInfo et interrogez workspaces/scanStatus/{scan_id} jusqu’à ce que l’état retourné soit « Réussi ». Cet état signifie que le résultat de l’analyse est prêt. Un intervalle d’interrogation de 30 à 60 secondes est recommandé. Dans l’en-tête d’emplacement, vous recevez également l’URI à appeler à l’étape suivante. Utilisez-le uniquement une fois que l’état est « Réussi ».

Utilisez l’URI de l’en-tête d’emplacement que vous avez reçu en appelant workspaces/scanStatus/{scan-id} et lisez les données en utilisant workspaces/scanResult/{scan_id}. Les données contiennent la liste des espaces de travail, des informations sur les éléments et d'autres métadonnées basées sur les paramètres transmis dans l'appel workspaces/getInfo.

Étape 2 : Effectuer une analyse incrémentielle

Maintenant que vous disposez de tous les espaces de travail, et des métadonnées et de la traçabilité de leurs ressources, il est recommandé d’effectuer seulement des analyses incrémentielles qui référencent l’analyse précédente que vous avez effectuée.

Appelez workspaces/modified avec le paramètre modifiedSince défini sur l’heure de début de la dernière analyse afin d’obtenir les espaces de travail qui ont changé et qui nécessitent donc une autre analyse. Le paramètre modifiedSince doit être défini sur une date comprise dans les 30 derniers jours.

Divisez cette liste en segments de 100 espaces de travail maximum et récupérez les données de ces espaces de travail modifiés en utilisant les trois appels d’API workspaces/getInfo, workspaces/scanStatus/{scan_id} et workspaces/scanResult/{scan_id} comme décrit à l’étape 1.

Considérations et limitations

  • les modèles sémantiques qui n’ont pas été actualisés ou republiés sont retournés dans les réponses d’API, mais sans leurs informations et expressions de sous-artefact. Le nom et la traçabilité du modèle sémantique sont inclus dans la réponse par exemple, mais pas les noms de tables ni de colonnes du modèle sémantique.
  • Les modèles sémantiques contenant uniquement des tables DirectQuery retournent des métadonnées de sous-artefact uniquement si une action quelconque a été effectuée sur le modèle sémantique, par exemple une personne qui crée ou qui consulte un rapport sur le modèle, etc.
  • Les modèles sémantiques en temps réel, les modèles sémantiques avec une sécurité au niveau des objets, les modèles sémantiques avec une connexion active à AS-Azure et AS local et les modèles sémantiques entièrement fidèles à Excel ne sont pas pris en charge pour les métadonnées de sous-artefact. Pour les jeux de données non pris en charge, la réponse retourne la raison pour laquelle vous n’obtenez pas les métadonnées de sous-artefact du jeu de données. Elle se trouve dans un champ nommé schemaRetrievalError, par exemple schemaRetrievalError : demande non prise en charge. Le jeu de données RealTime n’est pas pris en charge.
  • L’API ne retourne pas de métadonnées de sous-artefact pour les modèles sémantiques supérieurs à 1 Go dans les espaces de travail partagés. Dans les espaces de travail Premium, il n’existe aucune limitation de taille pour les modèles sémantiques.

Licence

L’analyse des métadonnées ne nécessite aucune licence spéciale. Cela fonctionne pour toutes les métadonnées de votre locataire, y compris celles des éléments situés dans des espaces de travail non-Premium.