Analyser les profils de données

Si vous avez configuré le service de découverte de données sensibles de manière à envoyer tous les profils de données correctement générés à BigQuery, vous pouvez interroger ces profils de données pour obtenir des insights sur vos données. Vous pouvez également utiliser des outils de visualisation tels que Looker Studio pour créer des rapports personnalisés adaptés aux besoins de votre entreprise. Vous pouvez également utiliser un rapport prédéfini fourni par la protection des données sensibles, l'ajuster et le partager si nécessaire.

Cette page fournit des exemples de requêtes SQL que vous pouvez utiliser pour en savoir plus sur vos profils de données. Il vous explique également comment visualiser des profils de données dans Looker Studio.

Pour en savoir plus sur les profils de données, consultez la page Profils de données.

Avant de commencer

Dans cette page, nous partons du principe que vous avez configuré le profilage au niveau de l'organisation, du dossier ou du projet. Dans votre configuration, veillez à activer l'exportation des profils de données en cliquant sur le bouton Enregistrer des copies des profils de données dans BigQuery.

Dans ce document, la table qui contient les profils de données exportés est appelée table de sortie.

Assurez-vous que l'ID du projet, l'ID de l'ensemble de données et l'ID de la table de sortie sont à portée de main. Vous en aurez besoin pour suivre les procédures décrites sur cette page.

Vue latest

Lorsque la protection des données sensibles exporte des profils de données vers votre table de sortie, elle crée également la vue latest. Cette vue est une table virtuelle préfiltrée qui n'inclut que les derniers instantanés de vos profils de données. La vue latest présente le même schéma que la table de sortie. Vous pouvez donc utiliser les deux de manière interchangeable dans vos requêtes SQL et vos rapports Looker Studio. Les résultats peuvent différer, car la table de sortie contient d'anciens instantanés des profils de données.

La vue latest est stockée au même emplacement que la table de sortie. Son nom a le format suivant:

OUTPUT_TABLE_latest_VERSION

Remplacez les éléments suivants :

  • OUTPUT_TABLE: ID de la table contenant les profils de données exportés.
  • VERSION: numéro de version de la vue.

Par exemple, si le nom de votre table de sortie est table-profile, la vue latest porte un nom du type table-profile_latest_v1.

Dernière vue

Lorsque vous utilisez la vue latest dans des requêtes SQL, utilisez le nom complet de la vue, qui inclut l'ID du projet, l'ID de l'ensemble de données, l'ID de la table et le suffixe (par exemple, myproject.mydataset.table-profile_latest_v1).

PROJECT_ID.DATASET_ID.OUTPUT_TABLE_latest_VERSION

Choisir entre la table de sortie et la vue latest

La vue latest n'inclut que les derniers instantanés de profil de données, tandis que la table de sortie contient tous les instantanés de profil de données, y compris les instantanés obsolètes. Par exemple, une requête sur la table de sortie peut renvoyer plusieurs profils de données de colonne pour la même colonne (un pour chaque fois que cette colonne a été profilée).

Lorsque vous choisissez d'utiliser la table de sortie et la vue latest dans vos requêtes SQL ou vos rapports Looker Studio, tenez compte des points suivants:

  • La vue latest est utile si certaines de vos tables ont été reprofilées et que vous ne souhaitez afficher que les derniers profils, et non leurs anciennes versions. En d'autres termes, vous voulez voir l'état actuel de vos données profilées.

  • La table de sortie est utile si vous souhaitez obtenir une vue historique de vos données profilées. Par exemple, vous essayez de déterminer si votre organisation a déjà stocké un infoType particulier ou vous souhaitez voir les modifications apportées à un profil de données particulier.

Exemples de requêtes SQL

Cette section fournit des exemples de requêtes que vous pouvez utiliser lors de l'analyse de profils de données. Pour exécuter ces requêtes, consultez la page Exécuter des requêtes interactives.

Dans les exemples suivants, remplacez TABLE_OR_VIEW par l'un des éléments suivants:

  • Nom de la table de sortie, qui contient les profils de données exportés (par exemple, myproject.mydataset.table-profile).
  • Nom de la vue latest de la table de sortie (par exemple, myproject.mydataset.table-profile_latest_v1).

