S3 버킷의 데이터 락커 V2.0 로데이터 사용하기

요약: 데이터 락커는 AWS S3 버킷에 로데이터를 거의 실시간으로 저장합니다. 데이터는 리포트 주제 별 폴더에 저장됩니다. 데이터 크기는 무제한입니다. 테이터 보관 기간은 30일 입니다. 

Data Locker

데이터 락커 주요 기능

  • : 여러 앱을 지원합니다.
  • 간단성: 데이터 저장 필요 사항이 관리되는 Amazon S3 버킷에 데이터가 저장됩니다.
  • 신뢰성: 데이터가 AWS에 저장되어 데이터 영속성을 보장합니다.
  • 유연성: 필드와 인앱 이벤트 별로 리포트에 포함할 데이터를 선택할 수 있습니다.
  • 세분성: 데이터는 리포트 유형, 일, 시간으로 구분됩니다.
  • 접근성: 필요할 때마다 데이터를 가져가십시오(pull).
  • 데이터 최신성: 리포트 유형에 따라 6시간 지연 또는 일 별.
카테고리 리포트 유형 (주제) 설명 데이터 최신성* 오가닉* 논오가닉*
유저 유입 클릭 클릭  6시간 지연 - ✓+
리타겟팅 clicks_retargeting 리타겟팅 캠페인에서 발생한 클릭  6시간 지연 - ✓+
유저 유입 임프레션 임프레션 6시간 지연 - ✓+
리타겟팅 impressions_retargeting 리타겟팅 캠페인에서 발생한 노출 6시간 지연 - ✓+
유저 유입 설치 인스톨  6시간 지연
유저 유입 inapps 인앱 이벤트  6시간 지연
유저 유입 attributed_ad_revenue 어트리뷰션된 광고 수익 일별 -
유저 유입 organic_ad_revenue 오가닉 광고 수익 일별 -
리타겟팅 retargeting_ad_revenue 리타겟팅 광고 수익 일별 -
리타겟팅 conversions_retargeting 리인게이지먼트와 리어트리뷰션을 포함한 리타겟팅 6시간 지연 -
리타겟팅 inapps_retargeting 리어트리뷰션과 리인게이지먼트에서의 인앱 이벤트 6시간 지연 -
유저 유입 세션(Sessions) 앱 세션 6시간 지연 ✓+ ✓+
유저 유입 앱 삭제 논오가닉 앱 삭제  6시간 지연 -
유저 유입 organic_uninstalls 오가닉 앱 삭제 6시간 지연 ✓+ -
Protect360 blocked_installs Blocked Installs 6시간 지연 -
Protect360 blocked_inapps 차단된 인앱이벤트 6시간 지연 -
Protect360 blocked_clicks 차단된 클릭 일별 6시간 지연 -
Protect360 post_attribution_installs 포스트 어트리뷰션 인스톨 일별 -
PBA web_events 유저 중심 어트리뷰션(PBA) 웹 이벤트 일별 ✓+ ✓+
PBA web_touch_points 웹 터치 포인트 일별 ✓+ ✓+
PBA web_to_app 웹 to 앱 일별 ✓+ ✓+
PBA conversion-paths 전환 경로 일별 ✓+ ✓+

* 축약형을 위한 열쇠어

✓+ 데이터 락커에서만 가능한 리포트

6시간 지연: 데이터는 도착 시간 폴더에 구분됩니다. 이 시간은 이벤트가 데이터 락커에 저장된 시간입니다. 일부 데이터 락커 폴더는 실시간 이벤트의 실제 이벤트 시간 이후 약 6시간 이후에 기록됩니다. 0부터 23까지 하루의 각 시간 별로 24 개의 폴더가 있습니다. 그리고 늦게 도착한 데이터에 대한 추가 폴더가 있습니다.

일별: 일별 데이터 최신성 비율을 가진 리포트는 h=23 폴더에 기록됩니다. 이 리포트는 선행하는 날의 h=23에 대해 보통 06:00 UTC에 사용 가능합니다. 

데이터 락커에서 사용 가능한 리포트 유형

데이터 세분화

DataLockerFolders_us-en.png

버킷의 데이터는 다음과 같이 폴더로 구분되어 있습니다.

  • t=topic (주제)
  • dt=date (날짜)
  • h=hour (시간)

