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.
Snowflake 데이터 공유
Snowflake의 데이터 공유 제품을 통해 Amplitude 이벤트에 액세스하세요. Amplitude는 Snowflake의 데이터 공유 연동을 지원하여 고객이 Amplitude에서 자신의 이벤트 데이터에 액세스할 수 있도록 합니다. Amplitude의 연동은 원시 이벤트 테이블과 병합된 ID 테이블의 공유를 지원합니다.
직접 로드
이 문서는 Snowflake 직접 로드에 대해 설명합니다. Amplitude가 데이터를 귀하의 Snowflake 계정으로 직접 로드하는 표준 Snowflake 내보내기 방법을 사용하려면 Snowflake 내보내기로 이동하십시오.
애드온 기능
Amplitude의 Snowflake 데이터 공유 내보내기는 Amplitude 계약에 대한 유료 애드온입니다.
제한
Snowflake는 동일한 지역 및 클라우드 공급업체 내에서만 데이터 공유를 지원합니다. Amplitude의 Snowflake는 미국 서부(오레곤)에서 아마존 웹 서비스를 통해 실행됩니다. 지역 간 또는 클라우드 간 데이터 공유를 활성화하려면 Amplitude의 계정 관리자에게 문의하거나 Amplitude 서포트에 문의하십시오.
Amplitude는 각 데이터 유형(이벤트 및 병합된 사용자 테이블)에 대해 프로젝트당 하나의 Snowflake 데이터 공유 목적지를 지원합니다. 조직 전체에 걸쳐 여러 목적지를 설정할 수 있습니다. 다른 프로젝트에 있는 목적지는 동일한 Snowflake 계정에 연결할 필요가 없습니다. 예를 들어 프로덕션 프로젝트는 프로덕션 Snowflake 인스턴스에 연결하고, 스테이징 프로젝트는 스테이징 인스턴스에 연결하며, 개발 프로젝트는 샌드박스 인스턴스에 연결할 수 있습니다.
EU 지역의 Amplitude 고객에게는
Snowflake 데이터 공유가 제공되지 않습니다.
연동 설정
Amplitude 데이터를 Snowflake로 반복적으로 내보내도록 설정하려면 다음 단계를 따르십시오.
필수 사용자 권한
Amplitude에서 관리자/매니저 권한과 Snowflake에서 리소스를 활성화할 수 있는 역할이 필요합니다.
- Amplitude 데이터에서 카탈로그를 클릭하고 대상 탭을 선택합니다.
- 웨어하우스 대상 섹션에서 Snowflake 데이터 공유를 클릭합니다.
- Snowflake 데이터 공유를 통한 데이터 액세스에서 다음을 입력하십시오.
- 계정 이름: Snowflake 계정의 계정 이름입니다. 이 부분은 Snowflake URL의 첫 번째 부분으로,
https://뒤와 'snowflakecomputing.com' 앞에 위치합니다. 예를 들어 Snowflake URL이http://amplitude.snowflakecomputing.com인 경우amplitude을 입력합니다. - 조직 이름: Snowflake 조직의 이름입니다.
- 계정 이름: Snowflake 계정의 계정 이름입니다. 이 부분은 Snowflake URL의 첫 번째 부분으로,
- 이 내보내기에 포함할 데이터를 선택하세요: 5분마다 원시 이벤트, 1시간마다 병합된 ID 또는 둘 다. 이벤트의 경우 필터링 조건을 지정하여 특정 기준을 충족하는 이벤트만 내보낼 수도 있습니다.
여기서 선택한 옵션은 Amplitude가 데이터를 수집한 이후의 간격을 반영합니다.
- 다음을 클릭하고 이 Snowflake 내보내기의 이름을 입력한 후 완료를 클릭합니다.
완료되면 Amplitude는 향후 발생할 모든 이벤트를 데이터 공유와 함께 Snowflake로 전송합니다.
데이터 다시 채우기
Amplitude와 Snowflake 클러스터 대상 구간 공유를 설정한 후에는 Amplitude는 해당 시점부터의 데이터만 로드합니다. 연결 이전 기간의 기록 데이터를 다시 채우려면 공유를 설정할 때 요청에 이를 지정하십시오.
데이터 다시 채우기는 추가 비용을 발생
시킵니다. 가격은 Amplitude 계정 관리자에게 문의하십시오.
트랜스포메이션 및 사용자 지정 이벤트 정의 내보내기
Amplitude는 이벤트 데이터와 함께 Snowflake Data Share를 통해 트랜스포메이션 및 사용자 지정 이벤트 정의를 공유할 수 있습니다. 이를 통해 Amplitude에서 구축한 로직을 웨어하우스와 동기화시킬 수 있으므로 원시 이벤트의 자체 복사본에 동일한 의미론을 적용하고 데이터 드리프트를 줄일 수 있습니다.
Amplitude는 변환된 행이 아닌 정의를 공유합니다. 원시 이벤트 테이블은 그대로 유지됩니다. 각 동기화는 현재 정의의 전체 스냅샷을 기록하므로 변환된 이벤트 및 사용자 지정 이벤트를 다운스트림으로 재구축하고 시간별로 이러한 정의가 어떻게 변경되었는지에 대한 기록을 유지할 수 있습니다.
가용성
Amplitude는 이 기능을 점진적으로 도입하고 있습니다. Snowflake 데이터 공유 설정에 데이터 구성이 표시되지 않는 경우 Amplitude 계정 팀에 문의하여 활성화하십시오.
Amplitude가 내보낼 내용
- 이벤트 트랜스포메이션: 사용자 머지 및 머지된 이벤트 트랜스포메이션, 이 두 가지 트랜스포메이션 유형은 Amplitude 데이터가 UI에서 트랜스포메이션으로 표시합니다.
- 사용자 정의 이벤트: 각 이벤트를 정의하는 필터 및 그룹화를 포함한 사용자 정의 이벤트 정의입니다.
Amplitude는 활성 정의만 내보냅니다. 비활성화된 변환이나 삭제된 사용자 지정 이벤트를 내보내지 않으며, 사용자 속성, 채널 분류자 또는 파생된 속성 변환도 내보내지 않습니다.
데이터 구성 내보내기 설정
- Amplitude 데이터에서 카탈로그를 클릭하고 대상 탭을 선택합니다.
- 웨어하우스 대상 섹션에서 Snowflake 데이터 공유를 클릭합니다.
- 내보내기 설정에서 데이터 구성을 선택한 다음 이벤트 변환, 사용자 지정 이벤트 또는 둘 다를 선택합니다.
- Amplitude가 일정 선택기를 사용하여 스냅샷을 새로 고치는 빈도를 설정합니다. 대부분의 팀에게는 '매일(Daily)' 설정이 적합합니다.
- 다음을 클릭하고 내보내기에 이름을 지정한 후 완료를 클릭합니다.
Amplitude는 각 데이터 유형을 자체 읽기 전용 테이블로 공유하며 매번 실행할 때마다 새로운 스냅샷을 추가합니다. 현재 정의를 읽으려면 가장 최근의 snapshot_at를 사용하여 행을 쿼리하십시오. 과거 상태를 검사하려면 원하는 스냅샷으로 필터링하십시오snapshot_at. Amplitude는 약 1년 동안 스냅샷을 보관합니다.
Amplitude에서 데이터 공유 제거
데이터 공유를 통해 사용 가능한 Amplitude 데이터 세트를 제거하려면 Amplitude 계정 관리자에게 문의하거나 지원 요청을 제출하십시오.
Snowflake 내보내기 형식
| 스키마 이름 | 설명 |
|---|---|
DB_{ORG_ID} | 데이터베이스 |
AMPLITUDE | 스키마 |
EVENTS_{PROJECT_ID} | 이벤트 테이블 |
MERGE_IDS_{PROJECT_ID} | 사용자 테이블 병합 |
EVENT_TRANSFORMATIONS_{PROJECT_ID} | 이벤트 변환 테이블 |
CUSTOM_EVENTS_{PROJECT_ID} | 사용자 지정 이벤트 테이블 |
이벤트 테이블
이벤트 테이블 스키마
이벤트 테이블 스키마에는 다음 열이 포함됩니다.
adidamplitude_event_typeamplitude_idappcityclient_event_timeclient_upload_timecountrydatadevice_branddevice_carrierdevice_familydevice_iddevice_manufacturerdevice_modeldevice_typedmaevent_idevent_propertiesevent_timeevent_typefollowed_an_identifygroup_propertiesgroupsidfaip_addressis_attribution_eventlanguagelibrarylocation_latlocation_lngos_nameos_versionpayingplatformprocessed_timeregionsample_rateserver_upload_timesession_idstart_versionuser_iduser_propertiesuuidversion_nameamplitude_attribution_idsserver_received_timeglobal_user_propertiespartner_idplansource_iddata_type
자세한 내용은 Snowflake 내보내기 문서의 이벤트 테이블 스키마 섹션을 참조하십시오.
이벤트 테이블 클러스터링
내보낸 이벤트 테이블은 다음 클러스터링 키를 순서대로 사용합니다.
TO_DATE(EVENT_TIME)TO_DATE(SERVER_UPLOAD_TIME)EVENT_TYPEAMPLITUDE_ID
이러한 클러스터링은 시간 기반 쿼리의 쿼리 성능을 최적화합니다. 데이터 공유는 Amplitude 소유 테이블에 대한 읽기 전용 액세스를 제공하므로 클러스터링 키를 수정할 수 없습니다. 다양한 쿼리 패턴에 맞게 사용자 지정 클러스터링이 필요한 경우 전체 테이블 소유권 및 제어를 위해 대신 Snowflake 내보내기를 사용하십시오.
병합된 사용자 테이블
병합된 사용자 테이블 스키마
병합된 사용자 테이블 스키마에는 다음이 포함되어 있습니다.
amplitude_idmerge_event_timemerge_server_timemerged_amplitude_id
자세한 내용은 Snowflake 내보내기 문서의 병합된 사용자 테이블 스키마 섹션을 참조하십시오.
병합된 사용자 테이블 클러스터링
Amplitude는 병합된 ID 테이블을 DATE_TRUNC('HOUR', MERGE_SERVER_TIME)을 기준으로 클러스터링합니다. 이렇게 하면 사용자 병합이 발생한 시점을 기준으로 필터링되는 쿼리가 최적화됩니다. 데이터 공유는 Amplitude 소유 테이블에 대한 읽기 전용 액세스를 제공하므로 클러스터링 키를 수정할 수 없습니다. 사용자 지정 클러스터링을 통해 다양한 쿼리 패턴을 최적화하려면 테이블에 대한 완전한 소유권과 제어를 제공하는 Snowflake 내보내기를 대신 사용하십시오.
이벤트 변환 테이블
Amplitude는 DB_{ORG_ID}.AMPLITUDE.EVENT_TRANSFORMATIONS_{PROJECT_ID}에서 트랜스포메이션 정의를 공유합니다. 각 행은 지정된 스냅샷에서 하나의 트랜스포메이션 정의입니다.
| 칼럼 | 유형 | 설명 |
|---|---|---|
project_id | 번호 | Amplitude 프로젝트 ID입니다. |
snapshot_at | 타임스탬프 | Amplitude가 이 스냅샷을 제작한 시점. |
export_job_id | 문자열 | 이 스냅샷을 기록한 내보내기 실행의 식별자입니다. |
transformation_id | 문자열 | 안정적인 트랜스포메이션 식별자입니다. |
name | 문자열 | UI의 트랜스포메이션 표시 이름입니다. |
description | 문자열 | 자유로운 형식의 설명입니다. |
transform_type | 문자열 | 트랜스포메이션 유형(예: 병합된 이벤트 또는 병합된 이벤트에서 파생된 속성). |
merged_props | 변형 | 병합 유형 트랜스포메이션을 위해 대상 속성에서 소스 속성으로의 매핑 |
merge_priority | 변형 | 병합 해결을 위한 인코딩된 우선 순위 규칙입니다. |
merged_events | 변형 | 트랜스포메이션을 생성하기 위해 병합되는 이벤트에 대한 정의입니다. |
derived_props | 변형 | 트랜스포메이션이 생성하는 속성입니다. 이는 Amplitude의 독립형 파생 속성 기능과 동일하지 않습니다. |
derived_props_for_merge_events | 변형 | 병합 트랜스포메이션 다음 기간동안 사용되는 병합 이벤트별 파생 속성 매핑입니다. |
is_enabled | 부울 | 트랜스포메이션이 활성 상태인지 여부입니다. Amplitude는 비활성화된 변환을 적용하지 않습니다. |
created_at | 타임스탬프 | 누군가가 트랜스포메이션을 생성했을 때. |
created_by | 문자열 | 트랜스포메이션을 생성한 사용자입니다. |
last_updated_at | 타임스탬프 | 누군가가 트랜스포메이션을 마지막으로 수정한 시간입니다. |
last_updated_by | 문자열 | 트랜스포메이션을 마지막으로 수정한 사용자입니다. |
유형이 지정된 열에는 반구조화된 JSONVARIANT이 포함됩니다. Snowflake의 반정형 데이터 함수를 사용하여 이러한 데이터를 쿼리하세요.
사용자 지정 이벤트 테이블
Amplitude는 DB_{ORG_ID}.AMPLITUDE.CUSTOM_EVENTS_{PROJECT_ID}에서 사용자 지정 이벤트 정의를 공유합니다. 각 행은 지정된 스냅샷에서 하나의 사용자 지정 이벤트 정의입니다.
| 칼럼 | 유형 | 설명 |
|---|---|---|
project_id | 번호 | Amplitude 프로젝트 ID입니다. |
snapshot_at | 타임스탬프 | Amplitude가 이 스냅샷을 제작한 시점. |
export_job_id | 문자열 | 이 스냅샷을 기록한 내보내기 실행의 식별자입니다. |
custom_event_id | 문자열 | 안정적인 사용자 지정 이벤트 식별자입니다. |
name | 문자열 | 정규 사용자 지정 이벤트 이름입니다. |
display_name | 문자열 | UI에 표시되는 사용자 친화적인 이름입니다. |
description | 문자열 | 자유로운 형식의 설명입니다. |
definition | 변형 | 사용자 정의 이벤트에 대한 정의 표현식(예: 필터 및 그룹). |
category | 문자열 | 선택적 범주 또는 그룹입니다. |
classifications | 어레이 | 추가 태그 또는 분류. |
suggestion_status | 문자열 | 제안됨, 수락됨 또는 거부됨과 같은 제안 상태입니다. |
has_properties | 부울 | 사용자 지정 이벤트에 사용자 지정 속성이 정의되어 있는지 여부입니다. |
is_official | 부울 | 이 이벤트가 조직 공식 사용자 지정 이벤트인지 여부를 나타냅니다. |
is_restricted | 부울 | 액세스가 특정 사용자 또는 역할로 제한되는지 여부입니다. |
is_autotrack | 부울 | 자동 태깅이 이 사용자 지정 이벤트를 생성했는지 여부입니다. |
is_hidden | 부울 | 사용자 지정 이벤트를 표준 UI 목록에서 숨길지 여부입니다. |
created_at | 타임스탬프 | 누군가가 사용자 지정 이벤트를 생성한 시점입니다. |
created_by | 문자열 | 사용자 지정 이벤트를 생성한 사용자입니다. |
last_updated_at | 타임스탬프 | 누군가가 사용자 지정 이벤트를 마지막으로 수정한 시간입니다. |
last_updated_by | 문자열 | 사용자 지정 이벤트를 마지막으로 수정한 사용자입니다. |
이 내용이 도움이 되었나요?