Salesforce バッチソース プラグインを使用して BigQuery で見込み顧客データを分析する
Cloud Data Fusion で Salesforce バッチソース プラグインを使用して、BigQuery で見込み顧客データを分析する方法を学びます。
このタスクの手順をガイドに沿って Google Cloud コンソールで直接行う場合は、「ガイドを表示」をクリックしてください。
シナリオ
マーケティング マネージャーが、新しい製品を促進するためにターゲットを絞りこんだメール マーケティング キャンペーンを計画しているとします。Salesforce Sales Cloud に見込み顧客のリストがあります。ターゲット キャンペーンを作成する前にターゲット オーディエンスに対する理解を深めるために、Cloud Data Fusion の Salesforce バッチソース プラグインを使用して特定の見込み顧客データを抽出します。
準備
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Data Fusion, BigQuery, Cloud Storage, and Dataproc APIs.
- Cloud Data Fusion インスタンスを作成します。
- Cloud Data Fusion 用の alesforce Connected App を作成して、Salesforce API への接続を構成します。
権限を管理
必要なカスタムロールと権限を作成して割り当てます。
カスタムロールを作成して権限を追加する
Google Cloud コンソールの [ロール] ページに移動します。
[
ロールを作成] をクリックします。[Title] 項目に「
Custom Role-Tutorial
」と入力します。[
権限を追加] をクリックします。[権限を追加] ウィンドウで次の権限を選択し、[追加] をクリックします。
bigquery.datasets.create
bigquery.jobs.create
storage.buckets.create
[作成] をクリックします。
デフォルトの Compute Engine サービス アカウントにカスタムロールを割り当てる
Cloud Data Fusion の [インスタンス] ページに移動します。
インスタンスの名前をクリックします。
デフォルトの Compute Engine サービス アカウントをメモします。この情報はインスタンスの詳細ページに含まれます。
Cloud Data Fusion のデフォルトの Compute Engine サービス アカウント名の形式は
CUSTOMER_PROJECT_NUMBER-compute@developer.gserviceaccount.com
です。[IAM] ページに移動します。
[フィルタ] バーに、デフォルトの Compute Engine サービス アカウントの名前を入力します。
デフォルトの Compute Engine サービス アカウントで、[
編集] をクリックします。[
別のロールを追加] をクリックします。[ロールを選択] フィールドで、[カスタムロール チュートリアル] を選択します。
[保存] をクリックします。
Cloud Data Fusion Salesforce バッチソース プラグインを構成する
Cloud Data Fusion の [インスタンス] ページに移動します。
インスタンスの [インスタンスを表示] をクリックします。Cloud Data Fusion ウェブ インターフェースが開きます。
[Studio] ページに移動します。
[Hub] をクリックします。
検索バーに「
Salesforce
」と入力します。[Salesforce プラグイン] をクリックしてから [Deploy] をクリックします。
[Salesforce plugins deploy] ウィンドウで、[Finish] をクリックします
デプロイが完了すると、成功したことを示すダイアログが表示されます。
そのダイアログで、[Create a pipeline] をクリックします。
Cloud Data Fusion Studio のページが表示されます。
データ パイプラインのタイプとして [データ パイプライン - バッチ] を選択します。
[ソース] メニューで、[Salesforce] をクリックします。
[Salesforce] ノードに移動して、[Salesforce] をクリックします。Salesforce プラグインのプロパティ ページが開きます。
[Reference name] に、ソースの名前を入力します。例:
Leads_generated
[Connection] セクションで、[Use connection] の切り替えをオンにします。
[Browse connections] をクリックします。[Browse connections] ウィンドウが開きます。
[Add connection] をクリックし、[Salesforce] を選択します。
[Create a Salesforce connection] ウィンドウで [Configuration] タブをクリックし、次の操作を行います。
[Name] フィールドに、接続を識別する名前を入力します(例:
Salesforce_connection
)。[Credentials] セクションに、Salesforce アカウントの次の詳細を入力します。
- ユーザー名
- パスワード
- コンシューマ キー
- コンシューマ シークレット
- セキュリティ トークン
[接続をテスト] をクリックします。入力した詳細が正しい場合、テストが成功し、「正常に接続しました」というメッセージが表示されます。
[作成] をクリックします。
[Salesforce_connection] を選択して、Salesforce プラグインのプロパティ ページに戻ります。
Salesforce バッチソース プラグインからデータを抽出する
Salesforce プラグイン プロパティ ページの [SOQL query] セクションに、次のクエリを入力します。
Select LastName,FirstName,Company,Email,Phone,LeadSource,Industry,OwnerId,CreatedDate,LastModifiedDate,LastActivityDate from Lead where Status like '%Open%'
このクエリは、キャンペーンの実施に必要な見込み顧客の詳細を sObject
Lead
から取得します。オブジェクト スキーマの有効性を確認するには、[Get schema] をクリックします。
キャンペーン実行の特定の日時のレコードをフィルタするには、次のフィールドを使用します。
- 最終更新が指定日より後
- 最終更新日が指定日の前
- 期間
- オフセット
Wrangler プラグインを使用してデータを変換する
Cloud Data Fusion で Wrangler プラグインを使用して、データのクリーニングと拡充を行います。
[Studio] ページに戻ります。
[Transform] メニューで、[Wrangler] をクリックします。
Wrangler を Salesforce バッチソース プラグインに接続します。
Wrangler プラグインに移動し、[Wrangler] をクリックします。Wrangler プラグインのプロパティ ページが開きます。
[Input schema] が入力済みであることを確認します。
[Wrangle] をクリックします。
[Connections] ペインで、有効な接続を選択します。
変換する sObject を選択します(例:
Lead
)。必要なディレクティブを使用してデータを変換します。
keep :LastName,:FirstName,:Company,:Phone,:Email,:LeadSource,:OwnerId, :CreatedDate,:LastModifiedDate,:LastActivityDatemerge :FirstName :LastName :Name ' ' fill-null-or-empty :Email 'no email found' mask-number :Phone ########xxxxxxxx format-date :LastActivityDate yyyy-MM-dd HH:mm:ss drop :LastName,:FirstName
BigQuery へのデータの読み込み
[Studio] ページに戻ります。
[Sink] メニューで、[BigQuery] をクリックします。
[BigQuery] ノードに移動して、[BigQuery] をクリックします。BigQuery プラグインのプロパティ ページが開きます。
[Basic] セクションの [Reference name] フィールドに、このシンクを識別する名前を入力します。例:
Leads_generated
[Dataset] フィールドに、テーブルが属するデータセットを入力します。例:
Salesforce_Leads
[Table] フィールドに、抽出したレコードを保存するテーブルを入力します。例:
Incoming_Open_Leads
プラグインを検証するには、[Validate] をクリックします。
パイプラインのデプロイ、スケジューリング、実行
パイプラインをデプロイするには、[Deploy] をクリックします。
スケジューラを使用して適切な更新スケジュールを設定する手順は次のとおりです。
- [スケジュール] をクリックします。
次の詳細情報を入力します。
- Pipeline run repeats
- 繰り返しの間隔
- 目安
- Max concurrent runs
- Compute profiles
[Save and start schedule] をクリックします。
パイプラインを実行するには、[Run] をクリックします。
データの抽出と取り込みを確認する
Google Cloud コンソールで [BigQuery] ページに移動します。
データセット
Salesforce_Leads
とテーブル名Incoming_Open_Leads
を検索して、抽出されたレコードを表示します。クエリを実行するには、[Query] をクリックします。
見込み顧客データを分析してオーディエンスに対する理解を深め、カスタマイズされた大規模なキャンペーンを配信します。
クリーンアップ
このページで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、次の操作を行います。
Cloud Data Fusion インスタンスを削除する
手順に従って Cloud Data Fusion インスタンスを削除します。
プロジェクトの削除
課金をなくす最も簡単な方法は、チュートリアル用に作成したプロジェクトを削除することです。
プロジェクトを削除するには:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.