세그먼트 가져오기 - Amazon Pinpoint

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

세그먼트 가져오기

Amazon Pinpoint에서는 세그먼트에 속하는 사용자에 대한 정보가 들어 있는 파일을 가져와 사용자 세그먼트를 정의할 수 있습니다. 세그먼트 가져오기는 Amazon Pinpoint 외부에서 사용자 세그먼트를 정의하지만 사용자를 Amazon Pinpoint 캠페인에 참여시키려는 경우에 유용합니다.

콘솔에서 세그먼트 작성기를 사용하여 생성하는 동적 세그먼트와 달리 가져온 세그먼트는 변경되지 않는 엔드포인트 또는 사용자 ID 집합입니다.

엔드포인트

이메일 주소, 모바일 디바이스 ID 또는 전화번호와 같이 메시지를 전송할 수 있는 대상입니다. 엔드포인트의 정의에는 메시지를 전송하는 사용자 또는 디바이스를 설명하는 속성이 들어 있습니다. 사용자 ID가 포함될 수도 있습니다.

엔드포인트 정의 목록을 가져와서 세그먼트를 정의할 수 있습니다. Amazon Pinpoint는 세그먼트를 생성하고 이전에 Amazon Pinpoint에 추가한 모든 엔드포인트를 새 정보로 업데이트합니다.

사용자 ID

고객 중에서 개별 사용자를 나타내는 ID입니다. 이 ID는 하나 이상의 엔드포인트에 할당해야 합니다. 예를 들어, 한 사람이 두 개 이상의 디바이스에서 앱을 사용하는 경우 앱은 그 사람의 사용자 ID를 각 디바이스에 대한 엔드포인트에 할당할 수 있습니다.

사용자 ID에 연결된 엔드포인트를 Amazon Pinpoint에 추가한 경우에만 사용자 ID를 가져와 세그먼트를 정의할 수 있습니다.

가져온 세그먼트는 엔드포인트나 사용자 ID, 혹은 두 가지의 조합으로 구성됩니다. Amazon Pinpoint를 사용하여 세그먼트에 메시지를 전송할 수 있는 대상에는 다음이 포함됩니다.

  • 가져온 파일에 나열된 각 엔드포인트.

  • 가져온 파일에 나열된 각 사용자 ID에 연결되어 있는 각 엔드포인트.

가져온 세그먼트를 기본 세그먼트로 사용하여 새 세그먼트를 생성할 수 있습니다. 그런 다음 기본 세그먼트에 필터를 적용하여 필요에 따라 구체화할 수 있습니다.

가져온 세그먼트에 대한 고려 사항

가져온 세그먼트를 생성할 때는 다음 요인을 고려하십시오.

  • 캠페인을 생성할 때 반드시 세그먼트를 선택해야 합니다. 동적 세그먼트를 선택하면 Amazon Pinpoint는 해당 세그먼트의 크기 추정값을 제공합니다. 그러나 가져온 세그먼트를 선택하면 Amazon Pinpoint가 추정값을 제공할 수 없습니다.

  • 특정 이벤트가 발생할 때 메시지를 전송하는 캠페인을 생성한 경우에는 가져온 세그먼트를 사용할 수 없습니다. 이벤트 기반 캠페인은 동적 세그먼트만 사용할 수 있습니다. 동적 세그먼트 생성에 대한 자세한 내용은 세그먼트 구축 단원을 참조하십시오.

세그먼트 파일

쉼표로 구분된 값(CSV) 또는 JSON 파일로 세그먼트에 속한 엔드포인트 또는 사용자 ID를 정의합니다. 그런 다음 파일을 Amazon Pinpoint로 가져와 세그먼트를 생성합니다.

세그먼트를 가져올 때 다음을 명심하십시오.

  • Amazon Pinpoint는 압축 파일을 가져올 수 없습니다.

  • 가져오는 파일은 UTF-8 문자 인코딩을 사용해야 합니다.

  • 새 엔드포인트를 가져오는 경우 AddressChannelType 속성이 필요합니다.

  • 기존 엔드포인트를 업데이트하는 경우 업데이트할 각 엔드포인트의 Id 속성이 필요합니다.

  • 엔드포인트 정의에 특정 속성만 포함할 수 있습니다. 목록을 보려면 지원되는 속성 섹션을 참조하세요. 또한 속성 이름은 50자 이하여야 합니다. 속성 값은 100자 이하여야 합니다.

세그먼트 파일의 예

