Utiliser les insights sur les données structurées

Ce document explique comment générer, afficher et gérer les insights sur les données structurées. Les insights sur les données basés sur l'IA vous aident à accélérer l'exploration des données en générant automatiquement des descriptions, des graphiques de relations et des requêtes SQL à partir des métadonnées de vos tables et ensembles de données.

Dans BigQuery Studio, vous pouvez générer des insights sur les données pour les ensembles de données, les tables, les vues, les tables Lakehouse Google Cloud et les tables externes BigQuery.

Dans Knowledge Catalog, vous pouvez générer des insights sur les données pour les tables du catalogue REST Iceberg Lakehouse.

Avant de commencer

Avant d'utiliser les insights sur les données, assurez-vous d'avoir rempli les conditions préalables suivantes :

Rôles requis

Pour obtenir les autorisations nécessaires pour utiliser les insights 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.

Ces rôles prédéfinis contiennent les autorisations requises pour utiliser les insights sur les données. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

Vous devez disposer des autorisations suivantes pour utiliser les insights de données :

  • dataplex.datascans.create
  • dataplex.datascans.get
  • dataplex.datascans.getData
  • dataplex.datascans.run

Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.

Activer les API

Pour utiliser les insights sur les données, activez les API suivantes dans votre projet :

  • API Dataplex
  • API BigQuery
  • API Gemini for 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.

Activer les API

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 Google Cloud .

Préparer les données

Pour les tables Lakehouse Google Cloud , assurez-vous que vos données se trouvent dans Cloud Storage et que vous avez créé une table Lakehouse Google Cloud .

Pour les tables du catalogue REST Iceberg, assurez-vous qu'elles sont enregistrées dans le catalogue d'exécution Lakehouse.

Générer des insights dans BigQuery

Les insights sur les données pour les ensembles de données, les tables, les vues, les tablesGoogle Cloud Lakehouse et les tables externes BigQuery sont générés à l'aide de Gemini dans BigQuery et ne peuvent l'être que dans BigQuery Studio.

Vous devez d'abord configurer Gemini dans BigQuery, puis générer des insights. Une fois les insights générés, vous pouvez les afficher et les modifier dans Knowledge Catalog.

Pour en savoir plus sur la génération d'insights dans BigQuery, consultez les documents suivants :

Générer des insights pour les tables du catalogue REST Iceberg

  1. Dans la console Google Cloud , accédez à la page Rechercher de Knowledge Catalog.

    Accéder à la recherche

  2. Dans Filtres, sélectionnez Lakehouse.

  3. Sélectionnez la table du catalogue REST Iceberg pour laquelle vous souhaitez générer des insights.

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

  5. Pour générer des insights et les associer de manière permanente à la table en tant qu'aspects, cliquez sur Générer et publier. Les insights sont ainsi indexables, consultables et visibles par les autres utilisateurs de votre organisation dans le Knowledge Catalog.

    Pour générer des insights et les afficher temporairement pendant votre session actuelle, cliquez sur Générer sans publier. Utilisez cette option si vous avez uniquement besoin d'une analyse rapide des données sans enregistrer les métadonnées dans le Knowledge Catalog.

    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. Sélectionnez une région pour générer des insights, puis cliquez sur Générer.

    L'insertion des insights prend quelques minutes.

  7. Cliquez sur l'onglet Insights et examinez les éléments suivants :

    • Descriptions : il s'agit de résumés générés par IA qui expliquent l'objectif de la table et détaillent des colonnes spécifiques.
    • Exemples de requêtes : il s'agit de la liste des requêtes SQL personnalisées conçues spécifiquement pour le schéma et le contenu de votre ensemble de données.
  8. Pour afficher la requête SQL qui répond à une question, cliquez sur la question.

Examiner les insights générés pour une ressource

