Experience Platform オーディエンスの取り込みと使用

このユースケースでは、Experience Platform オーディエンスをCustomer Journey Analyticsに取り込む暫定的なソリューションを調査します。 これらのオーディエンスは、Experience Platform セグメントビルダー、Adobe Audience Managerまたはその他のツールで作成され、リアルタイム顧客プロファイルに保存されている可能性があります。 オーディエンスは、プロファイル ID のセットと、該当する属性やイベントなどで構成されています。 そのオーディエンスデータをCustomer Journey Analyticsに取り込んで、さらに分析する必要があります。

前提条件

手順

暫定的な解決策には、次の手順が含まれます。

オーディエンスを選択

ソリューションは、まず、Customer Journey Analyticsで取り込むオーディエンスを特定します。

オーディエンスの特定

Experience Platform UI の場合:

  1. Customer/ SegmentAudience Audiences を選択します。

  2. 参照 を選択して、Customer Journey Analyticsで取り込んで使用するオーディエンスを検索します。 後で使用するために、各オーディエンスの オーディエンス ID に注意してください。

    オーディエンス

プロファイル対応データセットの作成

コアベースの XDM 個人プロファイル スキーマに基づいてデータセットを作成する必要があります。 Experience Platform UI でデータセットを作成する場合、そのコアベースの XDM 個人プロファイルをスキーマとして選択することはできません。 代わりに、Catalog Service API を使用して、 スキーマに基づいて _xdm.context.profile__union データセットを作成します。

データセットリクエストを作成

リクエスト

code language-shell
curl -X POST \
  'https://platform.adobe.io/data/foundation/catalog/dataSets?requestDataSource=true' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -d '{
   "name": "{DATASET_NAME}",
   "schemaRef": {
      "id": "_xdm.context.profile__union",
      "contentType": "application/vnd.adobe.xed+json;version=1"
   },
   "fileDescription": {
      "persistet": true,
      "containerFormat": "parquet",
      "format": "parquet"
   }
}'

次のとおりです。

  • DATASET_NAME は、データセットのわかりやすい名前です。 例:Segment Export Job Dataset for CJA

応答

code language-json
["@/dataSets/{DATASET_ID}"]

次のとおりです。

  • DATASET_ID は、作成されたデータセットのデータセット識別子です。

オーディエンスを書き出し

選択したオーディエンスを先ほど作成したデータセットに書き出します。 Segmentation Service API を使用して、オーディエンスをデータセットに送信する書き出しジョブ ​ を作成します。

ジョブリクエストを書き出し
code language-shell
curl -X POST https://platform.adobe.io/data/core/ups/export/jobs \
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'Content-Type: application/json' \
 -H 'x-gw-ims-org-id: {ORG_ID}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}' \
 -d '{
    "fields": "{COMMA_SEPARATED_LIST_OF_FULLY_QUALIFIED_FIELD_NAMES}",
    "filter": {
        "segments": [
            {
                "segmentId": "{AUDIENCE_ID_1}",
                "segmentNs": "ups",
                "status": [
                    "realized"
                ],
                "segmentId": "{AUDIENCE_ID_2}",
                "segmentNs": "ups",
                "status": [
                    "realized"
                ],
                "segmentId": "{AUDIENCE_ID_3}",
                "segmentNs": "ups",
                "status": [
                    "realized"
                ]
             }
        ]
    },
    "destination":{
        "datasetId": "{DATASET_ID}",
        "segmentPerBatch": false
    },
    "schema":{
        "name": "_xdm.context.profile"
    }
}'

ここで、

  • COMMA_SEPARATED_LIST_OF_FULLY_QUALIFIED_FIELD_NAMES のようなもので _demoemea.identification.core.ecid, _demoemea.identification.core.email, _demoemea.identification.core.phoneNumber, person.gender, person.name.firstName, person.name.lastName ょう。 カスタマージャーニー分析で使用する少なくとも関連するフィールド(ユーザー ID (メール)など)を含めてください。
  • 書き出すオーディエンスのオーディエンス識別子は AUDIENCE_ID_x のとおりです。
  • DATASET_ID が作成したデータセットです。

応答

code language-json
{
  "..."
  "id": "{EXPORT_JOB_ID}",
  "..."
}

ここで、

  • EXPORT_JOB_ID は、エクスポートジョブの識別子です。

Segmentation Service API を使用して、書き出しジョブのステータスを確認 ​ します。

特定のエクスポートジョブリクエストの取得

リクエスト

code language-shell
curl -X GET https://platform.adobe.io/data/core/ups/export/jobs/{EXPORT_JOB_ID} \
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'x-gw-ims-org-id: {ORG_ID}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}'

応答

code language-json
{
  "..."
  "id": "{EXPORT_JOB_ID}",
  "..."
  "status": "SUCCEEDED",
  "..."
}

書き出しジョブが成功したら、データセットに正常に取り込まれたバッチが含まれているかどうかを確認します。

