
【第225回】 Data Cloud:レコードレベルの検索・表示をする方法
Data Cloud では、さまざまなソースから膨大な量のデータが集約されます。一般的にはエンティティレベルでデータを管理することが多いですが、レコードレベルでデータを操作するイメージは、馴染みが薄いかもしれません。
しかし、運用を開始する前にレコードレベルでデータを慎重に確認しないと、予期せぬ 配信ミス や 集計ミス が発生するリスクがあります。こうしたリスクを回避するためには、レコードレベルでデータを可視化し、確認する手法を理解することが不可欠です。
Salesforce Marketing Cloud にも、同様のツールで Email Studio のフィルター機能や Query Studio があると思います。データを取り込んだ際は、そちらを活用して色々とデータの精査をすると思いますが、それと同じです。
そこで本記事では、Data Cloud におけるレコードの検索・表示方法を 4 つのツールを使って説明したいと思います。
アクセス権限について
説明に入る前に、アクセス権限について触れておきます。
まず ① の「データエクスプローラー」と ④ の「プロファイルエクスプローラー」を閲覧・使用するには、「Data Cloud 管理者」または「Data Cloud データアウェアスペシャリスト」の権限セットが必要になります。
「Data Cloud マーケティングマネージャー」や「Data Cloud マーケティングスペシャリスト」の権限セットが割り当てられている担当者が、これらのツールを使用する場合は、カスタム権限セット を作成し、権限を付与する必要があります。作成方法に関しては、以下のヘルプドキュメントに示されていますので参考にしてください。

そして、② のクエリエディターですが、このツールは「データエクスプローラー」のアクセス権限がある場合に、閲覧・使用ができます。「プロファイルエクスプローラー」へのアクセス権限ではダメです。
このことは、後でも触れますが、クエリエディターとデータエクスプローラーが統合されているからですね。クエリエディターのワークスペースを開くと、データエクスプローラーが標準装備されてしまっているので、データエクスプローラーのアクセス権がないとまずいわけです。
それでは、各ツールの概要を見ていきましょう。
① データエクスプローラー
Data Cloud に保存されているデータを最も簡単に確認できるツールです。検索対象とできるオブジェクトは、以下の 4 つのみです。
データレイクオブジェクト
データモデルオブジェクト
計算済みインサイト
データグラフ

「列の編集」機能を使えば、最大 10 列の表示項目を指定して必要なデータを簡単に一覧表示できます。表示可能な行数は最大 100 行です。
※ 列の編集をしても、(現時点では)その表示列の保存はできません。
※ 画面右上に表示されている「SOQL をコピー」機能のボタンでは、現在表示されている最大 10 列分しか取得できません。

また、フィルター機能を使ってデータを絞り込むことが可能です。

さらに、計算済みインサイトに関しては、グラフ化して分析が可能です。

② クエリエディター
データエクスプローラーがフィルター機能を用いて、データを検索・操作するのに対して、クエリエディターでは SQL を用いてデータを検索・操作します。検索対象とできるオブジェクトは、データエクスプローラーと同様、以下の 4 つのみです。
データレイクオブジェクト
データモデルオブジェクト
計算済みインサイト
データグラフ

SQL クエリの記述の際、フィールド名のオートコンプリート機能(予測表示してくれる機能)が備わっており、効率的にクエリを作成できます。オートコンプリートを使用するには、該当するオブジェクトを画面上部にドラッグアンドドロップしておく必要があります。
※ クエリタイムアウトの制限は 5 分です。
※ クエリの結果に関しては、ページャーのようなものはなくすべての行が表示されます。10,000 行を超えるとページが落ちる傾向がありますので、LIMIT 10000 の制限を設けることが推奨されます。

また、一度作成したクエリは保存できるため、将来的に再利用する際も便利です。データ分析や特定条件での抽出作業を行う際に最適なツールです。

クエリエディターを使用する際、ワークスペースを作成することになります。ワークスペースを作成して、作業ページを開くと、そこには ① のデータエクスプローラーが統合されており、一覧を表示することができます。
そのため ① のデータエクスプローラーを単体で使用するのではなく、このクエリエディターのワークスペースを開いて、データエクスプローラーを使用するという流れもありかと思います。

