Regra de análise da tabela de mapeamento de ID - AWS Clean Rooms

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Regra de análise da tabela de mapeamento de ID

Em AWS Clean Rooms, uma regra de análise de tabela de mapeamento de ID não é uma regra de análise independente. Esse tipo de regra de análise é gerenciado AWS Clean Rooms e usado para unir dados de identidade diferentes para facilitar a consulta. A regra é adicionada automaticamente às tabelas de mapeamento de ID e não pode ser editada. Ela herda os comportamentos das outras regras de análise na colaboração, desde que essas regras de análise sejam homogêneas.

A regra de análise da tabela de mapeamento de ID reforça a segurança em uma tabela de mapeamento de ID. Usando a tabela de mapeamento de ID, ela impede que um membro da colaboração selecione ou inspecione diretamente a população sem sobreposição entre os conjuntos de dados dos dois membros. A regra de análise da tabela de mapeamento de ID é usada para proteger os dados confidenciais na tabela de mapeamento de ID quando usada implicitamente em consultas com outras regras de análise.

Com a regra de análise da tabela de mapeamento de ID, AWS Clean Rooms impõe uma sobreposição em ambos os lados da tabela de mapeamento de ID no SQL expandido. Isso permite executar as seguintes tarefas:

  • Use a sobreposição da tabela de mapeamento de ID em JOIN declarações.

    AWS Clean Rooms permite um INNER, LEFT ou RIGHT junte-se na tabela de mapeamento de ID se ela respeitar a sobreposição.

  • Use as colunas da tabela de mapeamento em JOIN declarações.

    Você não pode usar as colunas da tabela de mapeamento nas seguintes declarações: SELECT, WHERE, HAVING, GROUP BY ou ORDER BY (a menos que as proteções sejam modificadas na associação do namespace do ID de origem ou na associação do namespace do ID de destino).

  • Em SQL expandido, AWS Clean Rooms também suporta OUTER JOIN, implícito JOIN, e CROSS JOIN. Essas junções não podem satisfazer os requisitos de sobreposição. Em vez disso, AWS Clean Rooms usa requireOverlap para especificar em quais colunas devem ser unidas.

A estrutura e a sintaxe de consulta aceitas são definidas em Estrutura e sintaxe da consulta da tabela de mapeamento de ID.

Os parâmetros da regra de análise, definidos em Controles de consulta de regras de análise da tabela de mapeamento de ID, incluem controles de consulta e controles de resultados de consulta. Seus controles de consulta incluem a capacidade de exigir a sobreposição da tabela de mapeamento de ID no JOIN declarações (ou seja,requireOverlap).

Estrutura e sintaxe da consulta da tabela de mapeamento de ID

As consultas em tabelas que têm uma regra de análise da tabela de mapeamento de ID devem seguir a sintaxe abaixo.

--select_list_expression SELECT provider.data_col, consumer.data_col --table_expression FROM provider JOIN idMappingTable idmt ON provider.id = idmt.sourceId JOIN consumer ON consumer.id = idmt.targetId

Tabelas de colaboração

As tabelas a seguir representam tabelas configuradas que existem em uma AWS Clean Rooms colaboração. A coluna id nas tabelas cr_drivers_license e cr_insurance representa uma coluna que corresponde à tabela de mapeamento de ID.

cr_drivers_license

id nome_do_motorista estado_de_registro
1 Eduard TX
2 Dana MA
3 Gweneth IL

cr_insurance

id e-mail do tomador da apólice número_do_apólice
a eduardo@internal.company.com 17f9d04e-f5be-4426-bdc4-250ed59c6529
b gwen@internal.company.com 3f0092db-2316-48a8-8d44-09cf8f6e6c64
c rosa@internal.company.com d7692e84-3d3c-47b8-b46d-a0d5345f0601

Tabela de mapeamento de ID

A tabela a seguir representa uma tabela de mapeamento de ID existente que corresponde às tabelas cr_drivers_license e cr_insurance. Nem todas as entradas serão válidas IDs para ambas as tabelas de colaboração.

cr_drivers_license_id ID do seguro do carro
1 a
2 nulo
3 b
nulo c

A regra de análise da tabela de mapeamento de ID só permite que as consultas sejam realizadas no conjunto de dados sobrepostos, que teria a seguinte aparência:

cr_drivers_license_id ID do seguro do carro nome_do_motorista estado_de_registro e-mail do tomador da apólice número_do_apólice
1 a Eduard TX eduardo@internal.company.com 17f9d04e-f5be-4426-bdc4-250ed59c6529
3 b Gweneth IL gwen@internal.company.com 3f0092db-2316-48a8-8d44-09cf8f6e6c64