Pour afficher les insights générés pour une ressource, procédez comme suit :

  1. Dans la console Google Cloud , accédez à la page Rechercher de Knowledge Catalog.

    Accéder à la recherche

  2. Recherchez la ressource pour laquelle vous souhaitez afficher des insights.

  3. Dans les résultats de recherche, cliquez sur la ressource pour ouvrir la page d'informations correspondante.

  4. Examinez les descriptions et les requêtes générées pour la ressource sélectionnée.

  5. Pour afficher les graphiques de relations et comprendre comment les points de données sont connectés, cliquez sur l'onglet Relations (aperçu). Vous ne pouvez afficher les relations qu'au niveau de la table, et non au niveau de l'ensemble de données.

Gérer les insights sur les tables

Une fois que vous avez généré et publié des insights sur les tables, vous pouvez les examiner et les gérer en tant qu'aspects de métadonnées dans le Knowledge Catalog. Les insights au niveau des tables incluent des descriptions de tables et de colonnes, ainsi que des exemples de requêtes.

Mettre à jour les descriptions générées pour une table

Vous ne pouvez mettre à jour les descriptions de tables et de colonnes qu'à l'aide de l'API Dataplex. Pour ce faire, utilisez la méthode entries.patch.

Mettre à jour les requêtes générées pour une table

Vous pouvez mettre à jour les requêtes générées pour une table à l'aide de la console Google Cloud et de l'API Dataplex.

Console

  1. Recherchez la table pour laquelle vous souhaitez mettre à jour les requêtes générées.

  2. Dans les résultats de recherche, cliquez sur le tableau pour ouvrir la page d'informations correspondante.

  3. Dans la section Requêtes, cliquez sur Modifier.

  4. Modifiez la description de la requête si nécessaire.

  5. Gérer la propriété : par défaut, la source est définie sur Agent. Si vous modifiez une requête et que vous remplacez la source par Utilisateur, les générations d'insights suivantes n'écraseront pas vos modifications. Si la source reste Agent, la requête peut être remplacée lors d'une régénération.

  6. Gérer les remplacements : pour empêcher le remplacement de toutes les requêtes lors d'une nouvelle exécution, vous pouvez définir l'option Géré par l'utilisateur sur True. Cela s'applique à l'ensemble des requêtes pour cet aspect des métadonnées, ce qui garantit qu'aucune modification manuelle n'est perdue.

REST

Pour mettre à jour les requêtes d'une table, utilisez la méthode entries.patch.

Mettre à jour les relations générées pour une table

Vous ne pouvez mettre à jour les relations qu'à l'aide de l'API Dataplex. Pour ce faire, utilisez la méthode entries.patch.

Gérer les insights sur les ensembles de données

Les insights au niveau de l'ensemble de données se concentrent sur les descriptions générales et les requêtes à l'échelle de l'ensemble de données.

Mettre à jour les descriptions générées pour un ensemble de données

Vous ne pouvez mettre à jour les descriptions des ensembles de données qu'à l'aide de l'API Dataplex. Pour ce faire, utilisez la méthode entries.patch.

Mettre à jour les requêtes générées pour un ensemble de données

Vous pouvez mettre à jour les requêtes générées pour un ensemble de données à l'aide de la console Google Cloud et de l'API Dataplex.

Console

  1. Recherchez l'ensemble de données pour lequel vous souhaitez mettre à jour les requêtes générées.

  2. Dans les résultats de recherche, cliquez sur l'ensemble de données pour ouvrir la page d'informations correspondante.

  3. Dans la section Requêtes, cliquez sur Modifier.

  4. Modifiez la description si nécessaire.

  5. Gérer la propriété : par défaut, la source est définie sur Agent. Si vous modifiez une requête et que vous remplacez la source par Utilisateur, les générations d'insights suivantes n'écraseront pas vos modifications. Si la source reste Agent, la requête peut être remplacée lors d'une régénération.

  6. Gérer les remplacements : pour empêcher le remplacement de toutes les requêtes lors d'une nouvelle exécution, vous pouvez définir l'option Géré par l'utilisateur sur True. Cela s'applique à l'ensemble des requêtes pour cet aspect des métadonnées, ce qui garantit qu'aucune modification manuelle n'est perdue.

REST

Pour mettre à jour les requêtes d'un ensemble de données, utilisez la méthode entries.patch.

Mettre à jour les liens d'entrée générés pour un ensemble de données

