データマネジメント基礎

Calculated Insightsを使いこなす — SQL・メトリクス設計・Streaming

導入

「過去90日間でいくら購入したか」「最後に来店してから何日経つか」——こうした指標をリアルタイムに顧客プロファイルへ組み込めたら、セグメントの精度は格段に上がります。Data CloudのCalculated Insightsは、SQLで自由にメトリクスを設計できる強力な機能です。

くわしく知ろう

Calculated Insights(計算指標)は、Data Cloud上のDMO(データモデルオブジェクト)に格納されたデータに対してSQLを記述し、集計・計算した結果を新たなプロファイル属性として書き戻す機能です。導き出した値はセグメント条件に利用できるほか、Activationで外部チャネルに属性として送信することもできます。

SQLの基本構文はANSI SQLに準拠しており、SELECT句で取得したいフィールドや集約関数(SUM、COUNT、MAX、MIN、AVGなど)を指定し、GROUP BY句で集計単位(通常はIndividual IDやContact Point ID)を指定します。たとえば「過去90日間の注文合計金額」を求める場合はSUM関数を使い、期間の絞り込みにはWHERE句で日付条件を記述します。

Calculated Insightsには「Batch Calculated Insights」と「Streaming Calculated Insights」の2種類があります。Batch CIはスケジュールされた間隔(例: 毎日1回)で全データを対象に集計を実行するバッチ処理型です。一方、Streaming CIはData Cloudにデータが流入するたびにリアルタイムで計算を更新するストリーム型で、Webアクティビティや購入イベントのような高頻度データに適しています。

メトリクスを設計する際の代表的なユースケースがRFM分析です。Recency(最終購入日からの経過日数)、Frequency(購入回数)、Monetary(購入金額合計)の3指標を計算し、セグメントで組み合わせることで顧客の価値分類が実現します。作成したCalculated InsightsはDMOに書き戻され、以降のセグメント作成時に属性として参照できます。

具体例

たとえばECサイトの注文DMOに対して、SUM関数とGROUP BYをIndividual IDで使い「過去90日の購入金額合計」をBatch CIとして毎日更新する設定をします。一方、サイト訪問イベントには即時集計が求められるため、Streaming CIで「直近30分のページビュー数」をリアルタイムに算出し、その値が閾値を超えた顧客セグメントへ即座にパーソナライズ施策を適用できます。

まとめ・試験ポイント

  • Calculated Insights=SQLで計算した指標をDMOに書き戻してプロファイル属性として活用する機能
  • SQL構文=集約関数(SUM/COUNT/MAX)で値を算出し、GROUP BY句で個人(Individual ID)単位に集計する
  • Batch CI=スケジュール実行で全データを定期集計するタイプ
  • Streaming CI=データ流入のたびにリアルタイムで計算を更新するタイプ
  • RFM分析=Recency・Frequency・Monetaryの3指標をCalculated Insightsで計算して顧客価値を分類
  • 試験ではBatch CIとStreaming CIの使い分け、SQLの集約関数が問われやすい

Data Cloudの全体像をさらに深く理解しよう。5層アーキテクチャ・認定資格・導入時の注意点までを体系的に解説した記事を用意しています。

Salesforce Data Cloud 解説記事を読む