For AI agents: a documentation index is available at /docs/llms.txt. Append .md to any page URL for markdown, or send Accept: text/markdown.
Amazon Kinesis(코호트)
Amplitude Data의 AWS Kinesis 코호트 연동은 귀하의 코호트 멤버십 업데이트를 Kinesis 스트림으로 바로 스트리밍합니다.
고려 사항
- 이 연동은 Amplitude를 통해 유료 요금제를 보유한 고객에게만 제공됩니다.
- 이 연동을 사용하려는 각 Amplitude 프로젝트에 대해 활성화해야 합니다.
- 이 연동을 설정하기 전에 Amplitude 활성화 및 행동 코호트에 대해 이해해야 합니다.
- Amplitude는 모든 코호트 업데이트 케이던스(매일, 매시간, 실시간)를 지원합니다.
- 기존의 모든 실시간 코호트 동기화 제한이 적용됩니다.
사전 조건
시작하기 전에 AWS 계정에 Kinesis 주제를 생성하고 Amplitude가 코호트 업데이트를 스트림에 게시하는 데 사용하는 IAM 역할을 생성하십시오.
연동 설정
Kinesis 설정
1. Kinesis 스트림 생성
AWS 콘솔에서 Kinesis 스트림을 생성합니다.
2. IAM 역할 생성
Amplitude가 AWS Kinesis Stream에 직접 쓸 수 있는 권한을 부여하는 IAM 역할을 생성하십시오.
- 계정 ID에 358203115967을 지정하십시오. 이것은 이벤트를 내보내는 데 사용되는 Amplitude의 AWS 계정입니다.
- 전체 정책을 할당하지 않고 역할을 완료합니다.
- 새 역할에 대한 신뢰 관계는 다음과 같아야 합니다.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::358203115967:root"
},
"Action": "sts:AssumeRole"
}
]
}
3. IAM 정책 생성
IAM 정책을 생성하여 Amplitude가 귀하의 Kinesis 스트림에 쓸 수 있는 권한을 부여하십시오.
[JSON에서 정책 생성] 옵션을 선택하고 [정책 문서] 필드에서 다음 템플릿 정책을 사용합니다.
{account-id}을(를) 계정 ID로 변경하고,{region}및{stream-name}을(를) 해당 값으로 바꿉니다. 또한{role-name}을(를) 방금 생성한 역할로 바꿉니다.json{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kinesis:PutRecord", "kinesis:PutRecords", "iam:SimulatePrincipalPolicy" ], "Resource": [ "arn:aws:kinesis:{region}:{account-id}:stream/{stream-name}", "arn:aws:iam::{account-id}:role/{role-name}" ] } ] }역할에 새 정책을 할당합니다.
- 역할을 엽니다.
- 정책 연결 옵션을 선택하고 새 정책을 선택합니다.
역할 ARN, 스트림 리전 및 스트림 이름을 기록해 두십시오. Amplitude에서 목적지를 설정하려면 이것들이 필요합니다.
Amplitude 설정
- Amplitude 데이터에서 카탈로그를 클릭하고 대상 탭을 선택합니다.
- 코호트 섹션에서 Kinesis Data Stream을 클릭합니다.
- 다른 목적지 추가를 클릭합니다.
- 이 목적지에 대한 표시 이름을 입력합니다. 이 이름은 코호트를 동기화할 때 목적지를 식별합니다.
- 생성한 스트림 이름, AWS 리전 및 역할 ARN을 입력합니다.
- 목적지를 저장합니다.
코호트 보내기
- Amplitude에서 내보낼 코호트를 엽니다.
- 동기화를 클릭하고 Kinesis Data Stream을 선택합니다.
- 생성한 목적지를 선택합니다.
- 필요한 동기화 빈도를 선택합니다.
페이로드
Kinesis로 전송되는 페이로드는 JSON 객체입니다. 예:
{
"cohort_name": "Test Cohort",
"cohort_id": "gs72ns",
"in_cohort": true,
"computed_time": "1685748245",
"message_id": "some-message-id:54",
"users": [{
"user_id": "user1@amplitude.com",
"user_properties": {
"city": "San Francisco",
"fav_animal": "Bat"
}
},
{
"user_id": "user2@amplitude.com",
"user_properties": {
"city": "Seattle",
"fav_animal": "Cat"
}
}]
}
| 필드 | 유형 | 설명 |
|---|---|---|
cohort_name | 문자열 | 오디언스의 이름입니다. |
cohort_id | 문자열 | 오디언스의 고유 ID로, Amplitude에서 해당 오디언스를 볼 때 URL에서도 확인할 수 있습니다. |
in_cohort | 부울입니다 | 이 사용자 배치가 대상에 진입하는지 아니면 탈퇴하는지를 나타냅니다. 각 메시지는 둘 다 아니라 둘 중 하나의 상태만 갖습니다. |
compute_time | 문자열 | Amplitude가 오디언스를 다시 계산하는 에포크 타임스탬프입니다. Kinesis 스트리밍은 수신 시 순서를 보장할 수 없으므로 이 값을 사용하여 순서를 재개하십시오. Amplitude는 이를 숫자가 아닌 문자열로 유지하는데, 이는 일부 언어나 플랫폼이 JSON 숫자를 부동소수점으로 해석하여 정밀도를 잃을 수 있기 때문입니다. |
message_id | 문자열 | 각 메시지의 고유 ID입니다. |
users | 목록 | 사용자 배치입니다. 각 사용자는 user_id(문자열, 사용자의 ID)과 선택적으로 user_properties (맵, 키를 속성 이름으로 사용하고 값을 속성 값으로 사용)을 포함하는 JSON 객체로 표현됩니다. |
이 내용이 도움이 되었나요?