バッチデータの取得

このレッスンでは、さまざまな方法を使用してExperience Platformにバッチデータを取り込みます。

バッチデータの取り込みにより、大量のデータを一度にAdobe Experience Platformに取り込むことができます。 バッチデータは、Platformのインターフェイス内またはAPIを使用して、1回のアップロードで取り込むことができます。 また、Sourceコネクタを使用して、クラウドストレージサービスなどのサードパーティサービスから定期的にスケジュールされたバッチアップロードを設定することもできます。

データエンジニア​は、このチュートリアル以外でバッチデータを取り込む必要があります。

この演習を開始する前に、この短いビデオでデータ取り込みについて詳しく説明します。

権限が必要です

権限の設定 レッスンでは、このレッスンを完了するために必要なすべてのアクセス制御を設定します。

ソースの演習では、(S) FTP サーバーまたはクラウドストレージソリューションにアクセスする必要があります。 解決策がない場合は、回避策があります。

Platform ユーザーインターフェイスを使用したデータの一括取り込み

データは、JSON形式およびparquet形式でデータセット画面のデータセットに直接アップロードできます。 これは、プロファイルを作成した後にデータの取り込みをテストする優れた方法です。

データのダウンロードと準備

まず、サンプルデータを取得し、テナントに合わせてカスタマイズします。

NOTE
luma-data.zip ファイルに含まれるデータは架空のものであり、デモ目的でのみ使用されます。
  1. luma-data.zipを​Luma Tutorial Assets フォルダーにダウンロードします。

  2. ファイルを解凍し、このレッスンで使用する4つのデータファイルを含むluma-dataというフォルダーを作成します

  3. テキストエディターでluma-loyalty.jsonを開き、_techmarketingdemosのすべてのインスタンスを、独自のスキーマで見られるように、独自のアンダースコアテナント IDに置き換えます。
    ​ テナント IDをアンダースコア化

  4. 更新したファイルを保存

データの収集

  1. Platform ユーザーインターフェイスで、左側のナビゲーションで​ データセット ​を選択します

  2. Luma Loyalty Datasetを開きます

  3. 右側の列に「データを追加」セクションが表示されるまで、下にスクロールします

  4. luma-loyalty.json ファイルをアップロードします。

  5. ファイルをアップロードすると、バッチの行が表示されます

  6. 数分後にページを再読み込みすると、バッチが正常に1000件のレコードと1000件のプロファイルフラグメントをアップロードしたことがわかります。

    ​ インジェスション

NOTE
このレッスンの様々な画面に表示されるオプションは、エラー診断​と​ 部分取り込み ​です。 これらのオプションについては、チュートリアルでは説明しません。 簡単な情報:
  • エラー診断を有効にすると、データの取り込みに関するデータが生成され、Data Access APIを使用して確認できます。 詳しくは、​ ドキュメント ​を参照してください。
  • 部分取り込みでは、指定できる一定のしきい値まで、エラーを含むデータを取り込むことができます。 詳細については、​ ドキュメント ​を参照してください

データの検証

データが正常に取り込まれたことを確認する方法がいくつかあります。

Platform ユーザーインターフェイスでの検証

データがデータセットに取り込まれたことを確認するには:

  1. データを取り込んだページで、右上の「データセットをプレビュー」ボタンを選択します

  2. 「プレビュー」ボタンを選択すると、取り込んだデータの一部が表示されます。

    成功したデータセットのプレビュー

データがプロファイルに到着したことを確認するには(データが到着するまでに数分かかる場合があります):

  1. 左側のナビゲーションで​ プロファイル ​に移動します
  2. ID名前空間を選択 フィールドの横にあるアイコンを選択して、モーダルを開きます
  3. Luma Loyalty Id名前空間を選択
  4. 次に、データセット 5625458からloyaltyId個の値のいずれかを入力します
  5. ビューを選択
    ​ データセットからプロファイルを確認

データ取り込みイベントによる検証

前のレッスンでデータ取り込みイベントを購読した場合は、固有のwebhook.site URLを確認してください。 3つのリクエストが次の順序で表示され、それらの間に時間がかかり、次のeventCode値が表示されます。

  1. ing_load_success – 取り込まれたバッチ
  2. ig_load_success - バッチがID グラフに取り込まれました
  3. ps_load_success - バッチがプロファイルサービスに取り込まれました

​ データ取り込みWebhook

