Générer des insights sur l'ensemble de données

Les insights sur les données vous aident à comprendre les relations entre les tables des ensembles de données BigQuery et les espaces de noms Apache Iceberg en découvrant et en visualisant les relations entre les tables dans un graphique, en identifiant les relations définies par le schéma, basées sur l'utilisation ou déduites par l'IA, et en générant des exemples de requêtes inter-tables.

Pour en savoir plus sur les 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 un ensemble 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 en tant qu'aspects et 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 :

  • Stocke la description de l'ensemble de données dans Knowledge Catalog.
  • Capture les requêtes et questions suggérées en tant qu'aspects réutilisables.
  • Capture les relations en tant que métadonnées dans Knowledge Catalog.
  • Permet aux utilisateurs disposant d'un accès approprié à Knowledge Catalog de consulter les insights publiés, ce qui garantit le partage des connaissances au sein de l'organisation.
  • Permet de modifier et d'enregistrer des descriptions directement dans Knowledge Catalog à l'aide de l'API. Vous pouvez modifier les requêtes suggérées à l'aide de la console Google Cloud .

Utilisez ce mode pour la documentation des données à l'échelle de l'entreprise qui est persistante et réutilisable, ou lors de la création de workflows de gouvernance basés sur un catalogue.

Générer sans publier

Crée des insights sur l'ensemble de données, tels que des descriptions, des questions en langage naturel, des relations et des requêtes SQL à la demande. Générer sans publier ne publie pas les insights dans Knowledge Catalog.

Utilisez ce mode pour une exploration rapide et ad hoc 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 des API, vous devez disposer de l'autorisation serviceusage.services.enable. Si vous avez créé le projet, vous disposez probablement déjà de cette autorisation via le rôle Propriétaire (roles/owner). Sinon, vous pouvez l'obtenir via le rôle Administrateur Service Usage (roles/serviceusage.serviceUsageAdmin). Découvrez comment attribuer des rôles.

Activer les API

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 .

Effectuer une analyse de profilage des 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 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ées
  • bigquery.jobs.create : créer des jobs
  • bigquery.jobs.listAll : lister tous les jobs du projet
  • bigquery.tables.get : obtenir les métadonnées de la table
  • bigquery.tables.getData : obtenir les données et les métadonnées de la table
  • dataplex.datascans.create : créer une ressource d'analyse de données
  • dataplex.datascans.get : lire les métadonnées de la ressource d'analyse des données
  • dataplex.datascans.getData : lire les résultats d'exécution de l'analyse de données
  • dataplex.datascans.run : exécutez une analyse des données à la demande.
  • dataplex.entryGroups.useSchemaJoinEntryLink : utiliser des liens d'entrée schema-join
  • dataplex.entryGroups.useSchemaJoinAspect : utiliser les aspects de jointure de schéma
  • dataplex.entryLinks.create : créer des liens d'entrée
  • dataplex.entryLinks.update : mettre à jour les liens d'entrée
  • dataplex.entryLinks.delete : supprimer les liens d'entrée
  • dataplex.entries.link : entrées de lien
  • dataplex.entries.update : mettre à jour les entrées
  • dataplex.entryGroups.useDescriptionsAspect : utiliser des aspects de description
  • dataplex.entryGroups.useQueriesAspect : utiliser les aspects de requête

Générer des insights sur l'ensemble de données