Consultas de exemplo

Os seguintes exemplos mostram locais válidos para as junções da tabela de mapeamento de ID:

-- Single ID mapping table SELECT [ select_items ] FROM cr_drivers_license cr_dl [ INNER | LEFT | RIGHT ] JOIN cr_identity_mapping_table idmt ON idmt.cr_drivers_license_id = cr_dl.id [ INNER | LEFT | RIGHT ] JOIN cr_insurance cr_in ON idmt.cr_insurance_id = cr_in.id ; -- Single ID mapping table (Subquery) SELECT [ select_items ] FROM ( SELECT [ select_items ] FROM cr_drivers_license cr_dl [ INNER | LEFT | RIGHT ] JOIN cr_identity_mapping_table idmt ON idmt.cr_drivers_license_id = cr_dl.id [ INNER | LEFT | RIGHT ] JOIN cr_insurance cr_in ON idmt.cr_insurance_id = cr_in.id ) ; -- Single ID mapping table (CTE) WITH matched_ids AS ( SELECT [ select_items ] FROM cr_drivers_license cr_dl [ INNER | LEFT | RIGHT ] JOIN cr_identity_mapping_table idmt ON idmt.cr_drivers_license_id = cr_dl.id [ INNER | LEFT | RIGHT ] JOIN cr_insurance cr_in ON idmt.cr_insurance_id = cr_in.id ) SELECT [ select_items ] FROM matched_ids ;

Considerações

Em relação à estrutura e à sintaxe de consultas da tabela de mapeamento de ID, lembre-se de que:

  • Não é possível editá-las.

  • Elas são aplicadas à tabela de mapeamento de ID por padrão.

  • Elas usam uma associação de namespace de ID de origem e de destino na colaboração.

  • A tabela de mapeamento de ID é configurada por padrão para fornecer proteções padrão para a coluna que se origina do namepsace de ID. É possível modificar essa configuração para que a coluna que se origina do namespace de ID (sourceID ou targetID) seja permitida em qualquer lugar na consulta. Para obter mais informações, consulte Namespaces de ID em AWS Clean Rooms.

  • A regra de análise da tabela de mapeamento de ID herda as restrições SQL das outras regras de análise na colaboração.

Controles de consulta de regras de análise da tabela de mapeamento de ID

Com os controles de consulta da tabela de mapeamento de ID, AWS Clean Rooms controla como as colunas em sua tabela são usadas para consultar a tabela. Por exemplo, ele controla quais colunas são usadas para unir e quais colunas precisam de sobreposição. A regra de análise da tabela de mapeamento de ID também inclui um recurso que possibilite que o sourceID, o targetID ou ambos sejam projetados sem exigir JOIN.

A tabela a seguir explica cada controle.

Controle Definição Uso
joinColumns As colunas que o membro que pode consultar pode usar na declaração INNER JOIN. Não é possível usar joinColumns em nenhuma outra parte da consulta além de INNER JOIN.

Para obter mais informações, consulte Controles de junção.

dimensionColumns As colunas (se houver) que o membro que pode consultar pode usar nas declarações SELECT e GROUP BY.

A dimensionColumn pode ser usado em SELECT and GROUP BY.

A dimensionColumn pode ser exibida como joinKeys.

Você só poderá usar dimensionColumns na cláusula JOIN se especificá-la entre colchetes.

queryContraints:RequireOverlap

As colunas na tabela de mapeamento de ID que devem ser unidas para que a consulta possa ser realizada.

Essas colunas devem ser usadas para unir (JOIN) a tabela de mapeamento de ID e uma tabela de colaboração.

Estrutura predefinida da regra de análise da tabela de mapeamento de ID

A estrutura predefinida de uma regra de análise da tabela de mapeamento de ID vem com proteções padrão que são aplicadas ao sourceID e ao targetID. Isso significa que a coluna com proteções aplicadas deve ser usada em consultas.

É possível configurar a regra de análise da tabela de mapeamento de ID das seguintes maneiras:

  • O sourceID e o targetID protegidos

    Nessa configuração, o sourceID e o targetID não podem ser projetados. O sourceID e targetID devem ser usados em uma JOIN quando a tabela de mapeamento de ID é referida.

  • Somente o targetID protegido

    Nessa configuração, o targetID não pode ser projetado. O targetID deve ser usado em uma JOIN quando a tabela de mapeamento de ID é referida. O sourceID pode ser usado na consulta.

  • Somente o sourceID protegido

    Nessa configuração, o sourceID não pode ser projetado. O sourceID deve ser usado em uma JOIN quando a tabela de mapeamento de ID é referida. O targetID pode ser usado na consulta.

  • Nem o sourceID nem o targetID protegidos

    Nessa configuração, a tabela de mapeamento de ID não está sujeita a nenhuma imposição específica que possa ser usada na consulta.