通知の詳細については、​ ドキュメント ​を参照してください。

Platform APIでのデータの一括取り込み

それでは、APIを使用してデータをアップロードします。

NOTE
データアーキテクトは、Uiを利用して、CRM データを自由にアップロードできます。

データのダウンロードと準備

  1. luma-data.zipを既にダウンロードして、Luma Tutorial Assets フォルダーに解凍しておく必要があります。
  2. テキストエディターでluma-crm.jsonを開き、_techmarketingdemosのすべてのインスタンスを、スキーマに表示されているように、独自のアンダースコアテナント IDに置き換えます
  3. 更新したファイルを保存

データセット IDを取得

まず、データを取り込むデータセットのデータセット IDのIDを取得します。

  1. Postmanを開
  2. アクセストークンがない場合は、リクエスト OAuth: Request Access Token​を開き、送信​を選択して新しいアクセストークンをリクエストします(Postman レッスンで行った場合と同様)。
  3. 環境変数を開き、CONTAINER_ID​の値がまだtenantであることを確認します
  4. リクエスト Catalog Service API > Datasets > Retrieve a list of datasets.​を開き、送信​を選択します
  5. 200 OK件の応答が返されます
  6. 応答本文からLuma CRM DatasetのIDをコピーします
    ​ データセット IDを取得

バッチの作成

次に、データセットでバッチを作成できます。

  1. Data Ingestion API.postman_collection.jsonをLuma Tutorial Assets フォルダーにダウンロードします

  2. コレクションをPostmanにインポートします

  3. リクエスト Data Ingestion API > Batch Ingestion > Create a new batch in Catalog Service.​を選択

  4. 以下をリクエストの​ Body ​として貼り付け、datasetId値を独自の​に置き換えます。

    code language-json
    {
        "datasetId":"REPLACE_WITH_YOUR_OWN_DATASETID",
        "inputFormat": {
            "format": "json"
        }
    }
    
  5. 「送信」ボタンを選択します

  6. 新しいバッチのIDを含む201作成済み応答が表示されます。

  7. 新しいバッチのidをコピーします
    ​ バッチが作成されました

データの収集

これで、データをバッチにアップロードできます。

  1. リクエスト Data Ingestion API > Batch Ingestion > Upload a file to a dataset in a batch.​を選択

  2. 「パラメーター」タブで、データセット IDとバッチ IDをそれぞれのフィールドに入力します

  3. 「パラメーター」タブに、luma-crm.jsonを​ ファイルパス ​として入力します

  4. Body タブで、バイナリ オプションを選択します

  5. ローカルのLuma Tutorial Assets フォルダーからダウンロードしたluma-crm.jsonを選択します

  6. Send​を選択すると、応答本文に「1」を含む200 OK応答が返されます

    ​ データがアップロードされました

この時点で、Platform ユーザーインターフェイスでバッチを見ると、「読み込み」ステータスであることがわかります。
​ バッチ読み込み

バッチ APIは複数のファイルのアップロードに頻繁に使用されるため、バッチがいつ完了したかをPlatformに伝える必要があります。次の手順で行います。

バッチを完了

バッチを完了するには:

  1. リクエスト Data Ingestion API > Batch Ingestion > Finish uploading a file to a dataset in a batch.​を選択

  2. 「パラメーター」タブに、COMPLETEを​ アクション ​として入力します

  3. 「パラメーター」タブで、バッチ IDを入力します。 データセット IDまたはfilePathが存在する場合は、心配しないでください。

  4. POSTのURLがhttps://platform.adobe.io/data/foundation/import/batches/:batchId?action=COMPLETEであること、およびdatasetIdまたはfilePathへの不要な参照がないことを確認してください

  5. Send​を選択すると、応答本文に「1」を含む200 OK応答が返されます

    ​ バッチ完了

データの検証

Platform ユーザーインターフェイスでの検証

ロイヤルティデータセットと同様に、Platform ユーザーインターフェイスにデータが表示されたことを検証します。

まず、1,000件のレコードが取り込まれたことを示すバッチを確認します。

​ バッチ成功

次に、「データセットをプレビュー」を使用してバッチを確認します。

​ バッチプレビュー

最後に、Luma CRM Id名前空間(例:f660ab912ec121d1b1e928a0bb4bc61b)でプロファイルのいずれかを検索して、プロファイルの1つが作成されたことを確認します

​ プロファイルを取り込みました

