Amplitude 쿼리 제품 추가 기능을 사용하면 고객이 Amplitude를 통해 관리되는 Snowflake 데이터베이스를 활용하여 원시 데이터를 쿼리할 수 있습니다. 데이터는 Snowflake에 30분마다 로드됩니다. 쿼리는 또한 Amplitude SQL라는 강력한 신규 차트 유형을 포함하여 고객이 Amplitude 플랫폼 내부에서 바로 Amplitude 데이터에 대해 맞춤 SQL을 작성할 수 있게 합니다.
참고: 이 기능은 쿼리 제품 추가 기능을 구매한 Growth 및 Enterprise 플랜 고객에게만 제공됩니다.
쿼리 시작하기
Amplitude SQL은 탐색 메뉴 오른쪽 상단의 Create Chart 드롭다운을 통해 다른 차트 유형처럼 액세스할 수 있습니다. 이러한 차트 유형을 어떻게 활용하는지 자세히 알아보려면 아래의 Amplitude SQL 섹션을 참조하세요.
또는 단말 애플리케이션이나 SQL Workbench 같은 타사 애플리케이션을 통해 Snowflake 데이터베이스에 직접 연결할 수도 있습니다. Snowflake에는 Connector for Python도 있습니다(여기). 여기에 문의하거나 성과 관리자에게 연락하여 Snowflake 자격 증명을 요청하세요.
참고: 이 기능은 쿼리 제품 추가 기능을 구매한 Growth 및 Enterprise 플랜 고객에게만 제공됩니다.
쿼리 스키마 설명
표 명명법
쿼리 패키지는 Snowflake 및 Amplitude SQL에 대해 간소화된 표 스키마를 사용합니다. Amplitude SQL은 특정 프로젝트에 대해 약식 $events
를 사용하여 참조될 수 있는 단일 표 스키마를 사용합니다. 다른 표에 액세스하려면 'Show Schema'를 클릭하여 찾을 수 있는 전체 이름을 사용할 수 있습니다.
$events
표는 병합된 사용자 매핑을 자동으로 처리하지만, 병합된 사용자 표의 스키마는 $events
의 스키마 아래에서도 사용할 수 있습니다. 이는 하나로 병합된 사용자 수를 확인하려는 경우에 유용합니다.
쿼리를 사용할 때 가장 큰 이점 중 하나는 표에 사용할 수 있는 열의 개수에 제한이 없다는 것입니다. 맞춤 사용자 속성 및 이벤트 속성은 변수로 저장되며, 개별 열로 쿼리할 수 있습니다. 맞춤 사용자 속성은 앞에 user_properties:
가 붙으며 모든 이벤트 속성은 앞에 event_properties:
가 붙습니다.
참고: 사용자 또는 이벤트 속성에 마침표나 공백이 포함된 경우, 속성 이름을 큰따옴표로 묶어야 합니다. 예를 들면 user_properties:"first name"
과 같습니다.
특정 값을 찾는 경우 속성 값을 작은따옴표로 묶어야 합니다. 예를 들면 user_properties:"plan type"='enterprise'
와 같습니다.
열 스키마
$events
표
열 | 설명 |
---|---|
$amplitude_id NUMBER(38,0) |
사용자의 원래 Amplitude ID입니다. 이 필드를 사용하여 병합된 사용자를 자동으로 처리하세요. 2234540891 |
adid VARCHAR(16777216) |
(Android) Google Play Services 광고 ID(AdID)입니다. 대개 가져온 후 지워지므로 비어 있습니다. 'AEBE52E7-03EE-455A-B3C4-E57283966239' |
amplitude_attribution_ids | 내부용으로 저장하는 광고 ID의 익명화된 해시로 고객에게는 유용하지 않습니다. 하지만 광고 ID가 전송되어 현재는 삭제되었지만 adid/idfv가 있었음을 증명한 경우에 나타납니다. |
amplitude_event_type
VARCHAR(16777216) |
Amplitude가 생성하는 이벤트 기반의 Amplitude 식별자입니다. 레거시 필드이므로 모든 쿼리에 대해 event_type이 충분해야 합니다. |
amplitude_id
NUMBER(38,0) |
고유 사용자를 계산하기 위해 사용된 내부 ID입니다.
1234567890 |
app
NUMBER(38,0) |
프로젝트 설정 페이지에서 찾을 수 있는 프로젝트 ID입니다.
123456 |
city
VARCHAR |
도시 이름입니다. 'San Francisco(샌프란시스코)' |
client_event_time
TIMESTAMP |
기기가 이벤트를 로깅했을 때의 로컬 타임스탬프(UTC)입니다. 2015-08-10T12:00:00.000000 |
client_upload_time
TIMESTAMP |
기기가 이벤트를 업로드했을 때의 로컬 타임스탬프(UTC)입니다.
2015-08-10T12:00:00.000000 |
country
VARCHAR |
국가 이름입니다.
'United States(미국)' |
data
VARIANT |
first_event 및 merged_amplitude_id와 같은 필드가 저장된 딕셔너리입니다. |
device_brand
VARCHAR(16777216) |
기기 브랜드입니다.
'Apple' |
device_carrier
VARCHAR(16777216) |
기기 통신사입니다.
'Verizon' |
device_family
VARCHAR(16777216) |
기기 제품군입니다.
'Apple iPhone' |
device_id
VARCHAR(16777216) |
기기별 식별자입니다.
'C8F9E604-F01A-4BD9-95C6-8E5357DF265D' |
device_manufacturer
VARCHAR(16777216) |
기기 제조업체입니다.
'Apple' |
device_model
VARCHAR(16777216) |
기기 모델입니다.
'iPad Mini' |
device_type
VARCHAR(16777216) |
기기 유형입니다.
'Apple iPhone 5s' |
dma VARCHAR(16777216) |
DMA(지정 시장 지역)입니다.
'San Francisco-Oakland-San Jose, CA(샌프란시스코-오클랜드-산호세, CA)' |
event_id
NUMBER(38,0) |
이벤트를 구분하는 카운터입니다.
1 |
event_time
TIMESTAMP |
server_received_time과 client_upload_time의 차이로 조정된 client_event_time인 Amplitude 타임스탬프(UTC)입니다. 구체적으로는 다음과 같습니다. event_time = client_event_time + (server_received_time - client_upload_time) 2015-08-10T12:00:00.000000 이 타임스탬프를 사용하여 Amplitude 차트에서 이벤트를 구성합니다. 참고: server_received_time 및 client_upload_time의 차이가 60초 미만인 경우 event_time은 조정되지 않으며 client_event_time과 동일합니다. |
event_type
VARCHAR(16777216) |
할당된 이벤트 유형입니다.
'Add Friend(친구 추가)' |
followed_an_identify
BOOLEAN |
현재 SDK 이벤트와 과거 SDK 이벤트 사이에 |
groups
VARIANT |
그룹 유형입니다. 자세히 알아보려면 계정 문서를 참조하세요. |
idfa
VARCHAR(16777216) |
(iOS) 광고 식별자입니다. 대개 가져온 후 지워지므로 비어 있습니다.
'AEBE52E7-03EE-455A-B3C4-E57283966239' |
ip_address
VARCHAR(16777216) |
IP 주소입니다.
'123.11.111.11' |
location_lat
FLOAT |
위도입니다.
12.3456789 |
location_lng
FLOAT |
경도입니다.
-123.4567890 |
os_name
VARCHAR(16777216) |
OS 이름입니다.
'ios' |
os_version
VARCHAR(16777216) |
OS 버전입니다.
'1.0' |
paying
VARCHAR |
사용자가 수익을 로깅한 경우 참이고, 그렇지 않은 경우 '(none)'입니다. 참고: 속성 값은 식별 API를 통해 수정할 수 있습니다. true |
region
VARCHAR |
지역 이름입니다.
'California(캘리포니아)' |
server_upload_time TIMESTAMP |
Amplitude 서버가 이벤트를 수신했을 때의 Amplitude 타임스탬프(UTC)입니다. 2015-08-10T12:00:00.000000 |
session_id
NUMBER(38,0) |
세션 시작 시간으로, 특정 시점 이후의 밀리초로 표시됩니다.
1396381378123 |
start_version
VARCHAR |
사용자가 처음으로 추적된 앱 버전입니다.
'1.0.0' |
user_creation_time
TIMESTAMP |
사용자의 첫 이벤트 Event_time(UTC)입니다. 2015-08-10T12:00:00.000000 |
user_id VARCHAR(16777216) |
읽을 수 있는 ID로, 본인이 지정합니다.
“datamonster@gmail.com" |
uuid
VARCHAR(16777216) |
행당 고유 식별자(전송된 이벤트)입니다. bf0b9b2a-304d-11e6-934f-22000b56058f |
version_name
VARCHAR(16777216) |
앱 버전입니다.
'1.0.0' |
병합된 사용자 표
Amplitude가 고유 사용자를 어떻게 추적하는지 자세히 알아보려면 여기를 참조하세요.
열 | 설명 |
---|---|
amplitude_id NUMBER(38,0) |
사용자의 원래 Amplitude ID에 병합되는 Amplitude ID입니다. |
merge_event_time TIMESTAMP |
사용자의 새 Amplitude ID가 원래 Amplitude ID와 연결된 이벤트 시간입니다. |
merge_server_time TIMESTAMP |
사용자의 새 Amplitude ID가 원래 Amplitude ID와 연결된 이벤트 서버 시간입니다. |
merged_amplitude_id NUMBER(38,0) |
사용자가 처음 생성됐을 때 원래 할당된 Amplitude ID입니다. |
Amplitude SQL 차트 유형
Amplitude SQL은 기본 Amplitude 경험에 통합되어 있으며 탐색 표시줄의 오른쪽 상단에 있는 'Create Chart' 드롭다운에서 찾을 수 있습니다. 분석은 Amplitude의 다른 차트 콘텐츠처럼 저장, 공유되고 대시보드에 표시될 수 있습니다. 이 차트 유형을 사용하면 여러분의 Amplitude 데이터에 대해 맞춤 SQL 쿼리를 작성할 수 있습니다.
참고: 이 기능은 현재 포트폴리오 보기에 대한 데이터 대기를 지원하지 않습니다.
차트 설정하기
기본적으로는 지난 30일 동안 수행된 총 이벤트, 고유 사용자, 날짜를 반환하는 간단한 SQL 쿼리가 표시됩니다. SQL 구문이 강조 표시되므로 SQL 명령어를 쿼리의 나머지 부분과 구분할 수 있습니다.
또한 Amplitude SQL은 표 내 열의 자동 완성을 지원합니다. 내용을 입력하면 쿼리 편집기가 빠른 입력에 도움이 되는 열을 추천합니다.
특수 필드
Amplitude SQL은 Amplitude 차트에 바로 구축되기 때문에, 날짜 선택 차트 저장 경험과 같은 친숙한 Amplitude 사용자 인터페이스를 많이 활용할 수 있습니다. 효과적인 바로 가기에 Amplitude SQL의 특수 필드를 활용해 보세요.
$date
: 이 바로 가기를 사용하면 날짜 선택기에서 선택한 시간 범위가 자동으로 적용되고 시간이 지나면서 쿼리가 업데이트됩니다. 이벤트의 이벤트 시간을 나타내며 프로젝트가 설정된 시간대를 따릅니다. 반면 Amplitude SQL은 데이터를 UTC로 반환합니다.- 참고:
$events
와 함께 사용해야 합니다.
- 참고:
$events
: 현재 프로젝트의 표를 나타내는 데 사용되는 약칭입니다. 이 표를 사용할 때는 병합된 사용자가 자동으로 처리됩니다.- 참고:
$date
와 함께 사용해야 합니다.
- 참고:
$amplitude_id
: 사용자의 원래 Amplitude ID입니다. 이 필드를 사용하여 병합된 사용자를 자동으로 처리하세요.
쿼리 결과
쿼리를 실행하려면 맨 오른쪽에 있는 'Compute'를 클릭합니다. 쿼리가 모두 실행되면 결과가 데이터 표 아래쪽에 표시됩니다. 데이터 표 및 CSV 내보내기의 결과는 1,000개 행으로 제한됩니다. 또한 반환된 데이터의 시각화는 표 아래에 차트로 표시됩니다. 이때 시계열만 표시될 수 있습니다.
시각화를 맞춤 설정하려면 쿼리 편집기 아래에서 여러 옵션을 사용할 수 있습니다. 시각화에 사용할 수 있는 옵션은 SQL SELECT
문에서 반환한 필드입니다. 예를 들어 위 쿼리에서는 필드 3개('DATE', 'UNIQUES', 'TOTALS')를 시각화할 수 있습니다.
- X-axis column: X축에 표시되는 항목을 선택합니다. 현재는 시계열만 지원됩니다.
- Metric column: SQL
SELECT
문에서 반환된 필드 중 어떤 항목이 Y축에 표시되는지 선택합니다.
그룹화 기준 적용하기
열을 기준으로 차트를 그룹화하려면 'Label columns' 필드에 열 이름을 입력합니다. 그런 다음 'Compute' 버튼을 클릭합니다.
쿼리 공유 및 저장하기
다른 Amplitude 차트처럼 오른쪽 상단의 'EXPORT' 아이콘을 사용하여 결과를 PNG, PDF 또는 CSV 파일로 내보낼 수 있습니다. 또한 분석을 저장하고 팀과 공유하거나, 여러분이 생성한 시각화를 Amplitude 대시보드에 추가할 수도 있습니다.
Snowflake ETL
쿼리 추가 기능과 더불어, 유료 고객에게는 Snowflake 계정으로 Amplitude 데이터를 내보낼 수 있는 셀프 서비스 UI에 대한 액세스 권한이 부여됩니다. 이는 모든 유료 Amplitude 플랜에 포함되어 있으며 모든 지역에서 지원됩니다. 이 기능을 사용하면 Amplitude 엔지니어링의 지원 없이 데이터 웨어하우스의 소유권과 개인정보를 유지하고 유지 관리, 관리 및 사용자 지정 작업을 직접 수행할 수 있습니다.
Amplitude의 이전 데이터 공유 서비스인 Snowflake ETL은 지원 중단 프로세스를 진행하고 있습니다. 현재 Snowflake ETL을 사용하는 경우 성과 관리자에게 연락하여 셀프 서비스 내보내기로 마이그레이션하기 위한 가이드를 요청하세요.
아래 표에서는 셀프 서비스 Snowflake 내보내기의 이점을 간략하게 안내합니다.
기능 |
고객이 소유하고 관리하는 Snowflake 인스턴스로 데이터 내보내기 데이터 및 액세스에 대한 완전한 제어 및 편집 권한 |
계정 |
Snowflake 이용 및 데이터 웨어하우스 필요 |
추천 대상 |
Snowflake를 주요 데이터 웨어하우스로 사용하려고 하며 다른 데이터 세트에 대한 쓰기 기능과 편집 및 액세스 제어를 원하는 고객 |