이것은 각 리포트 유형이 지정된 날짜의 데이터가 도착 시간에 따라 별도의 폴더에 구분되는 것을 뜻하며, 실제 이벤트 시간에 따른 구분은 아닙니다. 예를 들어, ../t=installs/dt=2019-01-17/ 는 25 개의 폴더를 포함합니다. 

폴더 구조 및 시간 별 구분이 어떻게 이루어지는지 알아보려면, 폴더 구조와 형식 항목을 참조하십시오.

데이터 락커 구현하기

데이터 락커 설정

선행 조건: 계정 어드민이 데이터 락커를 설정해야 합니다. 팀 멤버는 해당 설정을 볼 수만 있습니다. 

AppsFlyerAdmin_us-en.png 데이터 락커를 설정하려면

  1. 앱스플라이어에서 연동 > 데이터 락커로 이동합니다. 
  2. 하나 이상의 앱 또는 모든 앱(all apps)을 선택합니다.  향후 추가될 앱도 자동으로 포함시키려면 모두 선택 (all) 을 선택합니다.
  3. Apply 를 클릭합니다. 
  4. [선택적] Media Sources (기본 값=All. 향후 추가될 미디어 소스도 자동으로 포함하는 것을 의미합니다.) : 리포트에 포함할 하나 이상의 미디어 소스 를 선택합니다. 
  5. Apply 를 클릭합니다. 
  6. 하나 이상의 리포트 유형을 선택합니다.
  7. [선택적] In-app events (기본 값=All. 향후 추가될 인앱 이벤트도 자동으로 포함하는 것을 의미합니다.) : 포함할 인앱 이벤트를 선택합니다. 만약 100개 이상의 인앱 이벤트 유형을 갖고 있다면, 검색을 통해 찾을 수 없습니다. 이름을 정확하게 입력하여 인앱 이벤트 유형을 선택하십시오.
  8. Apply 를 클릭합니다. 
  9. [선택적] Fields (기본 값=All): 리포트에 포함할 필드를 선택합니다. 참고: 앱스플라이어는 가끔 필드를 추가할 수 있으므로, 데이터 가져오기 절차(data import process)를 계획할 때, 이를 고려하십시오.
  10. [선택적] Recipients : 리포트가 준비되었을 때 알림을 수신할 이메일 목록입니다. 한 명 이상의 수신인을 추가하려면, 쉼표(,)를 사용하여 이메일을 구별합니다. 예를 들어, user1@example.com, user2@example.com.
  11. Create Bucket 을 클릭합니다.

버킷 인증 정보

설정이 저장되면, 전용 AWS 버킷이 생성됩니다. 버킷 세부 사항은 화면 우측 상단 코너에 표시됩니다. Bucket Name, Home Folder 와 데이터 액세스를 위한 인증 정보가 포함됩니다.

data-credentials.png

  • 인증 정보를 통해 버킷에 액세스할 수 있습니다.
  • 버킷에 대한 액세스는 감사됩니다. 
  • 버킷 소유주(bucket owner)는 앱스플라이어 입니다. 앱스플라이어는 읽기/쓰기 권한을 갖습니다.
  • 앱 소유주는 읽기 권한을 가집니다.

데이터 가용성

  • 데이터는 6시간 지연 후, 시간 별로 업데이트 됩니다.
  • 각 파일은 선택된 앱을 포함합니다. 
  • 보관 기간: 파일과 폴더는 30일 동안 사용할 수 있습니다. 30일이 지나면 데이터가 삭제됩니다.

