Générer des insights sur les tableaux
Ce document explique comment générer des insights sur les tables BigQuery, BigLake et externes. Les insights sur les tables vous aident à comprendre les données d'une table en générant des questions en langage naturel et des requêtes SQL basées sur les métadonnées de la table.
Les insights sur les tableaux peuvent vous aider à explorer plus rapidement les données. Ils vous permettent de comprendre rapidement la structure et le contenu d'un tableau nouveau ou inconnu sans avoir à écrire des requêtes complexes. Vous pouvez également générer des requêtes SQL à partir de questions en langage naturel, ce qui réduit le temps et les efforts nécessaires pour écrire des requêtes manuellement. Les insights sur les tableaux peuvent également aider les utilisateurs non SQL à comprendre et à analyser les données à l'aide de ces requêtes en langage naturel.
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 données de tableau
Lorsque vous générez des insights sur les tables, BigQuery propose deux modes :
| Mode | Description | Utilisation |
|---|---|---|
| Générer et publier (Aperçu) |
Conserve les insights générés sur les tables dans Dataplex Universal Catalog en tant qu'aspects de métadonnées. Vous devez disposer des autorisations nécessaires pour publier. Lorsque vous utilisez Générer et publier, les actions suivantes se produisent :
|
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 tables à la demande, tels que des descriptions, des questions en langage naturel et des requêtes SQL. L'option Générer sans publier ne publie pas les insights dans Dataplex Universal 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.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM
role (roles/serviceusage.serviceUsageAdmin), which
contains the serviceusage.services.enable permission. Learn how to grant
roles.
Pour en savoir plus sur l'activation de l'API Gemini pour Google Cloud, consultez Activer l'API Gemini pour Google Cloud dans un projet Google Cloud .
Rôles et autorisations
Pour créer, gérer et récupérer des insights sur les données, demandez à votre administrateur de vous accorder les rôles IAM (Identity and Access Management) suivants :
- Éditeur Dataplex Universal Catalog DataScan (
roles/dataplex.dataScanEditor) ou Administrateur Dataplex Universal Catalog DataScan (roles/dataplex.dataScanAdmin) sur le projet dans lequel vous souhaitez générer des insights. - Lecteur de données BigQuery (
roles/bigquery.dataViewer) sur les tables BigQuery pour lesquelles vous souhaitez générer des insights. - Éditeur de données BigQuery (
roles/bigquery.dataEditor) sur les tables BigQuery pour lesquelles vous souhaitez générer des insights. - Utilisateur BigQuery (
roles/bigquery.user) ou utilisateur BigQuery Studio (roles/bigquery.studioUser) du projet pour lequel vous souhaitez générer des insights.
Pour obtenir un accès en lecture seule aux insights générés, demandez à votre administrateur de vous accorder le rôle IAM suivant :
- Lecteur de données Dataplex Universal Catalog DataScan (
roles/dataplex.dataScanDataViewer) sur le projet contenant les tables BigQuery pour lesquelles vous souhaitez afficher des insights.
Pour publier des insights sur les données dans Dataplex Universal Catalog, demandez à votre administrateur de vous accorder les rôles IAM suivants sur la ressource :
- Publier des descriptions en tant qu'aspects :
Éditeur de catalogue Dataplex Universal Catalog (
roles/dataplex.catalogEditor) - Publier des requêtes en tant qu'aspects :
Propriétaire de l'entrée et de l'EntryLink Dataplex Universal Catalog (
roles/dataplex.entryOwner)
Pour activer les API, demandez à votre administrateur de vous accorder le rôle IAM suivant :
- Administrateur Service Usage (
roles/serviceusage.serviceUsageAdmin) sur le projet dans lequel vous souhaitez générer des insights.
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.jobs.createbigquery.tables.getbigquery.tables.getDatadataplex.datascans.createdataplex.datascans.getdataplex.datascans.getDatadataplex.datascans.run
Générer des insights pour une table BigQuery
Pour générer des insights pour les tables BigQuery, vous pouvez utiliser la consoleGoogle Cloud ou le type d'analyse DATA_DOCUMENTATION compatible avec l'API DataScans de Dataplex Universal Catalog.
Ces analyses génèrent des métadonnées, des requêtes SQL pour l'exploration des données, des descriptions de schéma et des récapitulatifs au niveau des tables.
Console
Afin de générer des insights pour une table BigQuery, vous devez accéder à l'entrée de table dans BigQuery à l'aide de BigQuery Studio.
Dans la console Google Cloud , accédez à BigQuery Studio.
Dans le volet Explorateur, sélectionnez le projet, l'ensemble de données, puis la table pour lesquels vous souhaitez générer des insights.
Cliquez sur l'onglet Insights. Si l'onglet est vide, cela signifie que les insights de cette table ne sont pas encore générés.
Pour générer des insights et les publier dans Dataplex Universal Catalog, cliquez sur Générer et publier (Aperçu).
Pour générer des insights sans les publier dans Dataplex Universal 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.
Sélectionnez une région pour générer des insights, puis cliquez sur Générer.
L'insertion des insights prend quelques minutes.
Si des résultats de profilage des données publiés pour la table sont disponibles, ils permettent de générer des insights. Sinon, les insights sont générés en fonction des noms et des descriptions des colonnes. Pour en savoir plus, consultez Bonnes pratiques pour améliorer les insights générés.
Dans l'onglet Insights, explorez les questions en langage naturel générées.
Pour afficher la requête SQL qui répond à une question, cliquez sur la question.
Pour ouvrir une requête dans BigQuery, cliquez sur Copier vers la requête.
Pour poser des questions complémentaires :
Cliquez sur Poser une question complémentaire. La requête s'ouvre dans un nouveau canevas de données.
Cliquez sur Exécuter, puis sur Interroger ces résultats.
Pour poser une question complémentaire, saisissez une requête dans le champ de requête en langage naturel ou modifiez le code SQL dans l'éditeur de requête.
Pour générer un nouvel ensemble de requêtes, cliquez sur Générer des insights et déclenchez une nouvelle exécution de pipeline.
Une fois que vous avez généré des insights pour une table, toute personne disposant de l'autorisation dataplex.datascans.getData et ayant accès à la table peut les consulter.
REST
Pour générer des insights de manière programmatique, utilisez l'API DataScans de Dataplex Universal Catalog. Pour ce faire, procédez comme suit :
- Facultatif : Créez une analyse de profilage des données pour la table.
- Générer un datascan de documentation des données pour la table BigQuery
- Vérifier l'état de l'analyse de la documentation sur les données
- Publier les résultats de l'analyse de la documentation sur les données dans une table BigQuery
Facultatif : Créez une analyse de profil de données pour la table.
La présence d'analyses de profil de données réduit les hallucinations et les approximations de Gemini, car elles ancrent la sortie dans les valeurs réelles présentes dans les données.
Pour créer et exécuter une analyse de profilage des données, procédez comme suit :
Créez une analyse de profilage des données à l'aide de la méthode
dataScans.create.Exécutez l'analyse de profilage des données à l'aide de la méthode
dataScans.run. Attendez la fin de l'exécution.Publiez les résultats de l'analyse dans la table BigQuery en ajoutant les libellés de profilage des données suivants à la table :
dataplex-dp-published-scan:DATASCAN_IDdataplex-dp-published-project:PROJECT_IDdataplex-dp-published-location:LOCATION
Pour en savoir plus, consultez Ajouter des libellés aux tables et aux vues.
Générer une analyse de données pour la documentation des données de la table BigQuery
Vous pouvez choisir d'exécuter une analyse gérée standard ou une analyse ponctuelle simplifiée.
Option A : Analyse gérée standard (créer et exécuter)
Utilisez cette méthode si vous souhaitez gérer la ressource d'analyse au fil du temps.
Créez une analyse des données de documentation des données à l'aide de la méthode
dataScans.create. Vous pouvez personnaliser le champ d'application de la génération pour inclure le schéma, les descriptions, les requêtes ou une combinaison à l'aide du paramètregeneration_scopes:Pour générer des descriptions de schémas et de tables, ainsi que des requêtes SQL, laissez
data_documentation_specvide ou définissezgeneration_scopessurALL. Exemple :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/tables/TABLE_ID" }, "executionSpec": { "trigger": { "onDemand": {} } }, "type": "DATA_DOCUMENTATION", "dataDocumentationSpec": { "generation_scopes": "ALL" } }'Remplacez les éléments suivants :
- PROJECT_ID : ID de votre projet Google Clouddans 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é
- TABLE_ID : ID de la table BigQuery analysée
Pour générer le schéma, les descriptions de tables et les descriptions de colonnes sans requêtes SQL, définissez
generation_scopessurTABLE_AND_COLUMN_DESCRIPTIONS. Exemple :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/tables/TABLE_ID" }, "executionSpec": { "trigger": { "onDemand": {} } }, "type": "DATA_DOCUMENTATION", "dataDocumentationSpec": { "generation_scopes": "TABLE_AND_COLUMN_DESCRIPTIONS" } }'Pour générer des requêtes SQL sans descriptions, définissez
generation_scopessurSQL_QUERIES. Exemple :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/tables/TABLE_ID" }, "executionSpec": { "trigger": { "onDemand": {} } }, "type": "DATA_DOCUMENTATION", "dataDocumentationSpec": { "generation_scopes": "SQL_QUERIES" } }'
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.
Option B : Analyse unique (simplifiée)
Utilisez cette méthode pour lancer et terminer une analyse en un seul appel d'API. Cette méthode évite d'appeler la méthode "run" séparément et permet la suppression automatique de la ressource d'analyse à l'aide de la fonctionnalité de durée de vie (TTL).
Créez et déclenchez l'analyse à l'aide de la méthode dataScans.create. Exemple :
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/\
tables/TABLE_ID"
},
"type": "DATA_DOCUMENTATION",
"dataDocumentationSpec": { "generation_scopes": "ALL" },
"executionSpec": {
"trigger": {
"one_time": {
"ttl_after_scan_completion": { "seconds": TTL_TIME }
}
}
}
}'
Remplacez les éléments suivants :
- PROJECT_ID : ID de votre projet Google Clouddans 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é
- TABLE_ID : ID de la table BigQuery analysée
- TTL_TIME : durée en secondes après laquelle la ressource d'analyse doit être automatiquement supprimée (par exemple,
3600pour une heure)
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.
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
Le job est terminé lorsque l'état est SUCCEEDED ou FAILURE.
Publier les résultats de l'analyse de la documentation des données dans une table BigQuery
Pour publier les résultats de l'analyse dans la table BigQuery, ajoutez les libellés de documentation de données suivants à la table :
dataplex-data-documentation-published-scan:DATASCAN_IDdataplex-data-documentation-published-project:PROJECT_IDdataplex-data-documentation-published-location:LOCATION
Générer des insights pour une table externe BigQuery
Les insights sur les données BigQuery permettent de générer des insights pour les tables externes BigQuery contenant des données dans Cloud Storage.
Vous et le compte de service Dataplex Universal Catalog pour le projet actuel devez disposer du rôle Lecteur d'objets Storage (roles/storage.objectViewer) sur le bucket Cloud Storage contenant les données. Pour plus d'informations, consultez la section Ajouter un compte principal à une stratégie au niveau du bucket.
Pour générer des insights pour une table externe BigQuery, suivez les instructions décrites dans la section Générer des insights pour une table BigQuery de ce document.
Générer des insights pour une table BigLake
Pour générer des insights pour une table BigLake, procédez comme suit :
Activez l'API Connection BigQuery dans votre projet.
Créer une connexion BigQuery Pour en savoir plus, consultez la page Gérer les connexions.
Attribuez le rôle IAM de lecteur des objets de l'espace de stockage (
roles/storage.objectViewer) au compte de service correspondant à la connexion BigQuery que vous avez créée.Vous pouvez récupérer l'ID du compte de service à partir des informations de connexion.
Pour générer des insights, suivez les instructions décrites dans la section Générer des insights pour une table BigQuery de ce document.
Générer des descriptions de tables et de colonnes
Gemini dans BigQuery génère automatiquement des descriptions de tables et de colonnes lorsque vous générez des insights sur les données. Vous pouvez modifier ces descriptions si nécessaire, puis les enregistrer dans les métadonnées de la table. Les descriptions enregistrées sont utilisées pour générer de futurs insights.
Contrôler la langue de génération
Vous pouvez demander à Gemini de générer des descriptions de tables et de colonnes dans une langue spécifique. Pour ce faire, ajoutez une brève directive (par exemple, "Générer des descriptions de tableaux et de colonnes en français") à la description existante de votre tableau avant de générer les insights sur les données.
Lorsque vous générez des insights, Gemini interprète cette directive et produit les métadonnées dans la langue demandée. Ce mécanisme fonctionne, car Gemini utilise les descriptions de tables existantes comme contexte lorsqu'il en génère de nouvelles.
Pour obtenir la liste des langues disponibles, consultez Langues compatibles avec Gemini.
Générer des descriptions
Pour générer des descriptions de tables et de colonnes, procédez comme suit :
Générez des insights en suivant les instructions décrites dans la section correspondante de ce document :
Cliquez sur l'onglet Schéma.
Cliquez sur Afficher les descriptions des colonnes.
La description de la table et des colonnes générées s'affiche.
Pour modifier et enregistrer la description de tableau générée :
Dans la section Description de la table, cliquez sur Enregistrer dans les détails.
Pour remplacer la description actuelle par celle générée, cliquez sur Copier la description suggérée.
Modifiez la description du tableau si nécessaire, puis cliquez sur Enregistrer dans les détails.
La description de la table est mise à jour immédiatement.
Pour modifier et enregistrer les descriptions de colonnes générées :
Dans la section Descriptions de colonne, cliquez sur Enregistrer dans le schéma.
Les descriptions de colonnes générées sont renseignées dans le champ Nouvelle description pour chaque colonne.
Modifiez les descriptions des colonnes si nécessaire, puis cliquez sur Enregistrer.
Les descriptions de colonnes sont mises à jour immédiatement.
Pour fermer le panneau d'aperçu, cliquez sur Fermer.
Bonnes pratiques pour générer des insights sur les données
Pour améliorer la précision des insights générés, suivez les recommandations suivantes :
Fournissez des descriptions complètes. Assurez-vous que les tables et les colonnes de l'ensemble de données comportent des descriptions claires et détaillées.
Ancrez les insights avec le profilage. Si les descriptions ne sont pas disponibles, assurez-vous qu'une analyse de profil est associée à chaque tableau de l'ensemble de données pour ancrer les insights générés.
Définissez explicitement les règles. Incluez toutes les relations ou la logique métier que le module Insights utilise pour influencer la génération de relations dans la description de la table correspondante.
Ancrer les insights aux résultats du profilage des données
Dans le contexte de l'IA générative, l'ancrage désigne la capacité à connecter les résultats du modèle à des sources d'informations vérifiables. Vous pouvez ancrer les insights générés sur les tables aux résultats du profilage des données. Le profilage de données analyse les colonnes de vos tables BigQuery et identifie les caractéristiques statistiques courantes, telles que les valeurs de données typiques et la distribution des données.
Lorsque vous créez une analyse de profilage des données pour une table, vous pouvez choisir de publier les résultats de l'analyse sur les pages BigQuery et Dataplex Universal Catalog de la console Google Cloud . Les insights utilisent les résultats du profilage des données pour créer des requêtes plus précises et pertinentes en procédant comme suit :
Analyse les résultats du profilage des données pour identifier des modèles, des tendances ou des anomalies intéressants dans les données.
Génère des requêtes axées sur ces modèles, tendances ou anomalies afin d'identifier des insights.
Valide les requêtes générées par rapport aux résultats du profilage des données pour s'assurer qu'elles renvoient des résultats significatifs.
Sans les analyses de profilage des données, les éléments suivants se produisent :
Les requêtes générées sont plus susceptibles d'inclure des clauses inexactes ou de produire des résultats dénués de sens.
Les descriptions de colonnes générées ne sont basées que sur le nom de la colonne.
Assurez-vous que l'analyse de profilage des données de votre table est à jour et que les résultats sont publiés dans BigQuery.
Vous pouvez ajuster les paramètres de profilage des données pour augmenter la taille de l'échantillonnage et filtrer les lignes et les colonnes. Après avoir exécuté une nouvelle analyse de profilage des données, générez à nouveau des insights.
La qualité des insights sur l'ensemble de données s'améliore également de manière significative si les tables de l'ensemble de données contiennent des résultats de profilage des données.
Ajouter une description de tableau
Des descriptions détaillées des tables qui décrivent ce que vous souhaitez analyser dans vos tables peuvent aider Gemini dans BigQuery à générer des insights plus pertinents pour les tables et les ensembles de données. Une fois que vous avez ajouté une description de table, générez à nouveau des insights.
Par exemple, vous pouvez ajouter la description suivante à une table telco_churn telle que celle utilisée dans Exemple d'insights sur les données de table :
This table tracks customer churn data, including subscription details, tenure,
and service usage, to predict customer churn behavior.
Si vous enregistrez la description de table générée par Gemini, elle sera utilisée pour générer les futurs insights.
Ajouter une description de colonne
Les descriptions de colonnes qui expliquent ce que représente chaque colonne ou comment une colonne est liée à une autre peuvent améliorer la qualité de vos insights pour les insights sur les tables et les ensembles de données. Après avoir mis à jour les descriptions des colonnes de votre tableau, générez à nouveau des insights.
Par exemple, vous pouvez ajouter les descriptions suivantes à des colonnes spécifiques d'une table telco_churn telle que celle utilisée dans Exemple d'insights sur les données de table :
Pour la colonne tenure :
The number of months the customer has been with the service.
Pour la colonne churn :
Whether the customer has stopped using the service. TRUE indicates the customer
no longer uses the service, FALSE indicates the customer is active.
Si vous enregistrez les descriptions de colonnes générées par Gemini, elles seront utilisées pour générer de futurs insights.
É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 ensembles de données.
- En savoir plus sur le profilage des données Dataplex Universal Catalog