Fonctionnement

Le service d'agrégation permet aux technologies publicitaires de récupérer des données de performances des annonces chiffrées pour analyser et optimiser les campagnes publicitaires. Il vous fournit des insights sur les performances de vos annonces afin que vous puissiez identifier ce qui fonctionne pour votre entreprise et ce qui ne fonctionne pas.

Ce document explique les points suivants:

Ce document ne couvre pas les points suivants:

  • Détails de la conception architecturale: pour en savoir plus, consultez la documentation GitHub.
  • Conseils d'implémentation: consultez le guide de démarrage pour obtenir des instructions de déploiement.

À qui s'adresse ce document ?

Cette page s'adresse aux technologies publicitaires et aux développeurs qui souhaitent comprendre comment les principales API de mesure du client, conçues pour permettre les cas d'utilisation publicitaires tout en protégeant la confidentialité des utilisateurs, fonctionnent ensemble.

Ce document suppose que vous connaissez déjà l'API Private Aggregation, l'API Attribution Reporting, l'API Protected Audience, Shared Storage et les environnements d'exécution sécurisés.

Termes et concepts clés

Familiarisez-vous avec les termes clés avant de continuer:

Glossaire

AdTech

Une plate-forme publicitaire est une entreprise qui fournit des services de diffusion d'annonces.

Rapports agrégables

Les rapports agrégables sont des rapports chiffrés envoyés depuis les appareils de chaque utilisateur. Ces rapports contiennent des données sur le comportement et les conversions des utilisateurs sur plusieurs sites. Les conversions (parfois appelées "événements de déclencheur d'attribution") et les métriques associées sont définies par l'annonceur ou la technologie publicitaire. Chaque rapport est chiffré pour empêcher diverses parties d'accéder aux données sous-jacentes.

En savoir plus sur les rapports agrégables

Comptabilisation des rapports agrégables

Un registre distribué, situé dans les deux coordinateurs, qui suit le budget de confidentialité alloué et applique la règle "Pas de doublons". Il s'agit du mécanisme de protection de la confidentialité, situé et exécuté dans les coordinateurs, qui garantit qu'aucun rapport ne passe par le service d'agrégation au-delà du budget de confidentialité alloué.

En savoir plus sur les stratégies de traitement par lot et les rapports agrégables

Budget de comptabilité des rapports agrégables

Références au budget qui garantissent que les rapports individuels ne sont pas traités plusieurs fois.

Service d'agrégation

Service géré par une technologie publicitaire qui traite les rapports agrégables pour créer un rapport récapitulatif.

Pour en savoir plus sur l'histoire du service d'agrégation, consultez notre explication et la liste complète des conditions d'utilisation.

Attestation

Mécanisme permettant d'authentifier l'identité d'un logiciel, généralement à l'aide de hachages cryptographiques ou de signatures. Pour la proposition de service d'agrégation, l'attestation fait correspondre le code exécuté dans votre service d'agrégation géré par une technologie publicitaire au code open source.

En savoir plus sur les attestations

Lien de contribution
Coordinateur

Entités responsables de la gestion des clés et de la comptabilité des rapports agrégables. Un coordinateur gère une liste de hachages des configurations de service d'agrégation approuvées et configure l'accès aux clés de déchiffrement.

Bruit et scaling

Bruit statistique ajouté aux rapports récapitulatifs lors du processus d'agrégation pour préserver la confidentialité et s'assurer que les rapports finaux fournissent des informations de mesure anonymisées.

En savoir plus sur le mécanisme de bruit additif, qui est tiré de la distribution de Laplace

Origine du rapport

Entité qui reçoit les rapports agrégables (en d'autres termes, vous ou une technologie publicitaire ayant appelé l'API Attribution Reporting). Les rapports agrégables sont envoyés depuis les appareils des utilisateurs vers une URL connue associée à l'origine des rapports. L'origine des rapports est désignée lors de l'enregistrement.

ID partagé

Valeur calculée composée de shared_info, reporting_origin, destination_site (pour l'API Attribution Reporting uniquement), source_registration-time (pour l'API Attribution Reporting uniquement), scheduled_report_time et version.

Plusieurs rapports qui partagent les mêmes attributs dans le champ shared_info doivent avoir le même ID partagé. Les ID partagés jouent un rôle important dans la comptabilité des rapports agrégables.

En savoir plus sur les serveurs de confiance

Rapport récapitulatif