폴더 구조 및 형식

  • 폴더 구조는 다음과 같습니다: af-ext-reports/<Home Folder>/data-locker-hourly/t=<event-type>/dt=<date YYYY-MM-dd>/h=<Hour h>
  • Home Folder는 (이전 섹션의 설정 안내 스크린샷의) Credentials 창에 표시되는 Home Folder 입니다. 
  • 예를 들어, 날짜 2016-08-12 의 관련 리포트는 s3://af-ext-reports/12345678911-acc-1abc234/data-locker-hourly/t=installs/dt=2016-08-12/ 아래에 표시됩니다.
  • 폴더 dt=yyyy-mm-dd 는 25개의 시간 별 폴더로 나누어집니다. 이 폴더들은, 이벤트 실제 시간이 아닌, 이벤트의 도착 시간을 표시합니다. 이 폴더들은 h=0, h=1, h=2 와 같은 방식으로 h=23까지 이름 붙여집니다. 그리고 h=late가 있습니다. 예를 들어, 폴더 h=0은 00:00과 01:00 사이에 도착한 이벤트를 포함합니다. 유사하게, 폴더 h=20은 20:00과 21:00 사이에 도착한 이벤트를 포함합니다.
  • 너무 큰 파일을 피하기 위해, 데이터는 각 폴더에서 여러 파일로 분할될 수 있습니다. 내보내는(export) 데이터 유형에 따라, 폴더는 최대 1000 파일을 포함할 수 있습니다. 이 숫자는 공지없이 변경될 수 있습니다. 파일은 part-00000, part-00001, part-00002 등등으로 이름 붙여집니다.

  • 각 폴더에서, 기록될 마지막 파일은 항상 _SUCCESS 라고 이름 붙여진 빈 파일입니다.이 파일은 폴더에 추가 데이터가 기록되지 않음을 표시하는 플래그입니다. 따라서, _SUCCESS 파일이 존재하는지 확인하기 전에 폴더의 데이터를 읽지 마십시오.참고: 폴더에 기록될 데이터가 없는 경우에도 _SUCCESS 플래그는 기록됩니다. 

Late 폴더

Late 폴더는 이전 날짜의 이벤트이지만, 0000 UTC +0 (자정)을 지나고 최대 02:00 UTC +0까지 도착한 이벤트를 포함합니다. 이전 섹션에서 설명한 것 처럼, 이 폴더 또한 _SUCCESS 플래그를 포함합니다. 자동화 프로세스는 하루의 다른 모든 폴더에 대해 수행한 것처럼 Late 폴더의 데이터를 찾아야 합니다.

 

어떤 이벤트가 1월 21일 오전 1시 15분에 앱스플라이어에 의해 수신됩니다. 이 이벤트는 1월 20일 18:45의 타임스탬프를 갖고 있습니다. 이 이벤트는 늦게 도착했기 때문에, 해당 이벤트는 /dt=2019-20-01/ h=late 폴더 내부에 배치됩니다.

파일 구조 및 형식

  • 데이터 락커 파일은 로데이터 리포트 V5에 기반합니다. (로데이터 리포트 V5 참고)
  • 실제 데이터 파일은 CSV 형식이지만 파일 확장자는 없습니다.
  • 리포트 파일은 .gz 형식으로 압축됩니다. (다운로드 과정을 효율적으로 하기 위해)
  • 각 파일에는 머릿글(header) 행이 있습니다.
  • 내용에 콤마(,)를 가진 값은 큰따옴표 `"` 사이에 포함합니다. 예, `"iPhone6,1"`.

데이터 락커에서 데이터 가져오기

앱스플라이어는 AWS principle (아마존 용어로 ARN)을 생성하고, 해당 원칙에 따라 인증 정보(credential)를 생성합니다. 그런 다음, 해당 원칙이 버킷에서 파일을 둘러보고 가져올 수 있도록, 정책(policy)이 설정됩니다.

AWS command-line 툴과 대부분의 FTP 클라이언트를 사용하여 버킷에 액세스 할 수 있습니다. 이런 툴을 사용하려면, 인증 정보(Credentials) 섹션에서 인증 정보(AWS Access Key와 AWS Secret)를 가져옵니다.

여러가지 중, 다음 툴을 사용하여 데이터에 액세스 할 수 있습니다.

AWS CLI

시작하기 전

  • 컴퓨터에 AWS CLI를 설치합니다.
  • 앱스플라이어에서 데이터 락커로 이동하여, 인증 정보 창에 포함된 정보를 가져옵니다. CLI 과정을 수행하려면 이 정보가 필요합니다. 

AWS CLI를 사용하려면:

  1. 터미널을 엽니다. 윈도우에서 수행하려면, <Windows>+<R>, 확인 을 클릭합니다.
    명령행 창이 열립니다.
  2. aws configure 를 입력합니다.
  3. 인증 정보 창에 표시된 대로, AWS Access Key를 입력합니다.
  4. 인증 정보 창에 표시된 대로, AWS Secret Key를 입력합니다.
  5. eu-west-1 를 입력합니다.
  6. 엔터를 누릅니다.