이 단원의 예시 파일은 의 다음 데이터에 근거합니다.

엔드포인트 속성 값 예시
ChannelType Address Location.Country Demographic.Platform Demographic.Make 사용자. UserId
SMS +16045550182 CA Android LG example-user-id-1
APNS 1a2b3c4d5e6f7g8h9i0j1a2b3c4d5e6f 미국 iOS Apple example-user-id-2
EMAIL john.stiles@example.com 미국 iOS Apple example-user-id-2
GCM 4d5e6f1a2b3c4d5e6f7g8h9i0j1a2b3c CN Android Google example-user-id-3
EMAIL wang.xiulan@example.com CN Android OnePlus example-user-id-3

이 표의 각 행은 개별 엔드포인트를 의미합니다. 사용자 ID example-user-id-2example-user-id-3은 각각 두 엔드포인트에 할당됩니다.

예 엔드포인트 정의가 있는 파일
CSV

다음 예와 같이 CSV 파일로 정의된 엔드포인트를 가져올 수 있습니다.

ChannelType,Address,Location.Country,Demographic.Platform,Demographic.Make,User.UserId SMS,+16045550182,CA,Android,LG,example-user-id-1 APNS,1a2b3c4d5e6f7g8h9i0j1a2b3c4d5e6f,US,iOS,Apple,example-user-id-2 EMAIL,john.stiles@example.com,US,iOS,Apple,example-user-id-2 GCM,4d5e6f1a2b3c4d5e6f7g8h9i0j1a2b3c,CN,Android,Google,example-user-id-3 EMAIL,wang.xiulan@example.com,CN,Android,OnePlus,example-user-id-3

첫 번째 줄은 엔드포인트 속성을 포함하는 헤더입니다. 가능한 속성의 전체 목록은 지원되는 속성 단원을 참조하십시오.

이어지는 줄에서 헤더 내 각 속성에 값을 제공하여 엔드포인트를 정의합니다.

값에 쉼표 또는 큰따옴표를 포함하려면 "aaa,bbb"와 같이 값을 큰따옴표로 묶습니다.

CSV 파일은 줄 바꿈이나 탭을 포함할 수 없습니다. 파일에 줄 바꿈이나 탭이 있는 데이터가 들어 있는 경우 파일의 데이터를 가져오지 못하거나 가져오기 프로세스가 실패할 수 있습니다.

JSON

줄 바꿈으로 구분된 JSON 파일로 정의된 엔드포인트를 가져올 수 있습니다. 이 형식에서 각 줄은 다음 예제와 같이 개별 엔드포인트 정의를 포함하는 완전한 JSON 객체입니다.

{"ChannelType":"SMS","Address":"+16045550182","Location":{"Country":"CA"},"Demographic":{"Platform":"Android","Make":"LG"},"User":{"UserId":"example-user-id-1"}} {"ChannelType":"APNS","Address":"1a2b3c4d5e6f7g8h9i0j1a2b3c4d5e6f","Location":{"Country":"US"},"Demographic":{"Platform":"iOS","Make":"Apple"},"User":{"UserId":"example-user-id-2"}} {"ChannelType":"EMAIL","Address":"john.stiles@example.com","Location":{"Country":"US"},"Demographic":{"Platform":"iOS","Make":"Apple"},"User":{"UserId":"example-user-id-2"}} {"ChannelType":"GCM","Address":"4d5e6f1a2b3c4d5e6f7g8h9i0j1a2b3c","Location":{"Country":"CN"},"Demographic":{"Platform":"Android","Make":"Google"},"User":{"UserId":"example-user-id-3"}} {"ChannelType":"EMAIL","Address":"wang.xiulan@example.com","Location":{"Country":"CN"},"Demographic":{"Platform":"Android","Make":"OnePlus"},"User":{"UserId":"example-user-id-3"}}

가능한 속성의 전체 목록은 지원되는 속성 단원을 참조하십시오.

세그먼트 가져오기

Amazon Pinpoint로 세그먼트를 가져오는 방법은 두 가지입니다. 컴퓨터에서 바로 파일을 업로드해도 되고, Amazon S3 버킷에 저장된 파일을 가져와도 됩니다.

일반적으로, 컴퓨터에서 파일을 업로드하는 것이 세그먼트를 더 쉽게 가져오는 방법이며 특히 사용자 컴퓨터에 고객 데이터가 있는 경우에는 더 편리합니다. 그러나 이 방법은 한 번에 10개의 파일만 가져올 수 있고 1GB(기가바이트) 미만의 파일만 업로드할 수 있습니다.