たまたま指摘しておきたい興味深いことがひとつあります。 そのDanny Wright プロファイルを開きます。 プロファイルにはLumacrmidとLumaloyaltyidの両方があります。 Luma Loyalty Schemaには、Luma Loyalty IdとCRM IDの2つのID フィールドが含まれていることを忘れないでください。 両方のデータセットをアップロードしたら、単一のプロファイルに統合しました。 ロイヤルティデータの名前はDaniel、ホームアドレスは「ニューヨーク市」、CRM データの名前はDanny、同じロイヤルティ IDを持つ顧客のホームアドレスはPortlandでした。 最初の名前が結合ポリシーのレッスンにDannyと表示される理由に戻ります。

おめでとうございます。プロファイルを統合しました。

​ プロファイルが と結合されました

データ取り込みイベントによる検証

前のレッスンでデータ取り込みイベントを購読した場合は、固有のwebhook.site URLを確認してください。 ロイヤルティデータと同様に、次の3つのリクエストが表示されます。

​ データ取り込みWebhook

通知の詳細については、​ ドキュメント ​を参照してください。

ワークフローを使用したデータの取り込み

別の方法でデータをアップロードしてみましょう。 ワークフロー機能を使用すると、XDMでモデル化されていないCSV データを取り込むことができます。

データのダウンロードと準備

  1. luma-data.zipを既にダウンロードして、Luma Tutorial Assets フォルダーに解凍しておく必要があります。
  2. luma-products.csvがあることを確認してください

ワークフローの作成

次に、ワークフローを設定します。

  1. 左側のナビゲーションで​ ワークフロー ​に移動します
  2. 「CSVをXDM スキーマにマッピング​し、起動」ボタンを選択します
    ​ ワークフローを起動
  3. Luma Product Catalog Datasetを選択し、次へ ボタンを選択します
    ​ データセットを選択
  4. ダウンロードしたluma-products.csv ファイルを追加し、次へ ボタンを選択します
    ​ データセットを選択
  5. これで、ソースデータ(luma-products.csv ファイルの列名の1つ)からターゲットスキーマのXDM フィールドにフィールドをマッピングできるマッパーインターフェイスになりました。 この例では、列名は、マッパーが適切なマッピングを自動検出できるスキーマフィールド名に十分に近いです。 マッパーが適切なフィールドを自動検出できなかった場合は、ターゲットフィールドの右側にあるアイコンを選択して、正しいXDM フィールドを選択します。 また、CSVから1つの列を取り込みたくない場合は、マッパーから行を削除できます。 luma-products.csvの列の見出しを自由に操作して変更し、マッパーの仕組みに慣れましょう。
  6. 「完了」ボタンを選択します
    ​ データセットを選択

データの検証

バッチがアップロードされたら、データセットをプレビューしてアップロードを確認します。

Luma Product SKUはユーザー以外の名前空間であるため、製品skuのプロファイルは表示されません。

Webhookに3つのヒットが表示されます。

ソースでのデータの取り込み

さて、あなたは難しい方法で物事を行いました。 次に、自動 バッチ取り込みの約束された土地に移動しましょう。 「セット・イット!」と言うと 「忘れろ!」と言うだろう。 「セット・イット!」 「忘れてくれ!」 「セット・イット!」 「忘れてくれ!」 冗談です、そんなことは決してしないでしょう! さて、仕事に戻ります。 もうすぐ終わります。

左側のナビゲーションの​ ソース ​に移動して、ソースカタログを開きます。 ここでは、業界をリードするデータおよびストレージプロバイダーとの統合が可能な、すぐに使用できる機能を紹介します。

Source カタログ ​

ソースコネクタを使ってデータを取り込みます。

この演習は、あなた自身の冒険スタイルを選択します。 FTP ソースコネクタを使用したワークフローを表示します。 会社で使用する別のクラウドストレージソースコネクタを使用するか、ロイヤルティデータで行ったように、データセットのユーザーインターフェイスを使用してjson ファイルをアップロードできます。

多くのソースには、次のような設定ワークフローがあります。

  1. 認証情報を入力してください
  2. 取り込むデータを選択
  3. 取り込むPlatform データセットを選択します
  4. XDM スキーマへのフィールドのマッピング
  5. その場所からデータを再取得する頻度を選択します