필요에 따라, 다음 CLI 명령을 사용합니다.

다음 명령어에서는 {home-folder} 값을 찾을 수 있습니다.

버킷의 폴더를 나열하려면:

aws s3 ls s3://af-ext-reports/{home-folder}/data-locker-hourly/

파일 및 폴더 나열하기

데이터 락커 버킷에는 세 가지 유형의 폴더가 있습니다.

  • 리포트 유형 t=
  • 날짜 dt=
  • 시간 h=

특정 리포트 유형의 모든 보고서를 나열하려면:

aws s3 ls s3://af-ext-reports/{home-folder}/data-locker-hourly/t=installs/

특정 날짜의 특정 리포트 유형의 모든 보고서를 나열하려면:

aws s3 ls s3://af-ext-reports/{home-folder}/data-locker-hourly/t=installs/dt=2019-01-17

특정 날짜, 특정 시간의 특정 리포트 유형의 모든 보고서를 나열하려면:

aws s3 ls s3://af-ext-reports/{home-folder}/data-locker-hourly/t=installs/dt=2019-01-17/h=23

Cyber Duck

시작하기 전

  • Cyber Duck 클라이언트를 설치합니다.
  • 앱스플라이어에서 데이터 락커로 이동하여, 인증 정보 창에 포함된 정보를 가져옵니다. Cyber Duck을 설정하려면, 이 정보가 필요합니다.

Cyber Duck을 설정하려면:

  1. Cyber Duck에서 Action을 클릭합니다.
  2. New Bookmark 를 선택합니다. 창이 열립니다.
  3. 첫 번째 필드에서 (아래 스크린샷에서 [1] 로 표시됨) Amazon S3 을 선택합니다.

    DataDuckSmall2.png

  4. 다음과 같이 필드를 완성합니다.
    • Nickname: 자유 텍스트
    • Server: s3.amazonaws.com
    • Access Key ID: 앱스플라이어 인증 정보 창에 표시된 AWS Access Key를 복사합니다.
    • Secret Access Key: 앱스플라이어 인증 정보 창에 표시된 Bucket Secret key를 복사합니다.
    • Path: {Bucket Name}/{Home Folder} 예시: af-ext-reports/1234-abc-ffffffff
  5. 창의 우측 상단 모서리의 X를 사용하여, 창을 닫습니다.
  6. 연결을 선택합니다.
    데이터 디렉토리가 표시됩니다.

Amazon S3 browser

시작하기 전

  • Amazon S3 Browser를 설치합니다.
  • 앱스플라이어에서 데이터 락커로 이동하여, 인증 정보 창에 포함된 정보를 가져옵니다. CLI 과정을 수행하려면 이 정보가 필요합니다. 

Amazon S3 Browser를 설정하려면:

  1. S3 버킷에서 Accounts > Add New Account 를 클릭합니다.
    Add New Account 창이 열립니다.

    mceclip0.png

  2. 다음과 같이 필드를 완성합니다.
    • Account Name: 자유 텍스트. 
    • Access Key ID: 앱스플라이어 인증 정보 창에 표시된 AWS Access Key를 복사합니다.
    • Secret Access Key: 앱스플라이어 인증 정보 창에 표시된 Bucket Secret key를 복사합니다.
    • Encrypt Access Keys with a password 를 선택하고, 비밀 번호를 입력합니다. 이 비밀 번호를 기록해두십시오.
    • Use secure transfer 를 선택합니다.
  3. Save changes 를 클릭합니다.
  4.  Buckets > Add External Bucket 을 클릭합니다.
    Add External Bucket 창이 열립니다.

    mceclip2.png

  5. Bucket name 을 입력합니다.버킷 이름은 다음 형식입니다: {Bucket Name}/{Home Folder}. bucket name과 home folder에 필요한 값은 앱스플라이어 인증 정보 창에 표시됩니다.
  6. Add External bucket 을 클릭합니다.
    버킷은 생성되고, 창의 왼쪽 패널에 표시됩니다.
    이제 데이터 락커 파일에 액세스할 수 있습니다. 

리포트 형식 및 폴더

데이터 소스로서 리포트 사용하기