한 번에 10개 넘는 파일을 가져오거나 1GB보다 큰 파일을 업로드해야 한다면 Amazon S3에서 파일을 가져와야 합니다. Amazon S3 가져오기 옵션은 고객 데이터 파일을 Amazon S3로 보내 저장하는 프로세스가 이미 마련되어 있는 경우에도 유용합니다.

이 단원에는 이 두 가지 방법을 모두 사용하는 세그먼트 가져오기 절차가 나와 있습니다.

최대 10개의 파일을 컴퓨터에서 바로 업로드하여 세그먼트를 만들 수 있습니다. 업로드할 파일 형식은 CSV 또는 JSON이면 되며, 형식을 조합하여 파일을 업로드할 수 있습니다. 예를 들어 JSON 파일 한 개와 CSV 파일 세 개를 업로드할 수 있습니다.

세그먼트를 가져오려면
  1. https://console.aws.amazon.com/pinpoint/에서 Amazon Pinpoint 콘솔을 엽니다.

  2. 모든 프로젝트 페이지에서 세그먼트를 추가하려는 프로젝트를 선택합니다.

  3. 탐색 창에서 세그먼트를 선택합니다.

  4. 세그먼트 생성를 선택합니다.

  5. 세그먼트 생성에서 세그먼트 가져오기를 선택합니다.

  6. 가져오기 방법에서 컴퓨터에서 파일 업로드를 선택합니다.

  7. 가져올 파일에서 파일 선택을 선택합니다. 가져오려는 파일을 선택합니다.

    참고

    컴퓨터의 파일 탐색기에서 여기에 파일 끌어 놓기 영역으로 파일을 직접 끌어 놓아도 됩니다.

  8. Amazon Pinpoint에 파일을 업로드할 때는 가져올 각 파일의 세그먼트 이름을 입력해야 합니다. 세그먼트 이름에 가져오려는 각 파일의 세그먼트 이름을 입력합니다.

    기본적으로, Amazon Pinpoint는 가져온 파일의 이름에서 확장명을 뺀 이름을 세그먼트 이름으로 지정합니다. 이 기본값을 원하는 이름으로 바꿀 수 있습니다.

    세그먼트 생성 페이지에 세그먼트 이름 섹션을 표시합니다. 사용자가 두 개의 파일 (High Value Customers.csv및) 을 Top Users by Activity.json 업로드했습니다.
    참고

    여러 세그먼트에 동일한 이름을 사용할 수 있습니다. 그 경우, Amazon Pinpoint는 파일마다 별개의 세그먼트를 만들고 각 파일에 고유한 ID를 할당합니다. 생성일 역시 가져오는 파일마다 약간 달라집니다. 동일한 이름의 세그먼트를 이러한 요소로 구분할 수 있습니다.

  9. 완료했으면 세그먼트 생성을 선택합니다.

이 절차에 따라 세그먼트를 가져오려면 먼저 Amazon S3 버킷을 만들고 해당 버킷에 파일을 업로드해야 합니다. 다양한 세그먼트의 파일을 별도의 폴더로 구성할 수 있습니다. Amazon Pinpoint는 세그먼트의 엔드포인트나 사용자 ID를 가져올 때 지정된 Amazon S3 위치에 속하는 모든 폴더 및 하위 폴더 안의 파일도 포함시킵니다.

버킷 생성 및 객체 업로드에 대한 소개는 Amazon S3란 무엇입니까? 를 참조하십시오. Amazon 심플 스토리지 서비스 사용 설명서에서 확인할 수 있습니다.

Amazon Pinpoint는 세그먼트당 파일 형식 하나만(CSV 또는 JSON) 가져올 수 있기 때문에 단일 형식의 파일만 들어 있는 Amazon S3 경로를 지정해야 합니다.