以下に、クエリエディターで汎用的に使用できるクエリの例を掲載します。
統合個人を作成した後に、統合されたデータだけを抽出するクエリサンプル(メールベース)
SELECT UnifiedssotIndividualCcid__dlm.ssot__Id__c AS UnifiedId__c
, ssot__Individual__dlm.ssot__Id__c AS IndividualId__c
, ssot__ContactPointEmail__dlm.ssot__Id__c AS ContactPointEmailId__c
, ssot__Individual__dlm.ssot__DataSourceId__c AS DataSourceId__c
, ssot__Individual__dlm.ssot__DataSourceObjectId__c AS DataSourceObjectId__c
, ssot__Individual__dlm.ssot__FirstName__c AS FirstName__c
, ssot__Individual__dlm.ssot__LastName__c AS LastName__c
, ssot__Individual__dlm.ssot__Birthdate__c AS Birthdate__c
, ssot__ContactPointEmail__dlm.ssot__EmailAddress__c AS EmailAddress__c
FROM UnifiedssotIndividualCcid__dlm
JOIN UnifiedLinkssotIndividualCcid__dlm
ON (UnifiedssotIndividualCcid__dlm.ssot__Id__c = UnifiedLinkssotIndividualCcid__dlm.UnifiedRecordId__c)
JOIN ssot__Individual__dlm
ON (UnifiedLinkssotIndividualCcid__dlm.SourceRecordId__c = ssot__Individual__dlm.ssot__Id__c)
JOIN ssot__ContactPointEmail__dlm
ON (ssot__Individual__dlm.ssot__Id__c = ssot__ContactPointEmail__dlm.ssot__PartyId__c)
WHERE (SELECT COUNT(*) FROM UnifiedssotIndividualCcid__dlm AS UnifiedssotIndividualCcid__dlm2
JOIN UnifiedLinkssotIndividualCcid__dlm AS UnifiedLinkssotIndividualCcid__dlm2
ON (UnifiedssotIndividualCcid__dlm2.ssot__Id__c = UnifiedLinkssotIndividualCcid__dlm2.UnifiedRecordId__c)
JOIN ssot__Individual__dlm AS ssot__Individual__dlm2
ON (UnifiedLinkssotIndividualCcid__dlm2.SourceRecordId__c = ssot__Individual__dlm2.ssot__Id__c)
WHERE UnifiedssotIndividualCcid__dlm.ssot__Id__c = UnifiedssotIndividualCcid__dlm2.ssot__Id__c) >= 2
ORDER BY UnifiedId__c ASC, IndividualId__c ASC, ContactPointEmailId__c ASC
LIMIT 10000
統合個人を作成した後に、統合されたデータだけを抽出するクエリサンプル(メール & 電話番号ベース)
SELECT UnifiedssotIndividualCcid__dlm.ssot__Id__c AS UnifiedId__c
, ssot__Individual__dlm.ssot__Id__c AS IndividualId__c
, ssot__ContactPointEmail__dlm.ssot__Id__c AS ContactPointEmailId__c
, ssot__ContactPointPhone__dlm.ssot__Id__c AS ContactPointPhoneId__c
, ssot__Individual__dlm.ssot__DataSourceId__c AS DataSourceId__c
, ssot__Individual__dlm.ssot__DataSourceObjectId__c AS DataSourceObjectId__c
, ssot__Individual__dlm.ssot__FirstName__c AS FirstName__c
, ssot__Individual__dlm.ssot__LastName__c AS LastName__c
, ssot__Individual__dlm.ssot__Birthdate__c AS Birthdate__c
, ssot__ContactPointEmail__dlm.ssot__EmailAddress__c AS EmailAddress__c
, ssot__ContactPointPhone__dlm.ssot__FormattedE164PhoneNumber__c AS PhoneNumber__c
FROM UnifiedssotIndividualCcid__dlm
JOIN UnifiedLinkssotIndividualCcid__dlm
ON (UnifiedssotIndividualCcid__dlm.ssot__Id__c = UnifiedLinkssotIndividualCcid__dlm.UnifiedRecordId__c)
JOIN ssot__Individual__dlm
ON (UnifiedLinkssotIndividualCcid__dlm.SourceRecordId__c = ssot__Individual__dlm.ssot__Id__c)
JOIN ssot__ContactPointEmail__dlm
ON (ssot__Individual__dlm.ssot__Id__c = ssot__ContactPointEmail__dlm.ssot__PartyId__c)
JOIN ssot__ContactPointPhone__dlm
ON (ssot__Individual__dlm.ssot__Id__c = ssot__ContactPointPhone__dlm.ssot__PartyId__c)
WHERE (SELECT COUNT(*) FROM UnifiedssotIndividualCcid__dlm AS UnifiedssotIndividualCcid__dlm2
JOIN UnifiedLinkssotIndividualCcid__dlm AS UnifiedLinkssotIndividualCcid__dlm2
ON (UnifiedssotIndividualCcid__dlm2.ssot__Id__c = UnifiedLinkssotIndividualCcid__dlm2.UnifiedRecordId__c)
JOIN ssot__Individual__dlm AS ssot__Individual__dlm2
ON (UnifiedLinkssotIndividualCcid__dlm2.SourceRecordId__c = ssot__Individual__dlm2.ssot__Id__c)
WHERE UnifiedssotIndividualCcid__dlm.ssot__Id__c = UnifiedssotIndividualCcid__dlm2.ssot__Id__c) >= 2
ORDER BY UnifiedId__c ASC, IndividualId__c ASC, ContactPointEmailId__c ASC, ContactPointPhoneId__c ASC
LIMIT 10000
※ Ccid の部分を ご自身の Ruleset ID(4 桁)に一括置換してください。
③ 標準レポート
Salesforce の標準レポート機能を使用して、Data Cloud 内のオブジェクトを基にしたレポートを作成できます。