O exemplo a seguir mostra uma estrutura predefinida para uma regra de análise da tabela de mapeamento de ID com as proteções padrão aplicadas ao sourceID e ao targetID. Neste exemplo, a regra de análise da tabela de mapeamento de ID só permite uma INNER JOIN nas colunas sourceID e targetID.

{ "joinColumns": [ "source_id", "target_id" ], "queryConstraints": [ { "requireOverlap": { "columns": [ "source_id", "target_id" ] } } ], "dimensionColumns": [] // columns that can be used in SELECT and JOIN }

O exemplo a seguir mostra uma estrutura predefinida para uma regra de análise da tabela de mapeamento de ID com as proteções padrão aplicadas ao targetID. Neste exemplo, a regra de análise da tabela de mapeamento de ID só permite uma INNER JOIN na coluna sourceID.

{ "joinColumns": [ "source_id", "target_id" ], "queryConstraints": [ { "requireOverlap": { "columns": [ "target_id" ] } } ], "dimensionColumns": [ "source_id" ] }

O exemplo a seguir mostra uma estrutura predefinida para uma regra de análise da tabela de mapeamento de ID com as proteções padrão aplicadas ao sourceID. Neste exemplo, a regra de análise da tabela de mapeamento de ID só permite uma INNER JOIN na coluna targetID.

{ "joinColumns": [ "source_id", "target_id" ], "queryConstraints": [ { "requireOverlap": { "columns": [ "source_id" ] } } ], "dimensionColumns": [ "target_id" ] }

O exemplo a seguir mostra uma estrutura predefinida para uma regra de análise da tabela de mapeamento de ID sem as proteções aplicadas ao sourceID ou ao targetID. Neste exemplo, a regra de análise da tabela de mapeamento de ID permite uma INNER JOIN nas colunas sourceID e targetID.

{ "joinColumns": [ "source_id", "target_id" ], "queryConstraints": [ { "requireOverlap": { "columns": [] } } ], "dimensionColumns": [ "source_id", "target_id" ] }

Regra de análise da tabela de mapeamento de ID: exemplo

Em vez de escrever uma longa declaração em cascata que faça referência a Informações de Identificação Pessoal (PII), por exemplo, as empresas podem usar a regra de análise da tabela de mapeamento de ID para usar a transcodificação multipartidária. LiveRamp O exemplo a seguir demonstra como você pode colaborar AWS Clean Rooms usando a regra de análise da tabela de mapeamento de ID.

A Empresa A é uma anunciante que tem dados de clientes e de vendas, os quais serão usados como fonte. A empresa A também realiza a transcodificação em nome das partes na colaboração e traz as LiveRamp credenciais.

A Empresa B é uma editora que tem dados de eventos, os quais serão usados como destino.

nota

Tanto a Empresa A quanto a Empresa B podem fornecer credenciais de LiveRamp transcodificação e realizar a transcodificação.

Para criar uma colaboração que possibilite a análise da tabela de mapeamento de ID em colaboração, as empresas fazem o seguinte:

  1. A empresa A cria uma colaboração e cria uma associação. Ela adiciona a Empresa B, que também cria uma associação na colaboração.

  2. A empresa A associa uma fonte de namespace de ID existente ou cria uma nova AWS Entity Resolution usando o console. AWS Clean Rooms

    A Empresa A cria uma tabela configurada com seus dados de vendas e uma coluna com chave no sourceId na tabela de mapeamento de ID.

    A origem do namespace de ID fornece dados para transcodificação.

  3. A empresa B associa um destino de namespace de ID existente ou cria um novo AWS Entity Resolution usando o console. AWS Clean Rooms

    A Empresa B cria uma tabela configurada com os respectivos dados de evento e uma coluna com chave no targetId na tabela de mapeamento de ID.

    O destino do namespace de ID não fornece dados para transcodificação, apenas metadados em torno da configuração. LiveRamp

  4. A Empresa A descobre os dois namespaces de ID associados à colaboração e cria e preenche uma tabela de mapeamento de ID.

  5. A Empresa A realiza uma consulta nos dois conjuntos de dados unindo-os na tabela de mapeamento de ID.

    --- this would be valid for Custom or List SELECT provider.data_col, consumer.data_col FROM provider JOIN idMappingTable-123123123123-myMappingWFName idmt ON provider.id = idmt.sourceId JOIN consumer ON consumer.id = idmt.targetId