NOTE
この演習で使用するオフライン購入データには、日時データが含まれます。 日時データは、ISO 8061形式の文字列 (「2018-07-10T15:05:59.000-08:00」)またはUnix時間(1531263959000)でフォーマットされ、取り込み時にターゲット XDM タイプに変換されます。 データ変換およびその他の制約について詳しくは、​ バッチ取り込みAPI ドキュメント ​を参照してください。

データのダウンロード、準備、任意のクラウドストレージベンダーへのアップロード

  1. luma-data.zipを既にダウンロードして、Luma Tutorial Assets フォルダーに解凍しておく必要があります。
  2. テキストエディターでluma-offline-purchases.jsonを開き、_techmarketingdemosのすべてのインスタンスを、スキーマに表示されているように、独自のアンダースコアテナント IDに置き換えます
  3. すべてのタイムスタンプを更新して、先月にイベントが発生するようにします(例えば、"timestamp":"2022-06を検索し、年と月を置き換えます)
  4. お好みのクラウドストレージプロバイダーを選択し、​ ソース ​ カタログで利用できることを確認します
  5. luma-offline-purchases.jsonを任意のクラウドストレージプロバイダーの場所にアップロードします

データを好みのクラウドストレージの場所に取り込みます

  1. Platform ユーザーインターフェイスで、​ ソース ​ カタログを​ クラウドストレージ ​にフィルタリングします

  2. ...の下のドキュメントへの便利なリンクがあります

  3. 希望するクラウドストレージベンダーのボックスで、「設定」ボタンを選択します
    設定を選択

  4. 認証​が最初の手順です。 アカウントの名前(例:Luma's FTP Account)と認証の詳細を入力します。 フィールドは多少異なる場合がありますが、このステップは、すべてのクラウドストレージソースに対してかなり類似している必要があります。 アカウントの認証の詳細を入力したら、同じアカウント内の他のファイルから異なるスケジュールに関する異なるデータを送信している可能性がある他のソース接続に再利用できます

  5. 「ソースに接続」ボタンを選択

  6. PlatformがSourceに正常に接続されたら、次へ ボタンを選択します
    ​ ソースに対する認証

  7. データを選択​手順では、ユーザーインターフェイスが資格情報を使用して、クラウドストレージソリューション上のフォルダーを開きます

  8. 取り込むファイル(例:luma-offline-purchases.json)を選択します

  9. データ形式​として、XDM JSONを選択します

  10. 次に、ファイル内のjson構造とサンプルデータをプレビューできます

  11. 「次へ」ボタンを選択
    ​ データファイルを選択

  12. マッピング ステップで、Luma Offline Purchase Events Datasetを選択し、次へ ボタンを選択します。 取り込むデータはJSON ファイルなので、ソースフィールドをターゲットフィールドにマッピングするマッピングステップはありません。 JSON データは既にXDMにある必要があります。 CSVを取り込む場合は、次の手順で完全なマッピングユーザーインターフェイスが表示されます。
    ​ データセットを選択

  13. スケジュール設定​の手順で、Sourceからデータを再取得する頻度を選択します。 選択肢を確認する必要があります。 1回限りの取り込みを行うので、Once​に​ Frequency ​を残し、Next ボタンを選択します。
    ​ データフローをスケジュール ​

  14. データフローの詳細 ステップで、データフローの名前を選択し、オプションの説明を入力し、エラー診断をオンにして、部分的な取り込みを行うことができます。 設定はそのままにして、次へ ボタンを選択します。
    ​ データフローの詳細を編集

  15. レビュー ステップでは、すべての設定を同時にレビューし、編集するか、終了 ボタンを選択できます

  16. 保存すると、次のような画面が表示されます。
    完了

データの検証

バッチがアップロードされたら、データセットをプレビューしてアップロードを確認します。

Webhookに3つのヒットが表示されます。

loyaltyId名前空間の値5625458を持つプロファイルを再度検索して、プロファイルに購入イベントがあるかどうかを確認します。 1回の購入で確認できます。 JSON​を表示を選択すると、購入の詳細を詳しく調べることができます。

​ プロファイル内の購入イベント ​

ETL ツール

Adobeは、複数のETL ベンダーと提携して、Experience Platformへのデータ取り込みをサポートします。 サードパーティベンダーの種類が多いため、ETLはこのチュートリアルでは扱われませんが、次のリソースを確認することをお勧めします。

その他のリソース

Web SDKを使用して​ データをストリーミングしましょう

recommendation-more-help
platform-learn-help-tutorial-data-architect-and-engineer