Dans les deux cas, vous devez inclure l'ID du projet et l'ID de l'ensemble de données.

Pour en savoir plus, consultez la section Choisir entre la table de sortie et la vue latest sur cette page.

Pour résoudre les erreurs que vous rencontrez, consultez la page Messages d'erreur.

Lister toutes les colonnes dont le score en texte libre est élevé et qui montrent d'autres correspondances d'infoTypes

SELECT
  column_profile.table_full_resource,
  column_profile.COLUMN,
  other_matches.info_type.name,
  column_profile.profile_last_generated
FROM
   `TABLE_OR_VIEW`,
  UNNEST(column_profile.other_matches) AS other_matches
WHERE
  column_profile.free_text_score = 1
  AND ( column_profile.column_info_type.info_type.name>""
    OR ARRAY_LENGTH(column_profile.other_matches)>0 )

Pour en savoir plus sur la correction de ces résultats, consultez la section Score en texte libre élevé.

Pour en savoir plus sur les métriques Score en texte libre et Autres infoTypes, consultez Profils de données de colonne.

Lister toutes les tables contenant une colonne de numéros de carte de crédit

SELECT
  column_profile.table_full_resource,
  column_profile.profile_last_generated
FROM
  `TABLE_OR_VIEW`
WHERE
  column_profile.column_info_type.info_type.name="CREDIT_CARD_NUMBER"

CREDIT_CARD_NUMBER est un infoType intégré qui représente un numéro de carte de crédit.

Pour savoir comment corriger ces résultats, consultez la section Risque élevé pour les données.

Listez les profils de table contenant des colonnes de numéros de carte de crédit, de numéros de sécurité sociale des États-Unis et de noms de personnes

SELECT
  table_full_resource,
  COUNT(*) AS count_findings
FROM (
  SELECT
    DISTINCT column_profile.table_full_resource,
    column_profile.column_info_type.info_type.name
  FROM
    `TABLE_OR_VIEW`
  WHERE
    column_profile.column_info_type.info_type.name IN ('PERSON_NAME',
      'CREDIT_CARD_NUMBER',
      'US_SOCIAL_SECURITY_NUMBER')
  ORDER BY
    column_profile.table_full_resource ) ot1
GROUP BY
  table_full_resource
  #increase this number to match the total distinct infoTypes that must be present
HAVING
  count_findings>=3

Cette requête utilise les infoTypes intégrés suivants:

  • CREDIT_CARD_NUMBER: représente un numéro de carte de crédit.
  • PERSON_NAME: représente le nom complet d'une personne.
  • US_SOCIAL_SECURITY_NUMBER représente un numéro de sécurité sociale américain.

Pour savoir comment corriger ces résultats, consultez la section Risque élevé pour les données.

Utiliser des profils de données dans Looker Studio

Pour visualiser vos profils de données dans Looker Studio, vous pouvez utiliser un rapport prédéfini ou créer le vôtre.

Utiliser un rapport prédéfini

La protection des données sensibles fournit un rapport Looker Studio prédéfini qui met en évidence les insights détaillés sur les profils de données. Le tableau de bord de protection des données sensibles est un rapport de plusieurs pages qui vous offre une vue d'ensemble rapide de vos profils de données, y compris la répartition par risque, par infoType et par emplacement. Explorez les autres onglets pour afficher les vues par région et par risque de position, ou afficher le détail de métriques spécifiques. Vous pouvez utiliser ce rapport prédéfini tel quel ou le personnaliser selon vos besoins. Il s'agit de la version recommandée du rapport prédéfini.

Pour afficher le rapport prédéfini contenant vos données, saisissez les valeurs requises dans l'URL suivante. Ensuite, copiez l'URL obtenue dans votre navigateur.

https://lookerstudio.google.com/c/u/0/reporting/create?c.reportId=c9826374-e016-4c96-a495-7281328375c6&ds.connector=BIG_QUERY&ds.projectId=PROJECT_ID&ds.datasetId=DATASET_ID&ds.tableId=TABLE_OR_VIEW&ds.type=TABLE&ds.useFreshSchema=false

