클라우드 데이터 수집 테이블 설정
이 페이지에서 클라우드 데이터 수집(CDI)이 데이터를 읽는 방식을 선택하고, 해당 방식을 사용하는 경우
PAYLOAD열이 있는 소스 테이블을 설정하세요.
데이터 정의 옵션 선택
데이터 웨어하우스 소스에서 동기화를 생성할 때 데이터 정의 단계에서 Braze가 데이터를 읽는 방식을 선택합니다. 표시되는 옵션은 동기화 유형에 따라 다릅니다.
| 옵션 | 작동 방식 | 사용 가능 대상 |
|---|---|---|
| 시각적 | 테이블 또는 뷰를 입력하고 SQL을 작성하지 않고도 대시보드에서 해당 열을 Braze 필드에 매핑합니다. 자세한 내용은 시각적 매퍼를 참조하세요. | 데이터 웨어하우스 소스의 속성, 커스텀 이벤트, Canvas 트리거 동기화 |
| SQL | 소스에 대한 쿼리를 작성합니다. 쿼리가 반환하는 열이 Braze 필드가 됩니다. 자세한 내용은 SQL 편집기를 참조하세요. | 데이터 웨어하우스 소스의 모든 동기화 유형 |
PAYLOAD 열 |
Braze에서 허용하는 식별자, UPDATED_AT, PAYLOAD 열이 포함된 테이블 또는 뷰를 소스에 생성합니다. 여기서 PAYLOAD는 /users/track 형식의 JSON 객체를 담습니다. 그런 다음 CDI 동기화를 생성하고 데이터 정의 단계에서 테이블 또는 시각적을 선택한 후 테이블 이름을 입력합니다. 요구 사항은 다음 섹션을 참조하세요. |
파일 스토리지를 포함한 모든 소스의 모든 동기화 유형 |
데이터 구성 가이드
각 CDI 동기화는 사용자 속성, 커스텀 이벤트, 구매 이벤트, 카탈로그 항목 등 한 번에 하나의 데이터 유형만 업데이트합니다. 소스 테이블이나 뷰를 설정할 때는 데이터를 동기화할 방식에 맞춰 데이터를 구성하세요.
- 데이터 유형별 테이블: 데이터 유형마다 별도의 테이블이나 뷰(예:
user_attributes,custom_events,purchases)를 만들면 데이터가 명확하게 분리되고, 서로 다른 동기화 스케줄과 데이터 정의를 더 쉽게 관리할 수 있습니다. - 공유 소스 테이블: 시각적 매퍼 모드나 SQL 매퍼 모드를 사용하는 경우 여러 동기화가 동일한 소스 테이블에서 데이터를 가져올 수 있습니다. 예를 들어 속성 동기화와 이벤트 동기화가 같은 테이블을 쿼리할 수 있지만, Braze 대시보드에서는 속성용 동기화와 이벤트용 동기화를 각각 따로 만들어야 합니다. 각 동기화는 필요한 열만 매핑하거나 쿼리합니다.
데이터 파이프라인과 관리하는 사용 사례 수에 맞는 방식을 선택하세요. 두 패턴 모두 사용 사례가 늘어나도 문제없이 작동합니다.
테이블 설정과 페이로드 형식 비교 이해하기
PAYLOAD 열을 사용하는 CDI 사용자 데이터 동기화의 경우 다음 두 가지를 모두 구성해야 합니다.
| 계층 | 제어 대상 |
|---|---|
| 소스 테이블 설정 | 필수 열, 사용자 식별자 및 UPDATED_AT 동기화 동작 |
| 페이로드 형식 | 속성, 이벤트, 구매에 대한 객체 구조를 포함한 PAYLOAD의 JSON 필드 |
Braze는 먼저 소스 테이블에서 행을 읽은 다음, 선택한 데이터 유형에 따라 PAYLOAD 필드를 검증합니다.
소스 테이블 설정
PAYLOAD 열을 사용하는 데이터 웨어하우스 사용자 데이터 동기화의 경우, 소스 테이블이나 뷰에는 다음 항목이 포함되어야 합니다.
UPDATED_ATPAYLOAD- 지원되는 사용자 식별자 열 하나 이상:
EXTERNAL_IDALIAS_NAME및ALIAS_LABELBRAZE_IDEMAILPHONE
테이블에 여러 식별자 열이 있더라도 각 행에는 한 번에 하나의 식별자 유형만 포함해야 합니다.
UPDATED_AT 요구 사항
- 서머타임 문제를 피하려면
UPDATED_AT값을 UTC로 저장하세요. - Braze는
UPDATED_AT이 마지막으로 동기화된 값보다 이후인 행을 동기화합니다. - 새 행이 경계 타임스탬프와 동일한 타임스탬프를 가지면 해당 타임스탬프의 행이 다시 동기화될 수 있습니다.
중복 타임스탬프와 증분 업데이트에 대한 안내는 클라우드 데이터 수집 모범 사례를 참조하세요.

파일 스토리지 소스는 설정 요구 사항이 다르며 UPDATED_AT을 지원하지 않습니다. 자세한 내용은 소스 페이지의 필수 파일 형식 섹션을 참조하세요: Amazon S3, Google Cloud Storage 또는 Azure Blob Storage.
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 등 기타 필드는 선택 사항입니다.
행당 하나의 이벤트를 동기화할 수 있습니다.
{
"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 등 기타 필드는 선택 사항입니다.
행당 하나의 구매 이벤트를 동기화할 수 있습니다.
{
"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 }
]
}
}
구독 그룹 상태를 동기화하려면 각 행에 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"
}
]
}