세그먼트를 가져오려면
  1. https://console.aws.amazon.com/pinpoint/에서 Amazon Pinpoint 콘솔을 엽니다.

  2. 모든 프로젝트 페이지에서 세그먼트를 추가하려는 프로젝트를 선택합니다.

  3. 탐색 창에서 세그먼트를 선택합니다.

  4. 세그먼트 생성를 선택합니다.

  5. 세그먼트 생성에서 세그먼트 가져오기를 선택합니다.

  6. 세그먼트 이름에 나중에 알아보기 쉽도록 세그먼트 이름을 입력합니다.

  7. Amazon S3 URL에는 해당 세그먼트의 파일이 들어 있는 Amazon S3 버킷의 위치를 입력합니다. 버킷 주소는 다음 형식이어야 합니다.

    s3://bucket-name/folder-name

    Amazon Pinpoint는 지정한 경로와 해당 경로의 모든 하위 폴더에서 파일을 가져옵니다.

  8. IAM 역할에 대해 다음 단계 중 하나를 완료합니다.

    • Amazon Pinpoint가 Amazon S3 버킷에서 읽을 수 있는 역할을 자동으로 생성하도록 하려면 자동으로 역할 생성을 선택합니다. 그런 다음 IAM 역할에 생성 중인 역할의 이름을 입력합니다.

    • Amazon Pinpoint가 Amazon S3 버킷에서 읽을 수 있는 IAM 역할을 이미 생성한 경우 기존 역할 선택을 선택합니다. 그런 다음 IAM 역할에서 적절한 권한을 포함하는 역할을 선택합니다.

    IAM 역할을 직접 생성하려는 경우 Amazon Pinpoint 개발자 안내서엔드포인트 또는 세그먼트를 가져오기 위한 IAM 역할을 참조하세요. 역할을 생성한 후 Amazon Pinpoint 콘솔에서 해당 역할을 지정합니다.

  9. 가져올 파일 유형에서 Amazon S3에 업로드한 파일 형식에 따라 JavaScript 객체 표기법 (JSON) 또는 CSV (쉼표로 구분된 값) 를 선택합니다.

  10. 세그먼트 생성을 선택합니다.

지원되는 속성

이 섹션의 표에서는 Amazon Pinpoint로 가져오는 엔드포인트 정의에 지정할 수 있는 속성을 나열 및 설명합니다. CSV 파일을 사용하여 세그먼트를 가져오는 경우 파일의 헤더는 속성 열에 표시되는 이름과 일치해야 합니다.

JSON 파일의 경우 속성 이름의 마침표는 마침표 뒤의 이름이 마침표 앞의 값과 일치하는 이름의 상위 객체에 중첩된 객체임을 나타냅니다. 예를 들어 Demographic.MakeDemographic.Model 속성이 포함된 JSON 파일의 구조는 다음과 같습니다.

{ ... "Demographic": { ... "Make":"Apple", "Model":"iPhone" ... } ... }

전체 JSON 구조는 Amazon Pinpoint API 참조예제 엔드포인트 요청과 매우 유사합니다. 그러나 세그먼트를 가져올 때 EndpointStatusEffectiveDate를 비롯한 엔드포인트 요청 스키마의 모든 속성이 지원되는 것은 아닙니다.

사용자 지정 필드에 CSV 형식의 값이 여러 개 포함되도록 하려면 헤더를 복제하고 헤더당 하나의 값을 유지해야 합니다. 예:

...,User.UserId, User.UserAttributes.new_multi_field,User.UserAttributes.new_multi_field ...,example-user-id-2,test10,test20

custom_attribute로 표시된 속성 이름은 원하는 값으로 대체할 수 있습니다. 예를 들어 사용자의 이름과 성을 FirstNameLastName이라는 속성에 저장하려는 경우 각각 User.UserAttributes.FirstNameUser.UserAttributes.LastName이라는 사용자 지정 속성을 만들 수 있습니다. 속성 이름은 최대 50자를 포함할 수 있습니다. 속성 값은 최대 100자를 포함할 수 있습니다. 속성 이름은 대/소문자를 구분합니다.

JSON에서는 사용자 지정 속성의 형식을 "Attributes":{"Ride":["Bus"]}에서 지정해야 합니다.

속성 설명
Address

엔드포인트로 보내는 메시지 또는 푸시 알림의 고유한 대상 주소(예: 이메일 주소, 전화번호 또는 디바이스 토큰)입니다.

참고

엔드포인트 주소가 전화번호인 경우 E.164 형식으로 지정해야 합니다. E.164 형식에 대한 자세한 내용은 Wikipedia의 E.164를 참조하세요.

