Como funciona

O Aggregation Service oferece às adtechs os insights de performance necessários para melhorar a eficácia das campanhas com os clientes.

Este documento abrange:

Para quem é este documento?

Esta página ajuda as adtechs e os desenvolvedores a entender como nossas APIs permitem uma medição de publicidade eficaz e que preserva a privacidade.

Este documento pressupõe que você já conhece a API Private Aggregation, a API Attribution Reporting, a API Protected Audience, o Shared Storage e os Ambientes de execução confiáveis.

Principais termos e conceitos

Conheça os principais termos antes de prosseguir:

Glossário

AdTech

Uma plataforma de publicidade é uma empresa que presta serviços para veicular anúncios.

Relatórios agregáveis

Os relatórios criptografados são enviados de dispositivos de usuários individuais. Esses relatórios contêm dados sobre o comportamento do usuário entre sites e as conversões. As conversões (às vezes chamadas de eventos acionador de atribuição) e as métricas associadas são definidas pelo anunciante ou pela adtech. Cada relatório é criptografado para impedir que várias partes acessem os dados.

Saiba mais sobre os relatórios com agregação.

Contabilização de relatórios agregáveis

Um ledger distribuído, localizado nos dois coordenadores, que rastreia o orçamento de privacidade alocado e aplica a regra "Sem duplicações". Esse é o mecanismo de preservação da privacidade, localizado e executado em coordenadores, que garante que nenhum relatório passe pelo serviço de agregação além do orçamento de privacidade alocado.

Saiba mais sobre como as estratégias de lote se relacionam com os relatórios agregáveis.

Orçamento de contabilidade de relatórios agregáveis

Referências ao orçamento que garantem que os relatórios individuais não sejam processados mais de uma vez.

Serviço de agregação

Um serviço operado por adtech que processa relatórios agregáveis para criar um relatório de resumo.

Leia mais sobre o histórico do serviço de agregação em nosso texto explicativo e na lista completa de termos.

Declaração

Um mecanismo para autenticar a identidade do software, geralmente com hashes criptográficos ou assinaturas. Para a proposta de serviço de agregação, o atestado corresponde ao código executado no serviço de agregação operado pela adtech com o código de código aberto.

Leia mais sobre atestados.

Vinculação de contribuição
Coordenador

Entidades responsáveis pelo gerenciamento de chaves e pela contabilidade de relatórios agregáveis. Um coordenador mantém uma lista de hashes de configurações de serviço de agregação aprovadas e configura o acesso às chaves de descriptografia.

Ruído e escalonamento

Ruído estatístico adicionado aos relatórios de resumo durante o processo de agregação para preservar a privacidade e garantir que os relatórios finais forneçam informações de medição anônimas.

Leia mais sobre o mecanismo de ruído aditivo, que é extraído da distribuição de Laplace.

Origem do relatório

A entidade que recebe relatórios agregáveis, ou seja, você ou uma adtech que chamou a API Attribution Reporting. Os relatórios agregáveis são enviados dos dispositivos dos usuários para um URL conhecido associado à origem do relatório. A origem do relatório é designada durante o registro.

ID compartilhado

Um valor computado que consiste em shared_info, reporting_origin, destination_site (somente para a API Attribution Reporting), source_registration-time (somente para a API Attribution Reporting), scheduled_report_time e versão.

Vários relatórios que compartilham os mesmos atributos no campo shared_info precisam ter o mesmo ID compartilhado. Os IDs compartilhados desempenham um papel importante na contabilização de relatórios agregáveis.

Saiba mais sobre servidores confiáveis.

Relatório do resumo

Um tipo de relatório da API Attribution Reporting e da API Private Aggregation. Um relatório de resumo inclui dados agregados do usuário e pode conter dados de conversão detalhados com ruído adicionado. Os relatórios de resumo são compostos por relatórios agregados. Eles permitem mais flexibilidade e oferecem um modelo de dados mais rico do que os relatórios no nível do evento, principalmente para alguns casos de uso, como valores de conversão.

Ambiente de execução confiável (TEE)

Uma configuração segura de hardware e software de computador que permite que partes externas verifiquem as versões exatas do software em execução na máquina sem medo de exposição. Os TEEs permitem que terceiros verifiquem se o software faz exatamente o que o fabricante afirma.

Para saber mais sobre os TEEs usados para as propostas do Sandbox de privacidade, leia a explicação dos serviços da API Protected Audience e a explicação do serviço de agregação.

Fluxo de trabalho do serviço de agregação

O serviço de agregação gera relatórios de resumo com dados detalhados de conversão e alcance de relatórios agregáveis brutos. O fluxo de geração de relatórios é composto pelas seguintes etapas:

  1. Um navegador busca uma chave pública para gerar relatórios criptografados.
  2. Os relatórios agregáveis criptografados são enviados para servidores de adtech.
  3. O servidor de adtech loteia os relatórios (no formato avro) e os envia para o serviço de agregação.
  4. Um worker de agregação recupera os relatórios agregados para descriptografar.
  5. O worker de agregação recupera chaves de descriptografia de um coordenador.
  6. O worker de agregação descriptografa os relatórios para agregação e geração de ruídos.
  7. O serviço de contabilidade de relatórios agregação verifica se há orçamento de privacidade suficiente para gerar um relatório de resumo dos relatórios de agregação.
  8. O serviço de agregação envia um relatório de resumo final.

O diagrama a seguir mostra o serviço de agregação em ação, desde o momento em que os relatórios são recebidos da Web e de dispositivos móveis até o momento em que um relatório de resumo é criado pelo serviço de agregação.

Fluxo completo do serviço de agregação.
Fluxo completo do serviço de agregação