取り込みステータスの確認

Experience Platform UI の場合:

  1. データ管理/ データ データセット を選択します。

  2. 作成したデータセットを選択します(例:CJAのセグメント書き出しジョブデータセット

    データセットアクティビティ

  3. 取り込んだバッチを検証します。 データセットに失敗したバッチが含まれている場合は、データ管理/ 監視 監視 を使用して、理由を確認します。 例えば、スキーマに存在しないフィールド名を使用したとします。

  4. データセットの テーブル名 をコピーします。 例:segment_export_job_dataset_for_cja。 その名前は、次の手順で使用します。

出力の変換

データセットのデータがCustomer Journey Analyticsに対して正しい形式ではありません。 データを変換するには、Experience Platform クエリサービスを使用してデータを取得します。

書き出されたオーディエンスデータを取得する SQL

Experience Platform クエリサービスに接続する PSQL クライアントを使用します。

Experience Platform UI の場合:

  1. データ管理/ データ検索 クエリ を選択します。
  2. AddCircle Credentials を選択します。

資格情報を使用して、Customer Journey Analytics クエリサービスに接続するように PSQL クライアントを設定します。

クエリ

次のクエリを実行して、データセットからオーディエンスデータを取得します。

code language-sql
SELECT ROW_NUMBER() OVER (ORDER BY key)::text as _id, personID, key as audienceMembershipId
FROM (
   SELECT {IDENTITY_TO_USE_AS_PERSON_ID} AS personID, explode(segmentMembership.ups)
   FROM {DATASET_TABLE_NAME}
)
WHERE value.status = 'realized' AND (key = '{AUDIENCE_ID_1}' OR key = 'AUDIENCE_ID_2' OR key = 'AUDIENCE_ID_3')

次のとおりです。

  • IDENTITY_TO_USE_AS_PERSON_ID は、書き出しジョブの一部として定義したフィールドの 1 つです。 例:_demoemea.identification.core.email
  • DATASET_TABLE_NAME は、データセットのテーブル名です。
  • エクスポートジョブの一部として定義したオーディエンスは AUDIENCE_ID_x のとおりです。 エクスポートジョブの仕様は行レベルのフィルターなので、これらのオーディエンスをもう一度指定する必要があります。 この行レベルのフィルターは、指定したセグメントのプロファイルと、各プロファイルのすべてのセグメントメンバーシップを返します。

結果

JSON 形式でのクエリ結果は次のようになります。

code language-json
[
   {
      "_id": "1",
      "personID": "{PERSON_ID_x}",
      "audienceMembershipId": "{AUDIENCE_ID_x}"
   },
   {
      "_id": "2",
      "personID": "PERSON_ID_y",
      "audienceMembershipId": "{AUDIENCE_ID_x}"
   }

]

次のとおりです。

  • 人物 ID として使用したい識別子の識別子の値を PERSON_ID_x します。 例えば、メールを使用する場合は john.doe@gmail.com です。
  • オーディエンス識別子は AUDIENCE_ID_x のとおりです。

この JSON データを変換して環境のテナント名を追加し、オーディエンスにわかりやすい名前を付ける必要があります。

JSON の変換

最終的な JSON は次のようになります。

code language-json
[
   {
      "_id": "1",
      "personID": "{PERSON_ID_x}",
      "{TENANT_NAME}": {
         "audienceMembershipId": "{AUDIENCE_ID_x}",
         "audienceMembershipName": "{AUDIENCE_FRIENDLY_NAME_x}"
      }
  },
  {
      "_id": "2",
      "personID": "{PERSON_ID_y}",
      "{TENANT_NAME}": {
         "audienceMembershipId": "{AUDIENCE_ID_y}",
         "audienceMembershipName": "{AUDIENCE_FRIENDLY_NAME_y}"
      }
    }
  }

]

次のとおりです。

  • TENANT_NAME はテナントの名前です。 例:_demoemea
  • 人物 IDPERSON_ID_x して使用する識別子の識別子の値です。 例えば、メールを使用する場合は john.doe@gmail.com です。
  • オーディエンス識別子は AUDIENCE_ID_x のとおりです。
  • オーディエンス id には、わかりやすいオーディエンス名を AUDIENCE_FRIENDLY_NAME_x します。 例:Luma - Blue+ Members

お気に入りのツールを使用して、元の JSON をこの形式に変換します。

スキーマとデータセットの作成

変換された JSON を書き出されたオーディエンスデータとしてCustomer Journey Analyticsで使用するには、専用のスキーマを作成する必要があります。

スキーマを作成

スキーマを作成するには:

