Salesforce CRM Analytics(旧Einstein Analytics)でビジネスインサイトを解き放つ


背景と適用シナリオ

デジタルトランスフォーメーションが加速する現代において、データは企業にとって最も価値のある資産の一つとなりました。しかし、単にデータを収集するだけでは不十分であり、そのデータを分析し、ビジネス上の意思決定に繋がる実用的なインサイト (Insight - 洞察)を抽出することが不可欠です。Salesforce は、この課題に対する強力なソリューションとして Salesforce CRM Analytics (旧称: Einstein Analytics) を提供しています。

CRM Analytics は、Salesforce プラットフォームにネイティブに統合された、AI を活用した高度な分析プラットフォームです。Salesforce 内の CRM データはもちろん、外部の様々なデータソースとも連携し、それらを統合・分析して、ビジネスユーザーが直感的に理解できる形で可視化します。これにより、従来の BI (Business Intelligence) ツールが抱えていた、データサイロ化やリアルタイム性の欠如といった問題を解決します。

主な適用シナリオ

  • 営業部門: チームのパフォーマンス分析、パイプラインの健全性評価、売上予測の精度向上、失注要因の特定、クロスセル・アップセルの機会発見。
  • サービス部門: ケース解決時間の追跡、エージェントの生産性評価、顧客満足度 (CSAT) の動向分析、ナレッジベースの利用状況の可視化。
  • マーケティング部門: キャンペーンの ROI (Return on Investment - 投資対効果) 分析、リードソースの有効性評価、顧客セグメンテーション、カスタマージャーニーの最適化。
  • 経営層: 全社的な KPI (Key Performance Indicator - 重要業績評価指標) のモニタリング、ビジネス全体の健全性の俯瞰、将来のトレンド予測。

原理の説明

CRM Analytics がどのようにしてデータをインサイトへと変換するのか、その中核をなすコンポーネントとデータフローを理解することが重要です。

1. データ層 (Data Layer)

分析の基盤となるのはデータです。CRM Analytics は、データを準備し、最適化するための強力な ETL (Extract, Transform, Load) 機能を備えています。

  • データインテグレーション (Data Integration): Salesforce の標準・カスタムオブジェクトから直接データを取得するだけでなく、各種コネクタを用いて外部データベース、クラウドストレージ、他の SaaS アプリケーションなど、多種多様なソースからデータを集約します。
  • レシピとデータフロー (Recipes & Dataflows): これらはデータの加工・変換を行うためのツールです。レシピはより直感的で高機能な UI を提供し、データフローは従来の JSON ベースの定義ファイルで ETL プロセスを記述します。データの結合、項目の計算、値の変換、集計など、複雑なデータ準備プロセスを自動化できます。
  • データセット (Datasets): レシピやデータフローによって準備されたデータは、クエリに最適化された非正規化形式のデータストアであるデータセットとして保存されます。これにより、数億行に及ぶデータに対しても高速なレスポンスが可能になります。

2. 分析・可視化層 (Analytics & Visualization Layer)

データセットが準備されると、ユーザーはそれらを探索し、可視化することができます。

  • レンズ (Lenses): 特定のデータセットを様々な角度から探索するためのインターフェースです。グルーピング、フィルタリング、メジャーの変更などを対話的に行い、データに関する問いに答えることができます。
  • ダッシュボード (Dashboards): 複数のレンズから作成されたチャート、テーブル、指標などを自由に配置し、インタラクティブなダッシュボードを構築します。ファセット機能により、あるチャートで選択したフィルタがダッシュボード全体に動的に適用されるため、ユーザーはドリルダウンしながらインサイトを深掘りできます。
  • SAQL (Salesforce Analytics Query Language): ダッシュボードの裏側で動作しているのが SAQL です。これは Salesforce の SOQL (Salesforce Object Query Language) とは異なり、集計やウィンドウ関数など、分析に特化した強力なクエリ言語です。開発者は SAQL を直接編集することで、UI だけでは実現不可能な高度なクエリを実行できます。

3. AI・インテリジェンス層 (AI & Intelligence Layer)

CRM Analytics を単なる BI ツールと一線を画すのが、Einstein の AI 機能です。

  • Einstein Discovery: データセット内のパターン、相関、異常値を自動的に発見し、ストーリー (Story) として提示します。「何が起きたか」だけでなく「なぜ起きたか」「これから何が起きるか」「どうすれば改善できるか」といった、より高度なインサイトを提供します。作成された予測モデルは、Salesforce のレコードページに直接組み込むことも可能です。

示例代码 (SAQL)

CRM Analytics のダッシュボードは主に UI を通じて構築しますが、その動作を支えているのが SAQL です。以下に、商談 (Opportunity) データセットから、取引先 (Account) ごとの商談件数を算出し、件数の多い順に表示する基本的な SAQL クエリの例を Salesforce 公式ドキュメントに基づいて示します。

このクエリは、ダッシュボードの「SAQL クエリモード」で直接実行したり、API を通じて利用したりすることができます。

-- SAQL クエリの例: 取引先ごとの商談件数の集計

-- まず、分析対象のデータセットをロードします。'opportunities' はデータセットの API 参照名です。
q = load "opportunities";