Data Cloud の関係性モデルを活用することで、事前に結合されたオブジェクトを使ったレポート作成が可能です。(例:Unified Indv Contact Point Email が関連する Unified Individual など)これにより、少し複雑なデータ構造であっても効率的にレポートできます。

■ Data Cloud のレポートとダッシュボード: 制限事項
さらに、計算済みインサイトに関しては、以下のリンクより簡単にレポートが作成可能になっていますので、覚えておくと便利です。


■ 計算済みインサイトに関する Data Cloud レポートの考慮事項
④ プロファイルエクスプローラー
「統合取引先」と「統合個人」オブジェクトに特化した検索に制限されています。ID 解決で統合されたデータを深く掘り下げて可視化する用途に最適で、顧客プロファイルの理解を深めるために利用されます。
① のデータエクスプローラーと同様、最大で 10 列まで表示する項目の選択が可能です。

検索時の注意点としては、「あいまい検索」ができないことです。例えば、上の例では、「渡邊」が Last Name であるものを検索していますが、下のように「渡」だけで検索した場合は、「渡邊」は検索できません。

このように「完全一致」したものだけを表示することを覚えておいてください。この点、③ の標準レポート機能は『 ○○ を含む』という検索条件が設定可能ですので、もし「あいまい検索」が必要であれば、標準レポートでの検索も試してみてください。
また、プロファイルエクスプローラーのリストビューにおいては、日時のデータにおいて「時間」部分が表示されません。

View のリンクをクリックすることで、時間を含んだ詳細な日時データが取得できますので覚えておいてください。

いかがでしたでしょうか。
Data Cloud のレコードを検索・表示する方法を 4 つのツールを通じて紹介しました。それぞれのツールには特化した特長や用途がありますので、目的に応じて使い分けてみてください。
簡単な確認には データエクスプローラー
複雑なクエリや抽出には クエリエディター
関連データを効率的に分析するには レポート
顧客プロファイルを深掘りするには プロファイルエクスプローラー
これらのツールを活用し、Data Cloud のデータを効率的に精査・活用していきましょう。
今回は以上です。
Click here for English version
次の記事はこちら
前回の記事はこちら
私の note のトップページはこちら