

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Regola di analisi della tabella di mappatura degli ID
<a name="analysis-rules-id-mapping-table"></a>

In AWS Clean Rooms, una regola di analisi della *tabella di mappatura degli ID non è una regola di analisi* autonoma. Questo tipo di regola di analisi è gestita AWS Clean Rooms e utilizzata per unire dati di identità diversi per facilitare l'esecuzione di query. Viene aggiunta automaticamente alle tabelle di mappatura degli ID e non può essere modificata. Eredita i comportamenti delle altre regole di analisi previste dalla collaborazione, purché tali regole di analisi siano omogenee.

La regola di analisi della tabella di mappatura degli ID impone la sicurezza su una tabella di mappatura degli ID. Impedisce a un membro della collaborazione di selezionare o ispezionare direttamente la popolazione non sovrapposta tra i set di dati dei due membri utilizzando la tabella di mappatura degli ID. La regola di analisi della tabella di mappatura degli ID viene utilizzata per proteggere i dati sensibili nella tabella di mappatura degli ID quando viene utilizzata implicitamente in query con altre regole di analisi.

Con la regola di analisi della tabella di mappatura degli ID, AWS Clean Rooms impone una sovrapposizione su entrambi i lati della tabella di mappatura degli ID in SQL espanso. Ciò consente di eseguire le seguenti attività: 
+ Utilizza la sovrapposizione della tabella di mappatura degli ID nelle JOIN istruzioni.

  AWS Clean Rooms consente un INNERLEFT, o un RIGHT join nella tabella di mappatura degli ID se rispetta la sovrapposizione. Per proteggere le informazioni di mappatura sensibili, la tabella di mappatura degli ID deve essere sempre sul lato "inner" di qualsiasi operazione. JOIN Ad esempio, sono valide le seguenti JOIN operazioni:
  + table LEFT JOIN id\_mapping\_table
  + id\_mapping\_table RIGHT JOIN table
  + table INNER JOIN id\_mapping\_table

  Le seguenti JOIN operazioni non sono valide:
  + id\_mapping\_table LEFT JOIN table
  + table RIGHT JOIN id\_mapping\_table

  Ciò impedisce l'esposizione dei record di mappatura che non hanno corrispondenze corrispondenti nel set di dati. L'autorizzazione di tali operazioni potrebbe potenzialmente rivelare informazioni sensibili sulle mappature dei dati degli altri membri della collaborazione.
+ Usa le colonne della tabella di mappatura nelle istruzioni. JOIN 

  Non è possibile utilizzare le colonne della tabella di mappatura nelle seguenti istruzioni:SELECT,, WHERE HAVINGGROUP BY, o ORDER BY (a meno che non vengano modificate le protezioni sull'associazione dello spazio dei nomi dell'ID di origine o sull'associazione dello spazio dei nomi dell'ID di destinazione).
+ In SQL espanso, supporta AWS Clean Rooms OUTER JOIN anche, implicit e CROSS. JOIN JOIN Questi join non possono soddisfare i requisiti di sovrapposizione. Viene invece AWS Clean Rooms utilizzato `requireOverlap` per specificare su quali colonne devono essere unite.