-- 次に、'AccountId.Name' (取引先名) でストリームをグループ化します。
-- これにより、同じ取引先に属するすべての行がまとめられます。
q = group q by 'AccountId.Name';

-- グループ化された各ストリームに対して、新しい射影を生成します。
-- 'foreach' ステートメントは、SQL の 'SELECT' 句に似ています。
q = foreach q generate 
    'AccountId.Name' as 'AccountName', -- 'AccountId.Name' を 'AccountName' という別名で出力します。
    count() as 'OpportunityCount';     -- 各グループの行数をカウントし、'OpportunityCount' という別名で出力します。

-- 最後に、結果を 'OpportunityCount' の降順 (多い順) で並べ替えます。
q = order q by 'OpportunityCount' desc;

-- クエリの実行件数を 100 件に制限します。
q = limit q 100;

この SAQL クエリは、CRM Analytics の強力なデータ処理能力の一端を示すものです。group by による集計、foreach による射影、そして order by によるソートという一連の流れは、分析クエリの基本形となります。


注意事項

CRM Analytics を導入・運用する際には、以下の点に注意が必要です。

権限とライセンス (Permissions & Licenses)

CRM Analytics を利用するには、適切なライセンス (例: CRM Analytics Plus) と権限セット (Permission Set) が必要です。ユーザーには「CRM Analytics Plus ユーザー」権限セットを、管理者には「CRM Analytics Plus 管理者」権限セットを割り当てることが一般的です。権限セットによって、アプリケーションやデータセットの表示、編集、作成といった操作が制御されます。

データの制限 (Data Limits)

CRM Analytics は大量のデータを扱えますが、無制限ではありません。

  • データセットの行数: ライセンスによって異なりますが、一般的には数十億行までのデータを格納できます。設計時には、将来のデータ増加を見越して、不要なデータを取り込まないようにすることが重要です。
  • データ同期: Salesforce オブジェクトからデータを同期する際、1オブジェクトあたりのレコード数や項目数に制限があります。詳細は最新の公式ドキュメントで確認してください。
  • データフロー/レシピの実行: 同時に実行できるデータフロー/レシピの数や、24時間あたりの実行回数には上限が設けられています。実行スケジュールを適切に設計し、上限を超えないように注意する必要があります。

データ同期とリアルタイム性 (Data Sync & Real-time)

CRM Analytics のデータセットは、リアルタイムで CRM データと同期しているわけではありません。データフローやレシピをスケジュール実行(例: 1時間ごと、毎日深夜など)することで、データセットが更新されます。したがって、ダッシュボードに表示されるデータには、最後の同期時点からのタイムラグが存在することをユーザーに周知する必要があります。

セキュリティ (Security)

データへのアクセス制御は非常に重要です。CRM Analytics ではセキュリティ述語 (Security Predicate) を用いて、データセットレベルでの行単位のアクセス制御を実現できます。これは、クエリが実行される際に、ログインユーザーの情報に基づいてデータセットに動的な WHERE 句を追加する機能です。例えば、「ログインユーザーが所有する商談レコードのみ表示する」といった要件を、単一のデータセットで実現できます。


まとめとベストプラクティス

Salesforce CRM Analytics は、単なるデータを可視化するツールではありません。Salesforce プラットフォームに深く統合され、AI の力を活用することで、データから実用的なインサイトを導き出し、具体的なアクションへと繋げるための強力なプラットフォームです。そのポテンシャルを最大限に引き出すためには、以下のベストプラクティスを推奨します。

  1. ビジネスの問いから始める: テクノロジーありきではなく、解決したいビジネス上の課題や問い(例: 「なぜ今四半期の成約率が低いのか?」)を明確に定義することから始めます。これが、効果的なダッシュボード設計の出発点となります。
  2. データ準備を最適化する:
    • レシピやデータフローの早い段階で不要な行や列を除外することで、処理全体のパフォーマンスを向上させます。
    • 可能な限り、差分更新(Incremental Sync)を活用し、毎回全データをロードするのを避けます。
    • データセットは分析しやすいように非正規化を意識して設計します。
  3. アクションに繋がるダッシュボードを設計する:
    • 情報を詰め込みすぎず、最も重要な KPI を最初に提示します。
    • ドリルダウンやフィルタリング機能を活用し、ユーザーが「なぜ?」を深掘りできるようなストーリー性のある構成を心がけます。
    • Salesforce のレコードアクションをダッシュボードに組み込み、インサイトを得たその場で Chatter 投稿や ToDo 作成などのアクションを実行できるようにします。
  4. セキュリティを徹底する: ユーザーの役職や担当範囲に応じて、見せるべきデータを制御するために、セキュリティ述語を積極的に活用します。これにより、データガバナンスを維持しつつ、単一のデータセットとダッシュボードを多くのユーザーで共有できます。
  5. AI の力を活用する: 従来の BI の枠を超え、Einstein Discovery を活用して、人間では気づきにくいデータのパターンや相関関係を発見し、予測分析や改善提案を取り入れましょう。

Salesforce CRM Analytics を戦略的に活用することで、企業はデータ駆動型の文化を醸成し、あらゆる部門の意思決定を高度化させ、持続的な競争優位性を築くことができるでしょう。

コメント