Learn About Fully Qualified Keys(完全修飾キー)


読んでも理解できない。何か問題があることは分けるけど... 

https://trailhead.salesforce.com/ja/content/learn/modules/fully-qualified-keys-in-data-cloud-quick-look/learn-about-fully-qualified-keys

+ [完全修飾キー【ヘルプ】](https://help.salesforce.com/s/articleView?id=data.c360_a_fully_qualified_keys.htm&type=5)

さまざまなソースからのデータが Data Cloud データモデルでハーモナイズされるときに、完全修飾キー (FQK) を使用してキーの競合を回避します。

>データクラウドは、様々なソースからデータを受け入れます。**ハーモナイゼーションとは、異なるデータソースを1つに変換（またはモデリング）するプロセスを指します。** データが標準化されたデータモデルに統合（またはハーモナイズ）されると、インサイト、セグメンテーション、アクティベーションに活用できるようになります。

キー値が含まれるすべてのデータレークオブジェクト (DLO) 項目にキー修飾子項目を設定して FQK を使用します。この項目はプライマリキー項目または外部キー項目にできます

このヘルプの内容は上記目ジュールと同じみたいだけど、こっちは日本語になっている。

+ [完全修飾キーを使用したデータ解釈](https://help.salesforce.com/s/articleView?id=data.c360_a_data_inter_fqk.htm&type=5)


たとえば、Salesforce CRM の取引先責任者 DLO とエンゲージメントの購読者 DLO の 2 つのデータストリームに、プロファイルデータの関連データレイクオブジェクト (DLO) があるとします。この DLO のレコードが個人 DMO にマッピングされます。ここで、個人 DMO をエンゲージメント DMO と結合して 2 クリック以上の個人を特定しようとしています。完全修飾キーを使用して 2 つの異なるソースから取り込まれたデータを正確に解釈できるしくみを次に示します。

2 つのデータストリームが Data Cloud の個人 DMO にマッピングされます。取引先責任者 DLO には 3 件のレコード、購読者 DLO には 2 件のレコードがあります。この場合、個人 DMO にはマッピングされたすべてのデータストリームからのレコードがすべて含まれるため、5 件のレコードがあります。

Engagement では CRM 組織の取引先責任者 ID をプライマリキー (購読者キー) として使用します。そのため、個人 DMO の複数のレコードでプライマリキー項目である個人 ID の値が同じになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/c05ef6a5-1fb5-4b79-a580-26c0c352d02f.png)

上から３つはSalesforce CRM の取引先責任者 DLO、下の２つはエンゲージメントの購読者 DLO 

>データレークオブジェクト (DLO) Data Cloud に取り込まれるデータのコンテナ。

>DMOは、データソースから作成されたデータのグループです。DLOからDMOにデータをマッピングすることで、様々なデータソースから取り込んだデータをData Cloudで定義したデータモデルに統合し、セグメント化やデータ分析などにデータを活用することが可能となります。


次に、エンゲージメントから取り込まれたメールエンゲージメントデータが含まれるメールエンゲージメント DMO について考えます。個人 DMO とメールエンゲージメント DMO には個人 ID を介した 1:N リレーションがあります。

個人 DMO とメールエンゲージメント DMO を結合すると、Data Cloud では結合データセットを個人 2 の 1 行目 (1 クリック) と個人 2 の 2 行目 (1 クリック) として解釈します。つまり、個人 2 は 2 メールクリックと想定されます。けれども、Data Cloud では個人 2 は 2 クリックアクションと解釈されますが、実際には 1 クリックアクションのみです。

この誤解釈により、セグメンテーション、計算済みインサイト、クエリ API など、このデータが照会されたときに問題が発生することがあります。クエリを実行して、クリックアクションが 2 以上の個人を照会すると、応答で個人 2 が返されます。この問題は、プロファイルの統合がリリースされていても発生します。エンゲージメントデータは常に個人 DMO と結合されるからです。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/02f7e257-b2af-462c-b362-57688d67c110.png)


>完全修飾キー 理解しておくべきもう1つのプラットフォーム概念は、Data Cloudが独自の完全修飾キー（FQK）という概念を採用していることです。これは、異なるソースのデータをハーモナイズする際に発生するキーの競合を回避します。FQKは、ソース提供キーとキー修飾子を組み合わせたもので、このような競合シナリオを回避します。例えば、イベント登録DLOとCRM DLOの両方が個人DMOにマッピングされている場合、FQKを使用することで、クエリをデータソースごとに効果的にグループ化できるため、ユーザーはレコードを正確に識別、ターゲティング、分析できます。

https://www.cloudkettle.com/blog/data-harmonization-in-salesforce-data-cloud/

Individual DMOに　Individual Idが２のレコードが２件あるから？問題だと言っているのか？


この問題は、完全修飾キーを使用することで回避できます。プライマリキーまたは外部キーのキー値が含まれるすべての DLO 項目にキー修飾子項目を追加すると、Data Cloud でさまざまなデータソースから取り込まれたデータが正しく解釈されます。次の例では、キー修飾子が Salesforce CRM と Engagement からの DLO に追加されています。個人 DMO にはレコードのソースを示すキー修飾子項目が追加されています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/5ada0122-c108-4419-a932-e77060f32e18.png)

個人 DMO とメールエンゲージメント DMO が結合されると、テーブル結合で外部キー項目 (個人 ID) とキー修飾子項目 (KQ_ID) の両方が使用されるため、Data Cloud でデータを正確に解釈できます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/05758df5-b652-4a4c-b3cb-a49c344d8bed.png)


同じクエリを実行して、クリックアクションが 2 以上の個人を照会すると、個人 2 のデータはクエリ条件を満たさないため、クエリ応答では返されません。

Individual Id + KQ_ID　が完全修飾キーってこと？　2MCで見たら１件しかないから問題なしということ？

何か難しく言っているだけ？


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/d4756c88-29d7-431b-bbbe-758a7f65e996.png)

CとA  理解できたかも...