ID マッピングテーブル分析ルール - AWS Clean Rooms

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ID マッピングテーブル分析ルール

では AWS Clean Rooms、ID マッピングテーブル分析ルールはスタンドアロンの分析ルールではありません。このタイプの分析ルールは によって管理 AWS Clean Rooms され、クエリを容易にするために異なる ID データを結合するために使用されます。ID マッピングテーブルに自動的に追加され、編集することはできません。コラボレーション内の他の分析ルールの動作は、それらの分析ルールが同種である限り、継承されます。

ID マッピングテーブル分析ルールは、ID マッピングテーブルにセキュリティを適用します。これにより、コラボレーションメンバーが ID マッピングテーブルを使用して、2 つのメンバーのデータセット間で重複しない母集団を直接選択または検査することが制限されます。ID マッピングテーブル分析ルールは、他の分析ルールを含むクエリで暗黙的に使用される場合に、ID マッピングテーブル内の機密データを保護するために使用されます。

ID マッピングテーブル分析ルールを使用すると、 は拡張された で ID マッピングテーブルの両側に重複 AWS Clean Rooms を適用しますSQL。これにより、次のタスクを実行できます。

  • JOIN ステートメントで ID マッピングテーブルの重複を使用します。

    AWS Clean Rooms はINNER、重複を優先する場合LEFT、ID マッピングテーブルで 、、または RIGHT結合を許可します。

  • ステートメントでマッピングテーブル列JOINを使用します。

    マッピングテーブルの列は、、SELECT、WHERE、GROUP BY、または ステートメントでは使用できません ORDER BY (ソース ID 名前空間の関連付けまたはターゲット ID HAVING名前空間の関連付けで保護が変更されている場合を除く)。

  • 拡張された ではSQL、 は OUTER JOIN、暗黙的な JOIN、および CROSS AWS Clean Rooms もサポートしていますJOIN。これらの結合は重複要件を満たせません。代わりに、 AWS Clean Rooms を使用して、結合する列requireOverlapを指定します。

サポートされているクエリ構造と構文は、 で定義されていますID マッピングテーブルのクエリ構造と構文

で定義されている分析ルールのパラメータには、クエリコントロールとクエリ結果コントロールID マッピングテーブル分析ルールのクエリコントロールが含まれます。そのクエリコントロールには、 JOINステートメント (つまり、) で ID マッピングテーブルの重複を要求する機能が含まれますrequireOverlap

ID マッピングテーブルのクエリ構造と構文

ID マッピングテーブル分析ルールを持つテーブルに対するクエリは、次の構文に従う必要があります。

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

コラボレーションテーブル

次の表は、 AWS Clean Rooms コラボレーションに存在する設定済みテーブルを示しています。cr_drivers_license テーブルと cr_insurance テーブルの両方の ID 列は、ID マッピングテーブルと一致する列を表します。

cr_drivers_license

id driver_name state_of_registration
1 エドゥアルド TX
2 ダナ MA
3 Gweneth IL

cr_保険

id policyholder_email policy_number
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

ID マッピングテーブル

次の表は、cr_drivers_license テーブルcr_insurance テーブルで一致する既存の ID マッピングテーブルを示しています。すべてのエントリが両方のコラボレーションテーブルIDsに を持つわけではありません。

cr_drivers_license_id cr_insurance_id
1 a
2 null
3 b
null c

ID マッピングテーブル分析ルールでは、重複するデータのセットに対してのみクエリを実行できます。これは次のように表示されます。

cr_drivers_license_id cr_insurance_id driver_name state_of_registration policyholder_email policy_number
1 a エドゥアルド TX eduardo@internal.company.com 17f9d04e-f5be-4426-bdc4-250ed59c6529
3 b Gweneth IL gwen@internal.company.com 3f0092db-2316-48a8-8d44-09cf8f6e6c64

クエリの例

次の例は、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 ;

考慮事項

ID マッピングテーブルのクエリ構造と構文については、次の点に注意してください。

  • 編集することはできません。

  • デフォルトでは、ID マッピングテーブルに適用されます。

  • コラボレーション内でソース ID とターゲット ID の名前空間の関連付けを使用します。

  • ID マッピングテーブルは、ID namepsace からの列に対してデフォルトの保護を提供するようにデフォルトで設定されています。この設定を変更して、ID 名前空間 ( sourceIDまたは targetID) からの列をクエリの任意の場所で許可できます。詳細については、「の ID 名前空間 AWS Clean Rooms」を参照してください。

  • ID マッピングテーブル分析ルールは、コラボレーション内の他の分析ルールSQLの制限を継承します。

ID マッピングテーブル分析ルールのクエリコントロール

ID マッピングテーブルのクエリコントロールを使用すると、 はテーブル内の列を使用してテーブルをクエリする方法 AWS Clean Rooms を制御します。例えば、結合に使用する列と重複が必要な列を制御します。ID マッピングテーブル分析ルールには、、sourceIDtargetIDまたはその両方を を必要とせずに射影できるようにする機能も含まれていますJOIN。

次の表では、各コントロールについて説明します。

