「ID解決ルールセット」で「統合プロファイル」を作成(DataCloudハンズオン - Coral Cloud #5)

今回は、SalesforceのData Cloudで「統合プロファイル」を作っていきます。

統合プロファイルとは、複数のデータソースから取り込まれた顧客データを統合して本来の「ひとり」として認識することです。
たとえば、店舗会員の「田中さん」とECサイトの「Tanakaさん」という別レコードが、メールアドレスの一致ルールにて同一人物と特定され、ひとつの統合プロファイルとなります。

このデータをまとめるときに利用する、照合と調整のルール定義のことを「ID解決ルールセット」と呼びます。


---
以下のAgentforce & DataCloudのワークショップ[Exercise 5]の手順に沿って、操作を行います。

https://developer.salesforce.com/agentforce-workshop/data-cloud/5-create-unified-profile


なお、前回は、顧客の予約情報をマップするデータストリームを作成しました。以下の手順と同じデータが欲しい方はこれらに目を通してみてください。

https://qiita.com/Mijinko-kun/items/39df3f14eb76ce88c0ea



## データ エクスプローラーでのクエリ

統合を行う前に、現在の顧客データの状況から確認してきます。

データエクスプローラでは、DLOやDMOにクエリを投げてデータを見ることができます。

ここでは、`個人(Indivisual) DMO`に対してクエリを実行します。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/6a70499c-f1b3-4687-9709-c734e100598b.png)


[列の編集]ボタンをクリックします。

表示する列を絞り込みます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/52b4bd4a-5e86-407d-8084-5ddc1ed0cf3f.png)

表示する行を絞り込みます。

ここでは、名前がロドリゲスさんでリストをフィルターします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/0ea5517f-7555-4804-a16f-64fc3759a1db.png)

重複ユーザーの2行が表示されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/4e2f5343-afcb-4c10-acba-5323fbbb7f6a.png)


これは、CRMのユーザーと、S3のゲストで、重複が起きていることを示しています。


## 「Individual DMO(個人)」を「Unified Individual DMO(統合プロファイル)」にて統合

Individual(個人)DMOは、実在の人物一人ひとりを表すためのオブジェクトです。

この重複は、CRMからのデータとS3からのデータを、最初から Individual_CRM と Individual_S3 のように別々のDMOに入れるのではなく、同じ Individual DMOに登録しているから起きる現象です。

これは、「多様なデータを標準DMOの`Individualモデル`に流し込み、構造を統一し、その後、ID解決を効率的にシンプルに行う」という思想と考えられます。

今回は、この重複を「ID解決ルールセット」という仕組みで、重複を排除した`Unified Individual(統合プロファイル)`に変換していきます。


### (補足)標準オブジェクトとデータモデルオブジェクト

Salesforce標準の「Individual(個人)」オブジェクトは主にプライバシー管理用です。

一方、Data Cloudの「Individual(個人)」DMO（データモデルオブジェクト）は、様々なソースから取り込んだ個人関連データのモデルであり、統合プロファイル作成の基礎となります。

ここでの紹介は、Salesforceの標準オブジェクトに関してではなく、Data Cloudの領域で利用するデータモデルオブジェクト(DMO)間での変換となります。



## ID解決ルールセットの作成

それでは、ID解決ルールセットを作成して、データを統合変換してみましょう。


[ID解決]タブで、[新規]ボタンをクリックして、「CRMからの連絡先」と「S3からのゲスト」を統合レコードとしてマージしていきます。



![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/df0a552f-da0e-48bc-84b5-af0d4a48693a.png)

新しいID解決ルールセットを作成します

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/37d09027-5805-4939-b93b-488c3f799733.png)

ID解決ルールセットの名前を入れて、保存します。ここでは、`ccid`と入力します。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/42a75cbb-8121-4c16-837d-05736811fe36.png)



#### ルールセット出力オブジェクトの「Unified DMO」と「Unified Link DMO」

「ID解決ルールセット」を作成することで、以下の、4個×2パターン(合計8個)のルールセット出力オブジェクト(DMO)が作成されます。


まず、統合された「**結果**」であるUnified DMOが存在します。

- (1) `Unified Individual ccid` 
    - ルールセットによって統合された「個人」プロファイルのデータを格納するDMO。これが、名寄せされた顧客マスター情報の実体です。
- (2-4) `Unified Indv Contact Point Email/Phone/Address ccid`
    -  ルールセットで統合された「連絡先（メール、電話、住所）」の情報を格納するDMO群。


次に、元データと結果を結びつける「**紐付け情報**」であるUnified Link DMOが存在します。


- (5) `Unified Link Individual ccid`
    - 元の（名寄せ前の）Individualレコードと、統合後のUnified Individual ccidレコードを紐付ける「リンク情報」を格納するDMO。
- (6-8) `Unified Link Indv Contact Point Email/Phone/Address ccid`
    -  元の連絡先情報と統合後の連絡先情報を紐付けるリンク情報を格納するDMO群。

DMOの接尾語にルールセット名である`ccid`が付与されていることがわかります。

#### ID解決ルールセットの設定

続けて、作成されたID解決ルールセットの設定を行います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/932fe3bb-327e-471f-97ed-ec83d700b2d2.png)

次へ進みます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/fcd9dbda-9a40-472c-9df8-a82c1238e479.png)

一致ルールの設定をクリックします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/492d21da-0950-4d98-9f4b-3903f4adfe63.png)

データの一致を判定する方法として、 [あいまいな名前と標準化されたメール]を選択します。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/c5c6c95b-e2b2-434a-8d5f-c54ee484ce6d.png)

[あいまいな名前と標準化されたメール]では、次の3項目

1. Indivisualの性
2. Indivisualの名
3. Contact Point Emailのメール

のマッチングを行うルールであることがわかります。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/56cc283f-c00d-4e3d-bb41-8635dff5b909.png)



そのまま次へと進みます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/3aadc35f-2123-417c-a051-7aaaf317ca30.png)


保存します。

以上で、「ID解決ルールセット」の作成は完了です。

## Unified Individual DMO(統合個人プロファイルDMO)の確認

それでは、設定した結果を見ていきましょう。

データエクスプローラで、`Unified Indivisual ccid`を選択します。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/29a1c783-af5e-4dda-aafa-32607f0efe93.png)


これは、統合後の結果が格納されるDMOですが、まだデータがありません。

しばらくするとジョブが完了しますので、その後データが表示されます。




![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/ee5ff7e1-fb84-4b88-bee5-f6aeb0c58adb.png)

(ジョブの状況が終わったかどうかは、ID解決のページのジョブ完了時刻から確認します。)

最初と同様に、DMOで表示する列を調整します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/3e18df9a-c0fc-41e9-86d0-9ec8a64eb571.png)

リストでフィルター表示する行を調整します。名前がロドリゲスさんで絞り込みます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/cc76b0de-48b0-437e-bb73-3eb7d3a1154f.png)

ロドリゲスさんが「1行だけ」表示されていることから、CRMデータとS3データで重複していた個人データの統合がうまくいったことがわかります！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/1c5d5cc2-8dbf-44d4-aea8-1f9103ba0458.png)

元のIndivisual DMOではこの2件でした。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2716146/4e2f5343-afcb-4c10-acba-5323fbbb7f6a.png)


このように、別のソースから取り込んだ重複レコードを、簡単に設定だけでひとつに統合できることがわかりました。

以上、ID解決ルールセットで、統合プロファイルを作成する方法について紹介しました。

---

↓次回は、設定したDMOを関連リストに表示します。

https://qiita.com/Mijinko-kun/items/935b5ed6080ea064952e