Générer des insights sur un ensemble de données
Ce document explique comment générer des insights sur les ensembles de données BigQuery. Les insights sur les ensembles de données vous aident à comprendre les relations entre les tables d'un ensemble de données en générant des graphiques de relations et des requêtes inter-tables.
Les insights sur les ensembles de données vous aident à explorer plus rapidement les ensembles de données comportant plusieurs tables. Pour ce faire, ils découvrent et visualisent automatiquement les relations entre les tables dans un graphique, identifient les relations de clé primaire et de clé étrangère, et génèrent des exemples de requêtes inter-tables. Cela permet de comprendre la structure des données sans documentation, de découvrir les relations entre les tables définies par le schéma, basées sur l'utilisation ou déduites par l'IA, et de générer des requêtes complexes qui joignent plusieurs tables.
Pour obtenir une vue d'ensemble des insights sur les tables et les ensembles de données, consultez Présentation des insights sur les données.
Modes de génération d'insights sur les ensembles de données
Lorsque vous générez des insights sur les ensembles de données, BigQuery propose deux modes :
| Mode | Description | Utilisation |
|---|---|---|
| Générer et publier |
Conserve les insights générés sur l'ensemble de données dans Knowledge Catalog sous forme d'aspects et de relations de métadonnées. Vous devez disposer des autorisations nécessaires pour publier. Lorsque vous utilisez Générer et publier, BigQuery effectue les opérations suivantes :
|
Utilisez ce mode pour la documentation des données à l'échelle de l'entreprise qui est persistante et réutilisable, ou lorsque vous créez des workflows de gouvernance basés sur le catalogue. |
| Générer sans publier |
Crée des insights sur les ensembles de données, tels que des descriptions, des questions en langage naturel, des relations et des requêtes SQL à la demande. L'option Générer sans publier ne publie pas les insights dans Knowledge Catalog. |
Utilisez ce mode pour une exploration ad hoc rapide afin d'éviter d'encombrer le catalogue. |
Avant de commencer
Les insights sur les données sont générés à l'aide de Gemini dans BigQuery. Pour commencer à générer des insights, vous devez d'abord configurer Gemini dans BigQuery.
Activer les API
Pour utiliser les insights sur les données, activez les API suivantes dans votre projet : API Dataplex, API BigQuery et API Gemini pour Google Cloud.
Rôles requis pour activer les API
Pour activer les API, vous avez besoin du rôle IAM Administrateur Service Usage (roles/serviceusage.serviceUsageAdmin), qui contient l'autorisation serviceusage.services.enable. Découvrez comment attribuer des rôles.
Pour en savoir plus sur l'activation de l'API Gemini for Google Cloud, consultez Activer l'API Gemini for Google Cloud dans un projet Cloud de Confiance .
Effectuer une analyse de profil de données
Pour améliorer la qualité des insights, générez une analyse de profilage des données pour les tables de votre ensemble de données.
Rôles requis
Pour obtenir les autorisations nécessaires pour générer, gérer et récupérer des insights sur les ensembles de données, demandez à votre administrateur de vous accorder les rôles IAM suivants :
-
Pour générer, gérer et récupérer des insights :
- Éditeur Dataplex DataScan (
roles/dataplex.dataScanEditor) ou Administrateur Dataplex DataScan (roles/dataplex.dataScanAdmin) sur le projet - Éditeur de données BigQuery (
roles/bigquery.dataEditor) sur les tables - Utilisateur BigQuery (
roles/bigquery.user) ou utilisateur BigQuery Studio (roles/bigquery.studioUser) sur le projet - Lecteur de ressources BigQuery (
roles/bigquery.resourceViewer) sur le projet
- Éditeur Dataplex DataScan (
-
Pour afficher les insights :
- Lecteur de données Dataplex DataScan (
roles/dataplex.dataScanDataViewer) sur le projet - Lecteur de données BigQuery (
roles/bigquery.dataViewer) sur l'ensemble de données
- Lecteur de données Dataplex DataScan (
-
Pour publier des insights dans Knowledge Catalog :
Propriétaire des entrées et des liens d'entrée Dataplex (
roles/dataplex.entryOwner) sur le groupe d'entrées
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.
Pour connaître les autorisations exactes requises pour générer des insights, développez la section Autorisations requises :
Autorisations requises
bigquery.datasets.get: lire les métadonnées de l'ensemble de donnéesbigquery.jobs.create: créer des jobsbigquery.jobs.listAll: liste toutes les tâches du projetbigquery.tables.get: obtenir les métadonnées de la tablebigquery.tables.getData: obtenir des données et des métadonnées de tabledataplex.datascans.create: créer une ressource DataScandataplex.datascans.get: lire les métadonnées de la ressource DataScandataplex.datascans.getData: lire les résultats d'exécution DataScandataplex.datascans.run: exécutez DataScan à la demande.dataplex.entryGroups.useSchemaJoinEntryLink: utiliser les liens d'entréeschema-joindataplex.entryGroups.useSchemaJoinAspect: utiliser les aspects de jointure de schémadataplex.entryLinks.create: créer des liens vers des entréesdataplex.entryLinks.update: mettre à jour les liens d'entréedataplex.entryLinks.delete: supprimer les liens d'entréedataplex.entries.link: associer des entréesdataplex.entries.update: mettre à jour les entréesdataplex.entryGroups.useDescriptionsAspect: utiliser les aspects de descriptiondataplex.entryGroups.useQueriesAspect: utiliser les aspects de la requête
Générer des insights sur un ensemble de données
Console
Dans la console Cloud de Confiance , accédez à BigQuery Studio.
Dans le panneau Explorateur, sélectionnez le projet, puis l'ensemble de données pour lesquels vous souhaitez générer des insights.
Cliquez sur l'onglet Insights.
Pour générer des insights et les publier dans Knowledge Catalog, cliquez sur Générer et publier.
Pour générer des insights sans les publier dans Knowledge Catalog, cliquez sur Générer sans publier.
Pour en savoir plus sur les différences entre les modes Générer et publier et Générer sans publier, consultez Modes de génération d'insights sur les ensembles de données.
Si votre ensemble de données se trouve dans une région multiple, vous serez peut-être invité à sélectionner une région pour générer des insights. Sélectionnez une région correspondant à l'emplacement multirégional dans lequel l'analyse d'insights sera effectuée.
L'insertion des insights prend quelques minutes. La qualité des insights s'améliore si les tables de l'ensemble de données contiennent des résultats de profilage des données.
Une fois les insights générés, BigQuery affiche une description de l'ensemble de données, un graphique des relations, un tableau des relations et des exemples de requêtes inter-tables.
REST
Pour générer des insights de manière programmatique, utilisez l'API DataScans de Knowledge Catalog. Pour ce faire, procédez comme suit :
- Générer un datascan de documentation des données pour l'ensemble de données BigQuery
- Vérifier l'état de l'analyse de la documentation sur les données
- Vérifier la publication dans Knowledge Catalog
Générer un datascan de documentation des données pour l'ensemble de données BigQuery
Créez une analyse des données de documentation des données à l'aide de la méthode
dataScans.create. Vous pouvez également publier ces insights dans le Knowledge Catalog en définissant le paramètrecatalog_publishing_enabledsurtrue.Exemple :
alias gcurl='curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"' gcurl -X POST \ https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/\ dataScans?dataScanId=DATASCAN_ID \ -d '{ "data": { "resource": "//bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID" }, "executionSpec": { "trigger": { "onDemand": {} } }, "type": "DATA_DOCUMENTATION", "dataDocumentationSpec": { "catalog_publishing_enabled": true } }'Remplacez les éléments suivants :
- PROJECT_ID : ID de votre projet Cloud de Confiance by S3NSdans lequel réside l'ensemble de données
- LOCATION : région dans laquelle l'analyse des données s'exécute.
- DATASCAN_ID : nom unique que vous fournissez pour cette analyse
- DATASET_ID : ID de l'ensemble de données BigQuery analysé
Démarrez le job d'analyse de la documentation des données à l'aide de la méthode
dataScans.run.Exemple :
gcurl -X POST \ https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/\ dataScans/DATASCAN_ID:runCette requête renvoie un ID de tâche unique ainsi que l'état initial.
Vérifier l'état de l'analyse de la documentation des données
Vérifiez que le job d'analyse s'est terminé à l'aide de la méthode dataScans.get.
Pour récupérer l'ensemble des résultats, y compris les insights et l'état de publication, définissez le paramètre view sur FULL.
Utilisez l'ID du job pour récupérer son état. Exemple :
gcurl -X GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataScans/DATASCAN_ID/jobs/JOB_ID?view=FULL
Le job est terminé lorsque l'état est SUCCEEDED ou FAILURE.
Une réponse de job réussie contient les insights générés dans le champ dataDocumentationResult.
Vérifier la publication dans Knowledge Catalog
Si catalog_publishing_enabled est défini sur true, les insights sont publiés de manière asynchrone dans Knowledge Catalog une fois le job d'analyse des données terminé. Pour vérifier que les insights ont été conservés, utilisez l'API Dataplex pour inspecter les aspects de l'ensemble de données.
Bien que les insights soient générés à partir de l'analyse des données au niveau de l'ensemble de données, les liens d'entrée qui en résultent sont stockés entre les tables qu'ils connectent. Pour vérifier ces relations, utilisez la méthode lookupEntryLinks pour récupérer les liens d'entrée associés à une entrée de table spécifique.
Pour récupérer les métadonnées de votre ensemble de données BigQuery, utilisez la méthode entries.get.
Pour inclure tous les aspects, définissez le paramètre view sur FULL. Exemple :
gcurl -X GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/entryGroups/@bigquery/entries/bigquery.googleapis.com/projects/DATASET_PROJECT_ID/datasets/DATASET_ID?view=FULL
Remplacez les éléments suivants :
- PROJECT_ID : ID de votre projet Cloud de Confiance by S3NSdans lequel DataScan a été configuré
- LOCATION : région où se trouve le groupe d'entrées
- DATASET_PROJECT_ID : ID du projet Cloud de Confiance by S3NSdans lequel réside l'ensemble de données BigQuery
- DATASET : ID de l'ensemble de données BigQuery
Si la publication dans Knowledge Catalog est réussie, les aspects suivants sont associés à l'ensemble de données BigQuery :
- Descriptions : contient des descriptions de l'ensemble de données générées par l'IA
- Requêtes : contient les requêtes SQL pertinentes liées à l'ensemble de données.
- Relations : elles sont conservées sous forme de liens d'entrée entre les tables présentes dans l'ensemble de données.
Afficher et enregistrer la description de l'ensemble de données
Gemini génère une description en langage naturel de l'ensemble de données, en résumant les types de tables qu'il contient et le domaine d'activité qu'il représente. Pour enregistrer cette description dans les métadonnées de l'ensemble de données, cliquez sur Enregistrer dans les détails.
Vous pouvez modifier la description avant d'enregistrer les informations.
Explorer le graphique des relations
Le graphique Relations fournit une représentation visuelle de la façon dont les tables du jeu de données sont liées les unes aux autres. Il affiche les 10 tables les plus connectées sous forme de nœuds, avec des lignes représentant les relations entre elles.
- Pour afficher les détails d'une relation, comme les colonnes qui joignent deux tables, pointez sur l'arête reliant les nœuds des tables.
- Pour réorganiser le graphique et améliorer la visibilité, faites glisser les nœuds du tableau.
Utiliser le tableau des relations
Le tableau des relations liste les relations découvertes sous forme de tableau. Chaque ligne représente une relation entre deux tables, en indiquant la table et la colonne sources, ainsi que la table et la colonne de destination. La colonne Source indique comment la relation a été déterminée :
- Déduit par le LLM. Relations déduites par Gemini, en fonction des noms et des descriptions des tables et des colonnes dans l'ensemble de données.
- En fonction de l'utilisation : Relations extraites des journaux de requête, basées sur les jointures fréquentes.
- Défini par le schéma Relations dérivées des mappages de clés primaires et étrangères existants dans le schéma de table.
Vous pouvez filtrer les relations pour un tableau spécifique ou envoyer des commentaires sur la qualité des relations détectées. Pour exporter la description et les relations de l'ensemble de données généré vers un fichier JSON, cliquez sur Exporter au format JSON.
Utiliser les recommandations de requêtes
En fonction des relations découvertes, Gemini génère des exemples de requêtes. Il s'agit de questions en langage naturel avec des requêtes SQL correspondantes qui joignent plusieurs tables dans l'ensemble de données.
Pour afficher une requête SQL, cliquez sur une question.
Pour ouvrir la requête dans l'éditeur de requête BigQuery, cliquez sur Copier vers la requête. Vous pouvez ensuite exécuter la requête ou la modifier.
Pour poser une question complémentaire, cliquez sur Poser une question complémentaire. Un canevas de données sans titre s'ouvre, dans lequel vous pouvez discuter avec Gemini pour explorer vos données.
Gérer les insights générés
Une fois que vous avez généré des insights pour un ensemble de données, vous pouvez les gérer, les mettre à jour ou les supprimer dans Knowledge Catalog. Pour en savoir plus, consultez Gérer les insights sur les ensembles de données.
Étapes suivantes
- En savoir plus sur la présentation des insights sur les données
- Découvrez comment générer des insights sur les tableaux.
- En savoir plus sur le profilage des données Knowledge Catalog