Attributes.custom_attribute 엔드포인트를 설명하는 사용자 지정 속성입니다. 이 유형의 속성을 세그먼트를 만들 때 선택 기준으로 사용할 수 있습니다. custom_attribute를 다른 값으로 대체할 수 있습니다.
ChannelType 엔드포인트에 메시지 또는 푸시 알림을 보낼 때 사용할 채널입니다. 예:
  • APNS - iOS 디바이스에서 실행 중인 앱으로 Apple Push Notification service(APNs) 채널을 통해 전송하는 푸시 알림을 받을 수 있는 엔드포인트에 사용합니다.

  • EMAIL - 음성 메시지를 받을 수 있는 엔드포인트에 사용합니다.

  • GCM - Android 디바이스에서 실행 중인 앱으로 Firebase Cloud Messaging(FCM) 채널을 통해 전송하는 푸시 알림을 받을 수 있는 엔드포인트에 사용합니다.

  • SMS - SMS 문자 메시지를 받을 수 있는 엔드포인트에 사용합니다.

Demographic.AppVersion 엔드포인트와 연결된 애플리케이션의 버전 번호입니다.
Demographic.Locale ISO 639-1 alpha-2 코드, 밑줄(_), ISO 3166-1 alpha-2 값 순의 형식으로 표시되는 엔드포인트의 로캘입니다. 예를 들어, en_US는 미국의 영어 로캘입니다.
Demographic.Make 엔드포인트 디바이스 제조업체(예: apple 또는 samsung)입니다.
Demographic.Model 엔드포인트 디바이스의 모델 이름 또는 번호(예: iPhone 또는 SM-G900F)입니다.
Demographic.ModelVersion 엔드포인트 디바이스의 모델 버전입니다.
Demographic.Platform 엔드포인트 디바이스의 운영 체제(예: ios 또는 android)입니다.
Demographic.PlatformVersion 엔드포인트 디바이스의 운영 체제 버전입니다.
Demographic.Timezone 엔드포인트의 시간대(tz 데이터베이스 값)입니다. 예: 태평양 표준시(북미)의 경우 America/Los_Angeles.
참고

다음 시간대는 더 이상 지원되지 않으며, 지원되는 시간대로 자동으로 다시 매핑됩니다.

시간대 다시 매핑된 시간대
Canada/East-Saskatchewan America/Managua
US/Pacific-New America/Los_Angeles
EffectiveDate 엔드포인트가 마지막으로 업데이트된 날짜와 시간입니다(ISO 8601 형식). 예를 들어 2019년 8월 23일 오전 10시 54분(UTC)인 경우 2019-08-23T10:54:35.220Z입니다.
Id 엔드포인트의 고유 식별자입니다.
Location.City 엔드포인트가 위치한 도시입니다.
Location.Country 엔드포인트가 위치한 국가 또는 리전의 2자 코드입니다(ISO 3166-1 alpha-2 형식). 예를 들어, 미국의 경우 US입니다.
Location.Latitude 소수점 한 자리로 반올림된 엔드포인트 위치의 위도 좌표입니다.
Location.Longitude 소수점 한 자리로 반올림된 엔드포인트 위치의 경도 좌표입니다.
Location.PostalCode 엔드포인트가 위치한 지역의 우편 번호입니다.
Location.Region 엔드포인트가 있는 리전의 이름입니다(예: 시/도).
Metrics.custom_attribute 세분화 목적으로 사용하기 위해 애플리케이션이 엔드포인트에 대해 Amazon Pinpoint에 보고하는 사용자 지정 숫자 지표(예: 세션 수 또는 장바구니에 남아 있는 항목 수)입니다. custom_attribute를 다른 값으로 대체할 수 있습니다.

이러한 사용자 지정 값은 숫자만 사용할 수 있습니다. 숫자이므로 Amazon Pinpoint는 이 값에 대해 평균 또는 합계와 같은 산술 연산을 수행할 수 있습니다.

OptOut 사용자가 메시지 및 푸시 알림 수신을 옵트아웃했는지 여부를 나타냅니다. 허용되는 값은 ALL(사용자가 옵트아웃했고 모든 메시지 또는 푸시 알림을 수신하고 싶지 않아 함) 또는 NONE(사용자가 옵트아웃하지 않았고 모든 메시지 및 푸시 알림을 수신하고 싶어 함)입니다.
RequestId 최근 엔드포인트 업데이트 요청의 고유 식별자입니다.
User.UserAttributes.custom_attribute 사용자를 설명하는 사용자 지정 속성입니다. custom_attributeFirstName 또는 Age와 같은 다른 값으로 대체할 수 있습니다.
User.UserId 사용자의 고유 식별자입니다.

각 프로젝트의 엔드포인트 및 사용자에 대해 최대 250개의 사용자 지정 속성을 생성할 수 있습니다. 자세한 내용은 Amazon Pinpoint 개발자 안내서Amazon Pinpoint 할당량을 참조하세요.