Type de rapport pour l'API Attribution Reporting et l'API Private Aggregation. Un rapport récapitulatif inclut des données utilisateur agrégées et peut contenir des données de conversion détaillées avec du bruit ajouté. Les rapports de synthèse sont composés de rapports agrégables. Ils offrent une plus grande flexibilité et un modèle de données plus riche que les rapports au niveau des événements, en particulier pour certains cas d'utilisation tels que les valeurs de conversion.

Environnement d'exécution sécurisé (TEE)

Configuration sécurisée du matériel et des logiciels informatiques qui permet aux parties externes de vérifier les versions exactes des logiciels exécutés sur la machine sans craindre d'être exposés. Les TEE permettent aux parties externes de vérifier que le logiciel fait exactement ce que le fabricant affirme qu'il fait, ni plus ni moins.

Pour en savoir plus sur les TEE utilisés pour les propositions de la Privacy Sandbox, consultez la présentation des services de l'API Protected Audience et la présentation du service d'agrégation.

Workflow du service d'agrégation

Le flux de génération de rapports comprend les étapes suivantes:

  1. Un navigateur récupère la clé publique pour générer des rapports chiffrés.
  2. Les rapports agrégables chiffrés sont envoyés aux serveurs de technologie publicitaire pour être collectés, transformés et regroupés.
  3. Le serveur de technologie publicitaire regroupe les rapports (au format Avro) et les envoie au service d'agrégation.
  4. Un nœud de calcul d'agrégation récupère les rapports agrégés à déchiffrer.
  5. Le nœud de calcul d'agrégation récupère les clés de déchiffrement auprès d'un coordinateur.
  6. Le worker d'agrégation déchiffre les rapports pour les agréger et les bruiter.
  7. Le service de comptabilisation des rapports agrégables vérifie si le budget de confidentialité est suffisant pour générer un rapport récapitulatif pour les rapports agrégables donnés.
  8. Le service d'agrégation envoie un rapport récapitulatif final.

Le schéma suivant montre le service d'agrégation en action, du moment où les rapports sont reçus à partir d'appareils Web et mobiles jusqu'au moment où le rapport récapitulatif est créé dans le service d'agrégation.

Flux de bout en bout du service d'agrégation.
Flux de service d'agrégation de bout en bout

En résumé, l'API Attribution Reporting ou l'API Private Aggregation génèrent des rapports à partir de plusieurs instances de navigateur. Chrome obtient la clé publique, qui est remplacée tous les sept jours, auprès du service d'hébergement de clés du coordinateur pour chiffrer les rapports avant de les envoyer à l'origine de vos rapports sur la technologie publicitaire. L'origine de vos rapports de technologie publicitaire collecte et convertit les rapports entrants au format Avro, puis les envoie à votre service d'agrégation. Lorsque vous envoyez ensuite une requête par lot au service d'agrégation, il récupère les clés de déchiffrement auprès du service d'hébergement de clés, déchiffre les rapports, puis les agrège et les anonymise pour créer un rapport récapitulatif, à condition que le budget de confidentialité soit suffisant pour les créer.

Pour en savoir plus sur la préparation de vos rapports agrégables, consultez la section "Implémentation".

Traitement par lot des rapports agrégables

Le flux de création de rapports ne serait pas complet sans l'aide du serveur d'origine de création de rapports désigné. Il s'agit de l'origine que vous avez indiquée lors du processus d'inscription. L'origine des rapports est chargée de collecter, de transformer et de regrouper les rapports agrégables qu'elle reçoit, et de les préparer à être envoyés à votre service d'agrégation dans Google Cloud ou Amazon Web Services. Découvrez comment préparer vos rapports agrégables.

Maintenant que vous avez compris le concept général, nous pouvons examiner de plus près les composants déployés dans votre service d'agrégation.

Composants Cloud

Le service d'agrégation se compose de plusieurs composants de service cloud. Vous utilisez les scripts Terraform fournis pour provisionner et configurer tous les composants de service cloud nécessaires.

Composants cloud du service d'agrégation
Composants cloud du service d'agrégation.

Service frontend

Service cloud géré:Cloud Function (Google Cloud) / API Gateway (Amazon Web Services)

Le service de frontend est une passerelle sans serveur qui constitue le point d'entrée principal pour les appels d'API d'agrégation pour la création et la récupération de l'état des tâches. Il est chargé de recevoir les requêtes des utilisateurs du service d'agrégation, de valider les paramètres d'entrée et de lancer le processus de planification des tâches d'agrégation.