コントロール 定義 使用方法
joinColumns クエリを行えるメンバーがINNERJOINステートメントで使用できる列。 以外のクエリの他の部分joinColumnsで INNER を使用することはできませんJOIN。

詳細については、「結合コントロール」を参照してください。

dimensionColumns クエリを行えるメンバーが SELECTおよび GROUP BY ステートメントで使用できる列 (存在する場合)。

は、 SELECTおよび GROUP でdimensionColumn使用できますBY。

dimensionColumn は として表示できますjoinKeys

JOIN dimensionColumns 句で を使用できるのは、角括弧で指定した場合のみです。

queryContraints:RequireOverlap

クエリを実行できるように結合する必要がある ID マッピングテーブルの列。

これらの列は、JOINID マッピングテーブルとコラボレーションテーブルに使用する必要があります。

ID マッピングテーブル分析ルールの事前定義された構造

ID マッピングテーブル分析ルールの事前定義された構造には、 sourceIDおよび に適用されるデフォルトの保護が付属していますtargetID。つまり、保護が適用された 列をクエリで使用する必要があります。

ID マッピングテーブル分析ルールは、次の方法で設定できます。

  • sourceID と の両方targetIDの保護

    この設定では、 sourceIDtargetID の両方を射影することはできません。ID マッピングテーブルが参照JOINされている場合は、 sourceIDおよび を で使用するtargetID必要があります。

  • targetID 保護のみ

    この設定では、 targetID を射影できません。ID マッピングテーブルが参照されるJOINときは、 を で使用するtargetID必要があります。sourceID はクエリで使用できます。

  • sourceID 保護のみ

    この設定では、 sourceID を射影できません。ID マッピングテーブルが参照されるJOINときは、 を で使用するsourceID必要があります。targetID はクエリで使用できます。

  • どちらsourceIDでもtargetIDない

    この設定では、ID マッピングテーブルは、クエリで使用できる特定の強制の対象ではありません。

次の例は、 sourceIDおよび にデフォルトの保護が適用された ID マッピングテーブル分析ルールの事前定義された構造を示していますtargetID。この例では、ID マッピングテーブル分析ルールは、 sourceID列と targetID列INNERJOINの両方で のみを許可します。

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

次の例は、 に保護が適用された ID マッピングテーブル分析ルールの事前定義された構造を示していますtargetID。この例では、ID マッピングテーブル分析ルールは sourceID列INNERJOINの のみを許可します。

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

次の例は、 に保護が適用された ID マッピングテーブル分析ルールの事前定義された構造を示していますsourceID。この例では、ID マッピングテーブル分析ルールは targetID列INNERJOINの のみを許可します。

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

次の例は、 sourceIDまたは に保護が適用されていない ID マッピングテーブル分析ルールの事前定義された構造を示していますtargetID。この例では、ID マッピングテーブル分析ルールは、 sourceID列と INNER JOIN targetID列の両方で を許可します。

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

ID マッピングテーブル分析ルール – 例

例えば、企業は ID マッピングテーブル分析ルールを使用してマルチパーティー LiveRamp トランスコードを使用できるため、個人を特定できる情報 (PII) を参照する長いウォーターフォールステートメントを記述するのではなく、次の例は、ID マッピングテーブル分析ルール AWS Clean Rooms を使用して でコラボレーションする方法を示しています。

A 社は、顧客および売上データを持つ広告業者であり、ソースとして使用されます。A 社は、コラボレーションの当事者に代わってトランスコードも実行し、 LiveRamp 認証情報を取得します。

B 社はイベントデータを持つパブリッシャーであり、ターゲットとして使用されます。

注記

A 社または B 社は、 LiveRamp トランスコード認証情報を提供し、トランスコードを実行できます。

ID マッピングテーブル分析をコラボレーションで有効にするコラボレーションを作成するには、企業は以下を実行します。

  1. A 社がコラボレーションを作成し、メンバーシップを作成します。これにより、コラボレーションにメンバーシップを作成する B 社が追加されます。

  2. A 社は、 AWS Clean Rooms コンソール AWS Entity Resolution を使用して既存の ID 名前空間ソースを関連付けるか、 で新しい ID 名前空間ソースを作成します。

    A 社は、売上データを含む設定済みテーブルと、ID マッピングテーブルsourceIdの にキー指定された列を作成します。

    ID 名前空間ソースは、トランスコードするデータを提供します。

  3. B 社は、 AWS Clean Rooms コンソール AWS Entity Resolution を使用して既存の ID 名前空間ターゲットを関連付けるか、 で新しい ID 名前空間ターゲットを作成します。

    B 社は、イベントデータを含む設定済みテーブルと、ID マッピングテーブルtargetIdの にキー指定された列を作成します。

    ID 名前空間ターゲットは、トランスコードするデータを提供しず、 LiveRamp 設定に関するメタデータのみを提供します。

  4. A 社がコラボレーションに関連付けられている 2 つの ID 名前空間を検出し、ID マッピングテーブルを作成して入力します。

  5. A 社は、ID マッピングテーブルで結合することで、2 つのデータセット間でクエリを実行します。

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