Console

  1. Dans la console Google Cloud , accédez à BigQuery Studio.

    Accéder à BigQuery Studio

  2. Dans le volet Explorateur, sélectionnez le projet et l'ensemble de données pour lesquels vous souhaitez générer des insights. Pour les espaces de noms Iceberg, sélectionnez l'ensemble de données qui représente l'espace de noms de votre catalogue.

  3. Cliquez sur l'onglet Insights.

    Si l'onglet est vide, cela signifie qu'aucun insight n'a encore été généré pour cet ensemble de données.

  4. Cliquez sur Générer.

  5. Sélectionnez la condition de publication :

    • Pour générer des insights et les associer de manière permanente à l'élément en tant qu'aspects de métadonnées, activez l'option Condition de publication. Cela rend les insights indexables, consultables et visibles par les autres utilisateurs de votre organisation.

    • Pour générer et afficher temporairement des insights pendant votre session actuelle, désactivez l'option Publier la condition.

    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 données.

  6. Facultatif : Dans le champ Instructions personnalisées, fournissez des conseils et un contexte de domaine pour personnaliser la façon dont Gemini génère des insights.

    Par exemple, vous pouvez appliquer des conventions d'attribution de noms, spécifier des définitions métier ou décrire des clés de jointure :

    LANGUAGE: Always write column descriptions in uppercase.
    
    DOMAIN_CONTEXT:
    - This dataset supports the Order-to-Cash process for the EMEA commercial
      sales team.
    - Primary consumers are finance analysts and regional sales managers, not
      engineers.
    
    RELATIONSHIPS:
    - returns.order_item_id → order_items.id (one-to-one; use LEFT JOIN to
      preserve unreturned items)
    
  7. Si votre ensemble de données se trouve dans un emplacement multirégional, 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 de relations, une table de relations et des exemples de requêtes entre 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 :

  1. Générer une analyse de documentation des données pour l'ensemble de données BigQuery
  2. Vérifier l'état de l'analyse de la documentation des données
  3. Vérifier la publication dans Knowledge Catalog

Générer une analyse de documentation des données pour l'ensemble de données BigQuery

  1. Créez une analyse de documentation des données à l'aide de la méthode dataScans.create. Vous pouvez éventuellement publier ces insights dans Knowledge Catalog en définissant le paramètre catalog_publishing_enabled sur true.

    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 Google Clouddans lequel se trouve l'ensemble de données.
    • LOCATION : région dans laquelle l'analyse des données est exécutée
    • DATASCAN_ID : nom unique que vous fournissez pour cette analyse
    • DATASET_ID : ID de l'ensemble de données BigQuery en cours d'analyse
  2. 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:run
    

    Cette requête renvoie un ID de job unique ainsi que l'état initial.

Vérifier l'état de l'analyse de la documentation des données

Vérifiez l'achèvement de l'exécution du job d'analyse à l'aide de la méthode dataScans.get. Pour récupérer l'intégralité des résultats, y compris les insights et l'état de publication, définissez le paramètre view sur FULL.

Utilisez l'ID de job pour récupérer l'état du job. Exemple :

gcurl -X GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataScans/DATASCAN_ID/jobs/JOB_ID?view=FULL

Le job se termine 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 dans Knowledge Catalog de manière asynchrone 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 obtenus 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 Google Clouddans lequel l'analyse des données a été configurée.
  • LOCATION : région où se trouve le groupe d'entrées
  • DATASET_PROJECT_ID : ID du projet Google Clouddans lequel se trouve l'ensemble de données BigQuery.
  • DATASET : ID de l'ensemble de données BigQuery.

Si la publication dans Knowledge Catalog réussit, 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.
  • Queries : contient les requêtes SQL pertinentes liées à l'ensemble de données.
  • Relations : conservées en tant que 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 détails.

Explorer le graphique des relations

Le graphique Relations fournit une représentation visuelle de la façon dont les tables de l'ensemble 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, tels que les colonnes qui joignent deux tables, pointez sur l'arête reliant les nœuds de la table.
  • Pour réorganiser le graphique afin d'améliorer la visibilité, faites glisser les nœuds de la table.

Utiliser la table de relations

La table des relations répertorie 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éduction du LLM. Relations déduites par Gemini, en fonction des noms et des descriptions des tables et des colonnes de l'ensemble de données.
  • En fonction de l'utilisation. Relations extraites des journaux de requêtes, basées sur des jointures fréquentes.
  • Définis par un schéma. Relations dérivées des mappages de clés primaires et de clés étrangères existants dans le schéma de la table.

Vous pouvez filtrer les relations pour une table 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 de l'ensemble de données.

  1. Pour afficher une requête SQL, cliquez sur une question.

  2. 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.

  3. 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