Les relations découvertes par les insights sur les données sont stockées sous forme de liens d'entrée entre les entrées de table. Ces liens incluent un aspect schema-join qui décrit la façon dont les tables sont connectées.

Pour modifier ces relations ou fournir des remplacements manuels, vous devez utiliser l'API Dataplex.

Comportement de mise à jour des liens vers les entrées

Lorsque vous gérez des relations à l'aide de l'API, il est important de comprendre comment les mises à jour manuelles de l'API interagissent avec les analyses en arrière-plan automatisées afin de ne pas écraser accidentellement des données.

  • Mises à jour manuelles (comportement au niveau de l'API) : l'API UpdateEntryLink utilise la méthode PATCH pour effectuer le remplacement au niveau de l'aspect :

    • Remplacement complet de l'aspect : si vous incluez l'aspect schema-join dans votre demande de mise à jour, Knowledge Catalog remplace l'intégralité de l'aspect existant par celui que vous fournissez.

    • Aucune fusion automatique : l'API ne fusionne pas automatiquement les nouvelles entrées dans la liste joins interne. Si vous envoyez une charge utile ne contenant qu'une seule jointure, toutes les jointures existantes dans cet aspect sont supprimées.

  • Analyses automatisées (comportement au niveau du système) : les analyses automatisées, telles que les insights sur les données, effectuent une logique de fusion spécialisée avant d'appeler l'API pour s'assurer que les métadonnées à haute certitude sont conservées en fonction de leur source :

    • Priorité des sources : si plusieurs sources identifient la même relation, le Knowledge Catalog leur attribue une priorité dans l'ordre suivant :

      1. USER (Modifications manuelles)
      2. TABLE_CONSTRAINTS
      3. QUERY_HISTORY
      4. AGENT (suggestions LLM)
    • Fraîcheur du LLM : les relations dérivées de la source AGENT sont dynamiques. Si une analyse ultérieure ne recommande plus la relation, elle est supprimée.

Mettre à jour les liens d'entrée

Pour afficher et modifier les liens d'entrée, procédez comme suit :

  1. Identifiez le lien d'entrée.

    Avant de pouvoir mettre à jour une relation, recherchez son nom de ressource en listant tous les liens d'entrée impliquant une entrée de table spécifique :

    gcurl -X GET "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/entryGroups/@bigquery/entryLinks?filter=entry_references.name=\"TABLE_ENTRY_NAME\""
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID de votre projet Google Cloud
    • LOCATION : région dans laquelle votre analyse de données est déclenchée.
    • TABLE_ENTRY_NAME : nom complet de l'entrée de table BigQuery (par exemple, bigquery.googleapis.com/projects/my-project/datasets/my_dataset/tables/my_table)
  2. Modifiez le lien de l'entrée.

    Pour modifier l'aspect schema-join du lien d'entrée ciblé, utilisez la méthode PATCH :

    gcurl -X PATCH "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/entryGroups/@bigquery/entryLinks/ENTRYLINK_ID?aspectKeys=dataplex-types.global.schema-join" \
    -d '{
      "aspects": {
        "dataplex-types.global.schema-join": {
          "data": {
            "joins": [
              {
                "source": { "name": "PROJECT_ID.DATASET_ID.SOURCE_TABLE", "fields": ["SOURCE_FIELD"] },
                "target": { "name": "PROJECT_ID.DATASET_ID.TARGET_TABLE", "fields": ["TARGET_FIELD"] },
                "type": "JOIN",
                "inferenceSource": "USER"
              }
            ],
            "userManaged": false 
          }
        }
      }
    }'
    

    Remplacez les éléments suivants :

    • ENTRYLINK_ID : ID du lien d'entrée récupéré à l'étape d'identification précédente
    • DATASET_ID : ID de votre ensemble de données BigQuery
    • SOURCE_TABLE : nom de la table source
    • SOURCE_FIELD : nom de la colonne utilisée pour la jointure dans la table source
    • TARGET_TABLE : nom de la table cible
    • TARGET_FIELD : nom de la colonne utilisée pour la jointure dans la table cible

Étapes suivantes