리포트의 데이터를 사용하여 자사 데이터베이스에 추가할 수 있습니다. 데이터를 추출하여 데이터베이스에 추가하려면 리포트 형식을 알아야 합니다. 데이터 락커 리포트는 로데이터 리포트에 기반합니다. 그러나 최종 리포트 형식은 포함하도록 선택한 필드에 따라 달라집니다.

리포트 형식

데이터 락커에서 사용할 수 있는 필드는 데이터 필드 사전 V5.0 에 나열되어 있습니다.

 

리포트는 캠페인 최적화와 리타겟팅에 사용할 수 있는 데이터를 포함하고 있습니다.

시간별 리포트

데이터 락커는 데이터를 시간 별 폴더로 구분합니다. 시간 별 폴더는 처리된 시간을 뜻하며, 이벤트가 발생한 시간이 아닙니다. 데이터는 데이터 락커에 6시간의 처리 시간 이내에 기록됩니다. 

 

앱스플라이어는 액티비티 데이터를 2019년 1월 17일 14:00에서 15:00 사이에 수신했습니다. 15:00를 조금 지나면 앱스플라이어가 데이터를 처리하기 시작합니다. 프로세싱으로 인해, 데이터는 데이터 락커에 즉시 기록되지 않습니다. 그러므로 폴더 /t=installs/dt=2019-17-01/h=14의 데이터는 2019년 1월 17일 15:00에는 이용 가능하지 않으나, 6시간 후에는 가능합니다.

시간 별 폴더 생성

혹시 특정 시간에 데이터가 없는 경우, 데이터 락커는 해당 시간에 대해 폴더를 생성합니다. 이는 해당 시간에 데이터가 없었음을 표시하기 위한 것입니다. 해당 폴더는 앱스플라이어가 이 폴더에 대한 기록을 완료했다는 것을 뜻하는 `_SUCCESS` 파일을 포함할 것입니다. 자동화 프로세스를 디자인할 때 이 점을 고려해야합니다. 즉, 자동 프로세스가 비어있는 시간 폴더를 처리할 수 있도록 데이터 확보 프로세스를 디자인 하십시오.

시간대와 통화

앱 별 시간대와 통화 설정은 데이터 락커의 데이터에 영향을 주지 않습니다.

시간대: 데이터 락커 리포트는 UTC 시간대를 사용합니다.

통화: event_revenue_usd 필드는 미국 달러화(USD) 기준 입니다. 

특성과 제한 사항

특성
항목 참고 
광고 네트워크 애드 네트워크에서는 사용할 수 없습니다. 
에이전시 에이전시에서는 사용할 수 없습니다.
앱 별 시간대 지원 안됨.
앱 별 통화  지원 안됨.
사이즈 제한 해당 사항 없음.
데이터 최신성 파일은 이벤트 시간으로부터 6시간 지연되어 매 시간 업데이트 됩니다.
과거 데이터 지원 안됨. 이벤트 데이터는 데이터 락커가 설정된 이후에 전송됩니다. 과거 데이터가 필요한 경우, 풀(pull) API를 사용하십시오. 
팀 멤버의 접근 권한 팀 멤버는 데이터 락커를 설정할 수 없습니다. 
단일 앱/여러 앱 여러 앱 지원. 데이터 락커는 계정 수준에서 적용됩니다.

문제 해결

  • 증상: AWS CLI를 사용하여 데이터를 확보할 수 없습니다.
  • 오류 메시지An error occurred (AccessDenied) when calling the ListObjectsV2 operation: Access Denied
  • 원인: 사용된 AWS 인증 정보가 앱스플라이어 버킷에 대한 올바른 인증 정보가 아닙니다. 사용자 머신에 여러 개의 또는 잘못된 인증 정보를 갖고 있을 때 발생할 수 있습니다.
  • 해결 방안:
    1. 버킷에 액세스 하기 위해, CLI가 아닌 Cyber Duck 같은 다른 방법을 사용합니다. 이렇게 하여, 사용 중인 인증 정보가 잘 작동하는지 확인합니다. Cyber Duck을 사용하여 연결할 수 있다면, 이것은 인증 정보 캐시에 문제가 있음을 나타냅니다. 
    2. AWS 인증 정보 캐시를 새로 고침합니다.
      AWS 스크린샷mceclip0.png 
도움이 되었습니까?