コンテンツにスキップ

クラウドデータ取り込みのテーブル設定

このページでは、クラウドデータ取り込み(CDI)がデータを読み取る方法を選択し、PAYLOAD 列を使用する場合にソーステーブルを設定する方法について説明します。

データ定義オプションの選択

データウェアハウスソースから同期を作成する場合、データ定義ステップでBrazeがデータを読み取る方法を選択します。表示されるオプションは同期タイプによって異なります。

オプション 仕組み 利用可能な対象
ビジュアル SQLを記述せずに、ダッシュボードでテーブルまたはビューを入力し、その列をBrazeフィールドにマッピングします。詳細については、ビジュアルマッパーを参照してください。 データウェアハウスソースにおける属性、カスタムイベント、およびキャンバストリガーの同期
SQL ソースに対してクエリを記述します。クエリが返す列がBrazeフィールドになります。詳細については、SQLエディターを参照してください。 データウェアハウスソースにおけるすべての同期タイプ
PAYLOAD列 ソースにBrazeが受け入れる識別子、UPDATED_AT、およびPAYLOAD列を持つテーブルまたはビューを作成します。PAYLOADには/users/track形式のJSONオブジェクトが格納されます。次にCDI同期を作成し、データ定義ステップでテーブルまたはビジュアルを選択して、テーブル名を入力します。要件については、以下のセクションを参照してください。 ファイルストレージを含むすべてのソースにおけるすべての同期タイプ

テーブル設定とペイロードフォーマットの違いを理解する

PAYLOAD 列を使用する CDI ユーザーデータ同期では、以下の両方を設定します。

レイヤー 制御する内容
ソーステーブルの設定 必須列、ユーザー識別子、UPDATED_AT の同期動作
ペイロードのフォーマット PAYLOAD 内の JSON フィールド(属性、イベント、購入のオブジェクト構造を含む)

Braze はまずソーステーブルから行を読み取り、次に選択したデータ型に基づいて PAYLOAD フィールドを検証します。

ソーステーブルの設定

PAYLOAD 列を使用するデータウェアハウスのユーザーデータ同期では、ソーステーブルまたはビューに以下を含める必要があります。

  • UPDATED_AT
  • PAYLOAD
  • 1つ以上のサポートされたユーザー識別子列:
    • EXTERNAL_ID
    • ALIAS_NAME および ALIAS_LABEL
    • BRAZE_ID
    • EMAIL
    • PHONE

テーブルに複数の識別子列が含まれている場合でも、各行には一度に1つの識別子タイプのみを含めてください。

UPDATED_AT の要件

  • 夏時間の問題を避けるため、UPDATED_AT の値は UTC で保存してください。
  • Brazeは、UPDATED_AT が最後に同期された値よりも後の行を同期します。
  • 新しい行が同じタイムスタンプを共有している場合、境界のタイムスタンプの行が再同期されることがあります。

重複するタイムスタンプと増分更新のガイダンスについては、クラウドデータ取り込みのベストプラクティスを参照してください。

PAYLOAD 列の設定

PAYLOAD 値は、選択したデータ型に対して Braze /users/track エンドポイントで使用されるのと同じオブジェクト形式に従います。

データ型 形式のリファレンス
attributes ユーザー属性オブジェクト
events イベントオブジェクト
purchases 購入オブジェクト

階層化属性の場合、オブジェクトプロパティとしての日付のキャプチャに記載されている形式を使用して日付を含めてください。

ペイロードの例

カスタム属性同期のペイロード列に階層化カスタム属性を含めることができます。

{
      "most_played_song": {
        "song_name": "Solea",
        "artist_name": "Miles Davis",
        "album_name": "Sketches of Spain",
        "genre": "Jazz",
        "play_analytics": {
            "count": 1000,
            "top_10_listeners": true
        }
      }
}

イベントを同期するには、イベント名が必要です。time フィールドは ISO 8601 文字列または yyyy-MM-dd'T'HH:mm:ss:SSSZ 形式でフォーマットしてください。time フィールドが存在しない場合、Braze は UPDATED_AT 列の値をイベント時刻として使用します。app_id や properties などのその他のフィールドはオプションです。

1行につき1つのイベントを同期できます。

{
    "app_id" : "your-app-id",
    "name" : "rented_movie",
    "time" : "2013-07-16T19:20:45+01:00",
    "properties": {
        "movie": "The Sad Egg",
        "director": "Alex Smith"
    }
}

購入イベントを同期するには、product_id、currency、price が必要です。オプションの time フィールドは ISO 8601 文字列または yyyy-MM-dd'T'HH:mm:ss:SSSZ 形式でフォーマットしてください。time フィールドが存在しない場合、Braze は UPDATED_AT 列の値をイベント時刻として使用します。app_id、quantity、properties などのその他のフィールドはオプションです。

1行につき1つの購入イベントを同期できます。

{
    "app_id" : "11ae5b4b-2445-4440-a04f-bf537764c9ad",
    "product_id" : "Completed Order",
    "currency" : "USD",
    "price" : 219.98,
    "time" : "2013-07-16T19:20:30+01:00",
    "properties" : {
        "products" : [ { "name": "Monitor", "category": "Gaming", "product_amount": 19.99 },
        { "name": "Gaming Keyboard", "category": "Gaming ", "product_amount": 199.99 }
        ]
    }
}

購読グループのステータスを同期するには、各行に1つ以上の subscription_group_id と subscription_state のペアを含めてください。

{
    "subscription_groups" : [
        {
            "subscription_group_id": "subscription_group_identifier_1",
            "subscription_state": "unsubscribed"
        },
        {
            "subscription_group_id": "subscription_group_identifier_2",
            "subscription_state": "subscribed"
        },
        {
            "subscription_group_id": "subscription_group_identifier_3",
            "subscription_state": "subscribed"
        }
      ]
}
New Stuff!