Remplacez les éléments suivants :

  • PROJECT_ID: projet contenant la table de sortie.
  • DATASET_ID: ensemble de données contenant la table de sortie.
  • TABLE_OR_VIEW: l'un des éléments suivants:

    • Nom de la table de sortie, qui contient les profils de données exportés (par exemple,myproject.mydataset.table-profile).
    • Nom de la vue latest de la table de sortie (par exemple, myproject.mydataset.table-profile_latest_v1).

    Pour en savoir plus, consultez la section Choisir entre la table de sortie et la vue latest sur cette page.

Le chargement du rapport incluant vos données dans Looker Studio peut prendre quelques minutes.

Dans l'exemple suivant, le tableau de bord montre que des données de faible sensibilité et de haute sensibilité sont présentes dans plusieurs pays à travers le monde.

Rapport prédéfini

Version antérieure du rapport prédéfini

La première version du rapport prédéfini est toujours disponible à l'adresse suivante:

https://lookerstudio.google.com/c/u/0/reporting/create?c.reportId=907a2b73-ffe4-40b2-b9a1-c2aa0bbd69fd&ds.connector=BIG_QUERY&ds.projectId=PROJECT_ID&ds.datasetId=DATASET_ID&ds.tableId=TABLE_OR_VIEW&ds.type=TABLE&ds.useFreshSchema=false

Créer un rapport

Looker Studio vous permet de créer des rapports interactifs. Dans cette section, vous allez créer dans Looker Studio un rapport sous forme de tableau simple, basé sur les profils de données exportés vers votre table de sortie dans BigQuery.

Assurez-vous que l'ID du projet, l'ID de l'ensemble de données et l'ID de la table de sortie ou de la vue latest sont à portée de main. Vous en aurez besoin pour effectuer cette procédure.

Cet exemple vous montre comment créer un rapport contenant une table affichant chaque infoType signalé dans vos profils de données, ainsi que la fréquence correspondante.

En général, des frais d'utilisation de BigQuery vous sont facturés lorsque vous y accédez via Looker Studio. Pour en savoir plus, consultez la page Visualiser des données BigQuery à l'aide de Looker Studio.

Pour créer un rapport, procédez comme suit:

  1. Ouvrez Looker Studio et connectez-vous.
  2. Cliquez sur Rapport vide.
  3. Dans l'onglet Se connecter aux données, cliquez sur la fiche BigQuery.
  4. Si vous y êtes invité, autorisez Looker Studio à accéder à vos projets BigQuery.
  5. Connectez-vous à vos données BigQuery:

    1. Dans le champ Projet, sélectionnez le projet contenant la table de sortie. Vous pouvez rechercher le projet dans les onglets Projets récents, Mes projets et Projets partagés.
    2. Dans le champ Ensemble de données, sélectionnez l'ensemble de données contenant la table de sortie.
    3. Pour Table, sélectionnez la table de sortie ou la vue latest de la table de sortie.

      Pour en savoir plus, consultez la section Choisir entre la table de sortie et la vue latest sur cette page.

    4. Cliquez sur Ajouter.

    5. Dans la boîte de dialogue qui s'affiche, cliquez sur Ajouter au rapport.

      Un rapport est créé. Une table s'affiche avec des profils de données de table et le nombre d'enregistrements correspondant.

  6. Pour ajouter une table affichant chaque infoType signalé et sa fréquence correspondante (nombre d'enregistrements), procédez comme suit:

    1. Cliquez sur Ajouter un graphique.
    2. Sélectionnez un style de tableau.
    3. Cliquez sur la zone dans laquelle vous souhaitez positionner le graphique.

      Le graphique s'affiche sous forme de tableau.

    4. Redimensionnez le tableau si nécessaire.

      Tant que la table est sélectionnée, ses propriétés apparaissent dans le volet Graphique > Table.

    5. Dans le volet Graphique > Table de l'onglet Données, dans le champ Dimension, supprimez la dimension existante.

    6. Cliquez sur Ajouter une dimension.

    7. Recherchez column_profile.column_info_type.info_type.name, puis sélectionnez-le.

    La table obtenue ressemble à ceci:

    Tableau affichant les infoTypes détectés et les fréquences correspondantes

En savoir plus sur les tableaux dans Looker Studio

Étapes suivantes

Découvrez les mesures que vous pouvez prendre pour remediate les résultats des profils de données.