La struttura e la sintassi delle interrogazioni supportate sono definite in. [Struttura e sintassi delle query della tabella di mappatura degli ID](#id-mapping-table-query-controls)

I parametri della regola di analisi, definita in[Controlli di interrogazione delle regole di analisi delle tabelle di mappatura degli ID](#parameters-id-mapping-query-controls), includono i controlli di interrogazione e i controlli dei risultati delle query. I suoi controlli di interrogazione includono la possibilità di richiedere la sovrapposizione della tabella di mappatura degli ID nelle JOIN istruzioni (ovvero,). `requireOverlap`

**Topics**
+ [Struttura e sintassi delle query della tabella di mappatura degli ID](#id-mapping-table-query-controls)
+ [Controlli di interrogazione delle regole di analisi delle tabelle di mappatura degli ID](#parameters-id-mapping-query-controls)
+ [Struttura predefinita della regola di analisi della tabella di mappatura degli ID](#id-mapping-table-predefined-structure)
+ [Regola di analisi della tabella di mappatura degli ID: esempio](#id-mapping-table-example)

## Struttura e sintassi delle query della tabella di mappatura degli ID
<a name="id-mapping-table-query-controls"></a>

Le interrogazioni su tabelle che dispongono di una regola di analisi delle tabelle di mappatura degli ID devono rispettare la seguente sintassi.

```
--{{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
```

### Tabelle di collaborazione
<a name="collab-table-structure"></a>

Le tabelle seguenti rappresentano tabelle configurate esistenti in una AWS Clean Rooms collaborazione. La colonna **id** in entrambe le tabelle **cr\_drivers\_license e **cr\_insurance**** rappresenta una colonna da abbinare alla tabella di mappatura degli ID.

**cr\_drivers\_license**


|  |  |  | 
| --- |--- |--- |
| id | nome\_driver | stato\_di\_registrazione | 
| 1 | Eduard | TX | 
| 2 | - Dana | MA | 
| 3 | Gweneth | IL | 

**cr\_insurance**


|  |  |  | 
| --- |--- |--- |
| id | policyholder\_email | numero\_politica | 
| 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 | 

### Tabella di mappatura degli ID
<a name="id-mapping-table-structure"></a>

**La tabella seguente rappresenta una tabella di mappatura degli ID esistente che corrisponde alle tabelle **cr\_drivers\_license e cr\_insurance**.** Non tutte le voci avranno per entrambe le tabelle di collaborazione. IDs 


|  |  | 
| --- |--- |
| cr\_drivers\_license\_id | cr\_insurance\_id | 
| 1 | a | 
| 2 | null | 
| 3 | b | 
| null | c | 

La regola di analisi della tabella di mappatura degli ID consente solo l'esecuzione di query sull'insieme di dati sovrapposti, che avrebbero il seguente aspetto:


|  |  |  |  |  |  | 
| --- |--- |--- |--- |--- |--- |
| cr\_drivers\_license\_id | cr\_insurance\_id | nome\_conducente | stato\_di\_registrazione | policyholder\_email | numero\_politica | 
| 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 | 

### Query di esempio
<a name="id-mapping-table-example-queries"></a>

Gli esempi seguenti mostrano posizioni valide per i join della tabella di mappatura degli ID:

```
-- Single ID mapping table
SELECT
    [ select_items ]FROM
    cr_drivers_license cr_dl
    [ INNER | LEFT ] JOIN cr_identity_mapping_table idmt ON idmt.cr_drivers_license_id = cr_dl.id
    [ INNER | 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 ] JOIN cr_identity_mapping_table idmt ON idmt.cr_drivers_license_id = cr_dl.id
        [ INNER | 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 ] JOIN cr_identity_mapping_table idmt ON idmt.cr_drivers_license_id = cr_dl.id
            [ INNER | RIGHT ] JOIN cr_insurance cr_in            ON idmt.cr_insurance_id       = cr_in.id
    )SELECT
    [ select_items ]FROM
    matched_ids
;
```

### Considerazioni
<a name="id-mapping-table-considerations"></a>

Per quanto riguarda la struttura e la sintassi delle query della tabella di mappatura degli ID, tenete presente quanto segue:
+ Non puoi modificarlo.
+ Per impostazione predefinita, viene applicato alla tabella di mappatura degli ID.
+ Utilizza un'associazione di namespace ID di origine e destinazione all'interno della collaborazione. 
+ La tabella di mappatura degli ID è configurata per impostazione predefinita per fornire protezioni predefinite per la colonna che proviene dallo spazio dei nomi ID. È possibile modificare questa configurazione in modo che la colonna che proviene dallo spazio dei nomi ID (`sourceID`o`targetID`) possa essere consentita in qualsiasi punto della query. Per ulteriori informazioni, consulta [Namespace ID in AWS Clean Rooms](working-with-id-namespaces.md).
+ La regola di analisi della tabella di mappatura degli ID eredita le restrizioni SQL delle altre regole di analisi della collaborazione.

## Controlli di interrogazione delle regole di analisi delle tabelle di mappatura degli ID
<a name="parameters-id-mapping-query-controls"></a>

Con i controlli di interrogazione della tabella di mappatura degli ID, AWS Clean Rooms controlla come le colonne della tabella vengono utilizzate per interrogare la tabella. Ad esempio, controlla quali colonne vengono utilizzate per l'unione e quali colonne devono essere sovrapposte. La regola di analisi della tabella di mappatura degli ID include anche funzionalità che consentono di consentire la `sourceID` proiezione di`targetID`, di o di entrambe senza richiedere un JOIN. 

Nella tabella seguente viene illustrato ogni controllo.


| Controllo | Definizione | Utilizzo | 
| --- | --- | --- | 
| joinColumns | Le colonne che il membro che può eseguire la query può utilizzare nell'istruzione INNER JOIN. | Non è possibile joinColumns utilizzarle in altre parti della query diverse da INNER JOIN.Per ulteriori informazioni, consulta [Unisci i controlli](analysis-rules-aggregation.md#join-controls). | 
| dimensionColumns  | Le colonne (se presenti) che il membro che può eseguire la query può utilizzare nelle istruzioni SELECT e GROUP BY.  | A `dimensionColumn` può essere utilizzato in SELECT e GROUPBY.<br />A `dimensionColumn` può apparire come`joinKeys`. <br />È possibile utilizzarla `dimensionColumns` nella clausola JOIN solo se la si specifica tra parentesi. | 
| queryContraints:RequireOverlap | Le colonne della tabella di mappatura degli ID che devono essere unite per poter eseguire la query. | Queste colonne devono essere utilizzate per UNIRE la tabella di mappatura degli ID e una tabella di collaborazione. | 

## Struttura predefinita della regola di analisi della tabella di mappatura degli ID
<a name="id-mapping-table-predefined-structure"></a>

La struttura predefinita per una regola di analisi della tabella di mappatura degli ID include protezioni predefinite che vengono applicate alla e. `sourceID` `targetID` Ciò significa che la colonna con le protezioni applicate deve essere utilizzata nelle query.

È possibile configurare la regola di analisi della tabella di mappatura degli ID nei seguenti modi:
+ Entrambi `sourceID` e protetti `targetID`

  In questa configurazione, non è `targetID` possibile proiettare entrambi. `sourceID` Il `sourceID` e `targetID` deve essere utilizzato in un JOIN quando si fa riferimento alla tabella di mappatura degli ID.
+ Solo protetto `targetID`

  In questa configurazione, non `targetID` possono essere proiettati. `targetID`Deve essere utilizzato in un JOIN quando si fa riferimento alla tabella di mappatura degli ID. `sourceID`Può essere usato nella query.
+ Solo `sourceID` protetto

  In questa configurazione, non `sourceID` possono essere proiettati. `sourceID`Deve essere utilizzato in un JOIN quando si fa riferimento alla tabella di mappatura degli ID. `targetID`Può essere usato nella query.
+ Nessuno dei due `sourceID` o `targetID` protetto

  In questa configurazione, la tabella di mappatura degli ID non è soggetta ad alcuna applicazione specifica che può essere utilizzata nelle query.

L'esempio seguente mostra una struttura predefinita per una regola di analisi della tabella di mappatura degli ID con le protezioni predefinite applicate alla sabbia. `sourceID` `targetID` In questo esempio, la regola di analisi della tabella di mappatura degli ID consente solo un INNER JOIN sia sulla colonna che sulla colonna. `sourceID` `targetID` 

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

L'esempio seguente mostra una struttura predefinita per una regola di analisi della tabella di mappatura degli ID con protezioni applicate a. `targetID` In questo esempio, la regola di analisi della tabella di mappatura ID consente solo un INNER JOIN sulla colonna. `sourceID` 

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

L'esempio seguente mostra una struttura predefinita per una regola di analisi della tabella di mappatura degli ID con protezioni applicate a. `sourceID` In questo esempio, la regola di analisi della tabella di mappatura ID consente solo un INNER JOIN sulla colonna. `targetID` 

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

L'esempio seguente mostra una struttura predefinita per una regola di analisi della tabella di mappatura ID senza protezioni applicate all'or. `sourceID` `targetID` In questo esempio, la regola di analisi della tabella di mappatura degli ID consente un INNER JOIN sia sulla colonna che sulla colonna. `sourceID` `targetID` 

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

## Regola di analisi della tabella di mappatura degli ID: esempio
<a name="id-mapping-table-example"></a>

Invece di scrivere una lunga dichiarazione a cascata che faccia riferimento a informazioni di identificazione personale (PII), ad esempio, le aziende possono utilizzare la regola di analisi delle tabelle di mappatura degli ID per utilizzare la transcodifica multipartitica. LiveRamp L'esempio seguente dimostra come è possibile collaborare all'utilizzo della regola di analisi delle tabelle di mappatura degli ID. AWS Clean Rooms 

La società A è un inserzionista che dispone di dati sui clienti e sulle vendite, che verranno utilizzati come fonte. La società A esegue anche la transcodifica per conto delle parti coinvolte nella collaborazione e fornisce le credenziali. LiveRamp 

La società B è un editore che dispone di dati sugli eventi, che verranno utilizzati come destinazione.

**Nota**  
La società A o la società B possono fornire credenziali di LiveRamp transcodifica ed eseguire la transcodifica.

Per creare una collaborazione che consenta l'analisi delle tabelle di mappatura degli ID in collaborazione, le aziende eseguono le seguenti operazioni:

1. La società A crea una collaborazione e crea un'iscrizione. Aggiunge la società B, che crea anche un'appartenenza alla collaborazione.

1. La società A associa una fonte di namespace ID esistente o ne crea una nuova AWS Entity Resolution utilizzando la console. AWS Clean Rooms 

   La società A crea una tabella configurata con i relativi dati di vendita e una colonna inserita nella tabella di mappatura degli `sourceId` ID.

   L'origine del namespace ID fornisce i dati da transcodificare.

1. La società B associa una destinazione dello spazio dei nomi ID esistente o ne crea una nuova utilizzando la console. AWS Entity Resolution AWS Clean Rooms 

   La società B crea una tabella configurata con i dati relativi agli eventi e una colonna inserita nella tabella di mappatura degli `targetId` ID.

   Il target dello spazio dei nomi ID non fornisce dati da transcodificare, ma solo metadati relativi alla configurazione. LiveRamp 

1. L'azienda A scopre i due namespace ID associati alla collaborazione e crea e popola una tabella di mappatura degli ID.

1. La società A esegue una query sui due set di dati unendosi alla tabella di mappatura degli 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
   ```