Experience Platform UI の場合:

  1. データ管理/ スキーマ スキーマ を選択します。

  2. AddCircle Create schema を選択します。 ドロップダウンメニューから 標準 を選択します。

  3. スキーマを作成 ダイアログで 手動 を選択し、選択 を使用して続行します。

  4. スキーマを作成 ウィザードの クラスを選択 手順で、次の操作を行います。

    1. 個人プロファイル を選択します。
    2. 次へ」を選択します。
  5. スキーマを作成 ウィザードの 名前とレビュー 手順で、次の操作を行います。

    1. スキーマ表示名 を入力します。 例:Audience Export for CJA Schema
    2. (オプション)「説明」を入力します。
    3. 完了」を選択します。
  6. audienceMembershipId および audienceMembershipName という 2 つのフィールドを含むカスタムフィールドグループ(例えば、Audience Membership)を含むようにスキーマを設定します。

  7. personID フィールドが IDプライマリ ID であり、I​ ​dentity 名前空間​ ​として ​ メール ​ を持っていることを確認します。

    書き出すセグメント

  8. 適用 すべての変更。 「保存」を選択してスキーマを保存します。

データセットを作成し、そのデータセットを使用して、変換後の JSON データを取り込みます。

データセットの作成とデータの取り込み

Experience Platform UI の場合:

  1. データ管理/ データ データセット を選択します。

  2. AddCircle データセットを作成 を選択します。

  3. スキーマからデータセットを作成」をクリックします。

  4. スキーマからデータセットを作成 ウィザードの スキーマを選択 手順で、次の操作を行います。

    1. 作成したスキーマを選択します。 例:CJA スキーマのオーディエンスの書き出し
    2. 次へ」を選択します。
  5. スキーマからデータセットを作成 ウィザードの データセットを設定 手順で、次の操作を行います。

    1. データセットの 名前 を入力します。
    2. (任意)データセットの 説明 を入力します。
    3. 完了」を選択します。
  6. データセット/データセットの名前 で、変換後の JSON データファイルをドラッグし、ファイルをドラッグ&ドロップ にドロップします。 このアクションは、書き出された JSON データのデータセットへの取り込みを開始します。

  7. 取り込んだバッチを検証します。 データセットに失敗したバッチが含まれている場合は、データ管理/ 監視 監視 を使用して、理由を確認します。 例えば、スキーマに存在しないフィールド名を JSON 内で定義したとします。

接続の追加または編集

Experience Platformからのオーディエンスデータを含む変換された JSON データが正常に取り込まれたら、Customer Journey Analyticsの新しい接続または既存の接続にデータセットを追加できます。

接続へのデータセットの追加

Customer Journey Analytics UI で、次の操作を行います。

  1. データ管理/接続 を選択します。

  2. 新しい接続を作成/定義 接続設定 および データ設定。 または、既存の接続を選択し、 編集 接続を編集 を使用して接続を編集します。

  3. DataAdd Add datasets を選択します。

  4. 作成し、変換後の JSON データを取り込んだデータセットを選択します。

  5. データセットを設定します。 例:

    接続 – 書き出されたオーディエンスデータを含むデータセット

  6. 保存 接続。

データビューの設定

作成または編集したばかりの接続のデータビューを設定します。

オーディエンスコンポーネントの定義
  1. データ管理/データビュー を選択します。

  2. 既存のデータビューを編集するか、新しいデータビューを作成します。

  3. データビューの コンポーネント タブで、オーディエンスメンバーシップ IDオーディエンスメンバーシップ名 がディメンションコンポーネントとして追加されていることを確認します。

    データ表示コンポーネント

  4. 保存して続行」を選択して、データビューを保存します。

レポートと分析

最後に、Analysis Workspaceを使用して、audienceMembershipIdaudienceMembershipIdNamepersonID などのオーディエンスメンバーシップコンポーネントと共にデータビューを使用する 1 つ以上のパネルで、Experience Platform オーディエンスデータについてレポートします。

追加情報

  • このプロセスは、定期的に実行して、Customer Journey Analytics内でオーディエンスデータが常に更新されるようにする必要があります。

  • 1 つのCustomer Journey Analytics接続内で複数のオーディエンスを読み込むことができます。 これは、プロセスがさらに複雑になりますが、可能です。これを機能させるには、前述のプロセスに少し修正を加える必要があります。

    1. RTCP 内のオーディエンスコレクションの目的の各オーディエンスに対して、このプロセスを実行します。
    2. Customer Journey Analyticsは、プロファイルデータセットの配列/オブジェクト配列をサポートします。 ​ または ​ に対して audienceMembershipId オブジェクトの配列 audienceMembershipIdName を使用するのが最適なオプションです。
    3. データビューで、audienceMembershipId フィールドの部分文字列変換を使用して、新しいディメンションを作成し、コンマ区切り値の文字列を配列に変換します。メモ:現在、配列の値は 10 個までという制限があります。
    4. Customer Journey Analytics Workspace内で、この新しいディメンション audienceMembershipIds についてレポートできるようになりました。
recommendation-more-help
080e5213-7aa2-40d6-9dba-18945e892f79