Em resumo, a API Attribution Reporting ou a API Private Aggregation geram relatórios de várias instâncias de navegador. O Chrome recebe uma chave pública, alternada a cada sete dias, do serviço de hospedagem de chaves no coordenador para criptografar os relatórios antes de enviá-los à origem de relatórios da adtech. A origem de relatórios da adtech coleta e converte os relatórios recebidos para o formato avro e os envia ao serviço de agregação. Quando uma solicitação em lote é enviada ao serviço de agregação, ele busca chaves de descriptografia do serviço de hospedagem de chaves, descriptografa os relatórios, agrega e gera ruídos para criar um relatório de resumo, desde que haja orçamento de privacidade suficiente para isso.

Saiba como preparar seus relatórios agregáveis na seção de implementação.

Relatórios agregáveis em lote

O fluxo de relatórios não seria completo sem a ajuda do servidor de origem de relatórios designado, especificado durante o processo de inscrição. A origem de relatórios é responsável por coletar, transformar e agrupar relatórios agregáveis e prepará-los para envio ao serviço de agregação no Google Cloud ou nos Amazon Web Services. Saiba como preparar seus relatórios agregáveis.

Componentes do Cloud

O serviço de agregação consiste em vários componentes de serviço de nuvem. Você usa os scripts do Terraform fornecidos para provisionar e configurar todos os componentes necessários do serviço de nuvem.

Componentes de nuvem do serviço de agregação.
Componentes de nuvem do serviço de agregação.

Serviço de front-end

Serviço gerenciado do Cloud:Cloud Function (Google Cloud) / API Gateway (Amazon Web Services)

O serviço de front-end é um gateway sem servidor que é o ponto de entrada principal para chamadas da API Aggregation para criação de jobs e recuperação do estado deles. Ele é responsável por receber solicitações dos usuários do serviço de agregação, validar parâmetros de entrada e iniciar o processo de programação de jobs de agregação.

O serviço de front-end tem duas APIs disponíveis:

Endpoint Descrição
createJob Essa API aciona um job do serviço de agregação. Para acionar o job, são necessárias informações como ID do job, detalhes de armazenamento de entrada, detalhes de armazenamento de saída e origem de relatórios.
getJob Essa API retorna o status do job com um ID especificado. Ele fornece informações sobre o estado do job, como "Recebido", "Em andamento" ou "Concluído". Se o job for concluído, ele também vai retornar o resultado, incluindo as mensagens de erro encontradas durante a execução.

Confira a documentação da API Aggregation Service.

Fila de jobs

Serviço de nuvem gerenciado:Pub/Sub (Google Cloud) / Amazon SQS (Amazon Web Services)

A fila de jobs é uma fila de mensagens que contém solicitações de jobs para o serviço de agregação. O serviço de front-end insere solicitações de trabalho na fila, que são consumidas por workers de agregação que as processam.

Cloud Storage

Serviço de nuvem gerenciado:Google Cloud Storage (Google Cloud) / Amazon S3 (Amazon Web Services)

Os arquivos de entrada e saída usados pelo serviço de agregação, como arquivos de relatório criptografados e relatórios de resumo de saída, são mantidos no armazenamento em nuvem.

Banco de dados de metadados do job

Serviço de nuvem gerenciado:Spanner (Google Cloud) / DynamoDB (Amazon Web Services)

O banco de dados de metadados do job é usado para armazenar e acompanhar o status dos jobs de agregação. Ele registra metadados, como hora da criação, hora da solicitação, hora da atualização e estado, como "Recebido", "Em andamento" ou "Concluído". Os workers de agregação atualizam o banco de dados de metadados de jobs conforme os jobs avançam.

Worker de agregação

Serviço de nuvem gerenciado:Compute Engine com espaço confidencial (Google Cloud) / Amazon Web Services EC2 com Nitro Enclave (Amazon Web Services).

Um worker de agregação processa as solicitações de job na fila de jobs e descriptografa as entradas criptografadas usando chaves extraídas do serviço de geração e distribuição de chaves (KGDS, na sigla em inglês) nos coordenadores. Para minimizar a latência de processamento de jobs, os workers de agregação armazenam em cache as chaves de descriptografia por um período de oito horas e as usam nos jobs que processam.

Os workers de agregação operam em uma instância do ambiente de execução confiável (TEE). Um worker processa apenas um job por vez. É possível configurar vários workers para processar jobs em paralelo definindo a configuração de escalonamento automático. Se usado, o escalonamento automático ajusta dinamicamente o número de workers de acordo com o número de mensagens na fila de jobs. É possível configurar o número mínimo e máximo de workers para o escalonamento automático no arquivo de ambiente do Terraform. Para mais informações sobre o escalonamento automático, consulte estes scripts do Terraform: Amazon Web Services ou Google Cloud.

Os workers de agregação chamam o serviço de contabilização de relatórios agregáveis para a contabilização de relatórios agregáveis. Esse serviço verifica se os jobs são executados apenas se o limite do orçamento de privacidade não foi excedido. Consulte a regra"Sem duplicações". Se o orçamento estiver disponível, um relatório resumido será gerado usando os agregados com ruído. Leia mais detalhes sobre a contabilização de relatórios agregáveis.

Os workers de agregação atualizam os metadados do job no banco de dados de metadados do job. Essas informações incluem códigos de retorno do job e contadores de erros de relatório em caso de falhas parciais. Os usuários podem buscar o estado usando a API de recuperação de estado de job getJob.

Consulte este texto explicativo para uma descrição mais detalhada do serviço de agregação.

Próximas etapas

Agora que você sabe como o serviço de agregação funciona, siga o guia de início para implantar sua própria instância pelo Google Cloud ou pela Amazon Web Services.