Le service d'interface dispose de deux API:

Point de terminaison Description
createJob Cette API déclenche une tâche du service d'agrégation. Pour déclencher la tâche, vous devez fournir des informations telles que l'ID de la tâche, les détails de stockage des entrées et des sorties, l'origine des rapports, etc.
getJob Cette API renvoie l'état de la tâche associée à un ID de tâche spécifié. Il fournit des informations sur l'état de la tâche, telles que "Reçue", "En cours" ou "Terminée". Si la tâche est terminée, elle renvoie également le résultat de la tâche, y compris les messages d'erreur rencontrés lors de son exécution.

Consultez la documentation de l'API du service d'agrégation.

File d'attente de tâches

Service cloud géré:Pub/Sub (Google Cloud) / Amazon SQS (Amazon Web Services)

La file d'attente de tâches est une file de messages contenant des requêtes de tâches pour le service d'agrégation. Le service frontend insère les requêtes de tâches dans la file d'attente, qui sont ensuite consommées par les nœuds de calcul d'agrégation qui les traitent.

Cloud Storage

Service cloud géré:Google Cloud Storage (Google Cloud) / Amazon S3 (Amazon Web Services)

Les fichiers d'entrée et de sortie utilisés par le service d'agrégation, tels que les fichiers de rapport chiffrés et les rapports récapitulatifs de sortie, sont stockés dans un stockage cloud.

Base de données de métadonnées de tâche

Service cloud géré:Spanner (Google Cloud) / DynamoDB (Amazon Web Services)

La base de données de métadonnées de tâche permet de stocker et de suivre l'état des tâches d'agrégation. Il enregistre des métadonnées telles que l'heure de création, l'heure de la requête, l'heure de la mise à jour et l'état (par exemple, "Reçu", "En cours" ou "Terminé"). Les nœuds de calcul d'agrégation mettent à jour la base de données de métadonnées de tâche à mesure que les tâches progressent.

Nœud de calcul d'agrégation

Service cloud géré:Compute Engine avec espace confidentiel (Google Cloud) / Amazon Web Services EC2 avec Nitro Enclave (Amazon Web Services)

Un worker d'agrégation traite les requêtes de tâches dans la file d'attente de tâches et déchiffre les entrées chiffrées à l'aide des clés qu'il extrait du service de génération et de distribution de clés (KGDS) dans les coordinateurs. Pour réduire la latence de traitement des tâches, les nœuds de calcul d'agrégation mettent en cache les clés de déchiffrement pendant huit heures et les utilisent dans les tâches qu'ils traitent.

Les nœuds de calcul d'agrégation fonctionnent dans une instance d'environnement d'exécution sécurisé (TEE). Un nœud de calcul ne gère qu'une seule tâche à la fois. Vous pouvez configurer plusieurs nœuds de calcul pour traiter des tâches en parallèle en définissant la configuration d'autoscaling. Si vous l'utilisez, l'autoscaling ajuste dynamiquement le nombre de nœuds de calcul en fonction du nombre de messages dans la file d'attente de tâches. Vous pouvez configurer le nombre minimal et maximal de nœuds de calcul pour l'autoscaling via le fichier d'environnement Terraform. Pour en savoir plus sur l'autoscaling, consultez ces scripts Terraform: Amazon Web Services ou Google Cloud.

Les nœuds de calcul d'agrégation appellent le service de comptabilité des rapports agrégables pour la comptabilité des rapports agrégables. Ce service garantit que les tâches ne sont exécutées que si la limite du budget lié à la confidentialité n'a pas été dépassée. (voir la règle"Pas de doublons"). Si le budget est disponible, un rapport récapitulatif est généré à l'aide des agrégats bruyants. En savoir plus sur la comptabilisation des rapports agrégables

Les nœuds de calcul d'agrégation mettent à jour les métadonnées de la tâche dans la base de données des métadonnées de tâche. Ces informations incluent les codes de retour de la tâche et les compteurs d'erreurs de rapport en cas d'échec partiel du rapport. Les utilisateurs peuvent récupérer l'état à l'aide de l'API de récupération de l'état de la tâche getJob.

Pour en savoir plus sur le service d'agrégation, consultez cette vidéo.

Étapes suivantes

Maintenant que vous savez comment fonctionne le service d'agrégation, déployez votre propre instance du service d'agrégation via Google Cloud ou Amazon Web Services. Consultez le guide de démarrage.