Data Locker—クラウドレポジトリ内のローデータ

概要:Data Lockerは、ほぼリアルタイム(6時間遅れ)でローデータをクラウドレポジトリに書き込みます。データは、AppsFlyerのAWSバケットまたは広告主が所有する独自のAWSバケットに書き込むことができます。

6133_Data_Locker_-_your_bucket.png

Data Locker

Data Lockerの主な機能

  • アプリ:追加された複数のアプリを自動的にサポートします
  • 信頼性:データは自身で選択したクラウドレポジトリ(バケット)に保存されます
  • 柔軟性:含めるデータを選択できます
  • 細分性 :データはレポートの種類、日別、時間別に分割されます
  • アクセシビリティ:必要なときにデータを抽出できます
  • データ更新頻度:レポートの種類に応じて、毎日または使用時間に対して6時間の遅延があります。ラグタイムは、アプリ固有のタイムゾーンに関係なく同じ(6時間)です
  • バケットの所有権
    • AppsFlyerが所有するAWSバケットを介してデータを取得します。データ保持期間:30日間。
    • お客様が所有するリポジトリ内のクラウドサービスプロバイダー経由でデータを取得します。データ保持期間:自身の設定に基づく。

Data Lockerで利用できるレポート

主要なアトリビューションレポート:ユーザー獲得とリターゲティング
カテゴリ レポートの種類 (topic) データの更新頻度* オーガニック/非オーガニック Data Locker固有
ユーザー獲得 クリック 6時間遅れ N/A
リターゲティング クリック 6時間遅れ N/A
ユーザー獲得 インプレッション 6時間遅れ N/A
リターゲティング インプレッション 6時間遅れ N/A
ユーザー獲得 インストール 6時間遅れ どちらも  
ユーザー獲得 アプリ内イベント  6時間遅れ どちらも  
ユーザー獲得 非オーガニックインストールに紐づくアプリ内広告収入 毎日+2 非オーガニック  
ユーザー獲得 オーガニックインストールに紐づくアプリ内広告収入 毎日+2 オーガニック  
リターゲティング リターゲティング広告に紐づくアプリ内広告収入 毎日+2 非オーガニック  
リターゲティング コンバージョン 6時間遅れ 非オーガニック  
リターゲティング In-app events 6時間遅れ 非オーガニック  
リターゲティング Sessions 6時間遅れ どちらも
ユーザー獲得 Sessions 6時間遅れ どちらも
ユーザー獲得 アンインストール 毎日 非オーガニック  
ユーザー獲得 オーガニックアンインストール 毎日 オーガニック  
リインストール リインストール 6時間遅れ 非オーガニック  
リインストール オーガニック再インストール 6時間遅れ オーガニック  
Protect360
レポートの種類 (topic) データの更新頻度*
ブロック済みインストール 6時間遅れ
ブロックされたアプリ内イベント 6時間遅れ
ブロック済みクリック 6時間遅れ
[FF*] [AG*] アトリビューション後のインストール 毎日
SKAdNetwork
データ更新頻度:毎日 
レポートの種類 (topic)
[FF*] ポストバック
[FF*] インストール
[FF*] 再ダウンロード
[FF*] アプリ内イベント
ピープルベースドアトリビューション
データ更新頻度:毎日
レポートの種類 (topic)
[FF*] Webサイト訪問
[FF*] webサイトイベント
[FF*] Webサイトアシストインストール
[FF*] コンバージョン経路
略語の意味

* 略語の意味

[FF] レポート項目はAppsflyerによって固定されています。これらは、レポートに含めるように選択した項目とは関係ありません。

[AG] 代理店の運用媒体データはサポートされていません。

6時間遅れ:データは、到着時間別のフォルダに振り分けられます。これは、イベントがData Lockerに送信された時間です。一部のデータロッカーフォルダは、リアルタイムイベントが発生した約6時間後に書き込まれます。0から23までの1時間ごとに24個のフォルダーと、遅れて到着するデータ用の追加フォルダーがあります。ラグタイムは、アプリ固有のタイムゾーンに関係なく同じです。

毎日:毎日データが更新されるレポートは、h=23 フォルダに書き込まれます。これらのレポートは、通常翌日の h=23フォルダ内にて10:00-12:00 UTC までに利用できるようになります。例えば、月曜日に生成されたデータのレポ―トは、月曜日の H=23 フォルダにあります。データは、火曜日の10:00 UTC 以降に利用できるようになります。

毎日+2:広告収益データは、2日後に利用できるようになります。つまり、月曜日に生成されたデータは、水曜日の 06:00 UTC以降に、月曜日の H=23 フォルダにて利用可能になります。

Data Lockerのアーキテクチャ

データレポジトリ(バケット)内では、データはレポートタイプ別に整理されます。特定のレポートは、次の図に示すとおり書き込まれるデータと時間に分けられたフォルダに保存されます。

DataLockerFileStructure.png

Data Lockerフォルダの構成:<cloud service repository>/data-locker-hourly/t=<report type>/dt=<date YYYY-MM-DD>/h=<Hour h 詳細は以下をご確認ください:

  • <クラウドサービスレポジトリ> は、あたなの <bucket> と <folder> の名前です。 
    • AppsFlyerのAWSレポジトリでは、バケットは ext-reports で、フォルダはアカウントごとに設定され、設定ページに表示されます。
    • 独自のAWSバケットを使用する場合は、レポジトリは af-datalocker-(フォルダ名) です。
  • <t=report type> フォルダを含むレポートタイプ
  • <dt= folder date> yyyy-mm-dd 形式でのデータが書き込まれた日付
  • <h=hours> データが書き込まれた時間。最大25個の時間別フォルダに分割されます。これらのフォルダーは、イベント自体のイベント時間ではなく、イベントの到着時間を表します。フォルダーの名前は h=0、h=1、h=2などで、最高で h=23 までと、h=late があります。例えば、フォルダー「h=0」には 00:00 から 01:00 の間に到着するイベントが含まれ、同様にフォルダー「h=20」には 20:00 から 21:00 の間に到着するイベントが含まれます。日次で書き込まれるレポートの場合は、 h=23 フォルダのみが存在します。
  • 各フォルダにて:

    • データは、大きなファイルを避けるため、複数のファイルに分割されます。ファイル名は:part-00000、part-00001、part-00002、などです。最大1000個のファイルを使用できます。この最大値は、今後予告なく増えることがあります。

    • 最後に書き込まれるファイルは、「_SUCCESS」という名の付く空のファイルです。このファイルは、フォルダにこれ以上データが書き込まれないことを示すフラグです。したがって、 _SUCCESS ファイルが存在することを確認する前に、フォルダー内のデータを読み取らないでください。:_SUCCESS フラグは、フォルダーに書き込むデータがない場合にも書き込まれます。

  • 遅延フォルダー

    • Lateフォルダには、午前0時以降に到着した前日のイベントが含まれます。つまり、翌日 00:00–02:00 UTCの間に到着したものです。例えば、ユーザーが月曜日の08:00にアプリをインストールし、イベントが火曜日の01:00に到着した場合です。このイベントは月曜日のLateフォルダに記録されます。

    • 前のセクションで説明したように、このフォルダには _SUCCESS フラグも含まれます。

    • Lateフォルダ内のデータは、他のフォルダには記録されません。

    • 自動プロセスは、他のフォルダと同様にLateフォルダのデータを探します。

ファイルの構造と形式

  • Data Lockerファイルは、ローデータレポート仕様 Ver.5に基づいています。
  • 実際のデータファイルはCSV形式ですが、ファイル拡張子はありません。
  • レポートファイルは、ダウンロードプロセスを効率化するため、を使用します。
  • 各ファイルにはヘッダー行があります。
  • コンマを含む値は、"" `の間に含まれます。例:` ` " iPhone6,1 " `

データソースとしてのレポートの使用

レポートのデータを使用して、独自のデータベースに追加できます。データを抽出してデータベースに追加するには、レポート形式を知る必要があります。Data Lockerレポートは、ローデータレポートに基づいています。ただし、最終的なレポート形式は、設定画面で選択されたフィールドのみが含まれます。

一部の項目は null または空白になります。これは、特定のレポートのコンテキストでは、レポートするデータがないことを意味します。一般的に、null は、特定のレポートおよびアプリケーションタイプのコンテキストでこのフィールドに入力されないことを意味します。空白("")は、この項目がこのコンテキストに関連しているものの、入力するデータが見つからなかったことを意味します。

タイムゾーンと通貨

アプリ固有のタイムゾーンと通貨の設定は、Data Lockerのデータには影響しません。

  • タイムゾーン:Data LockerレポートはUTCタイムゾーンを使用します
  • 通貨: フィールド event_revenue_usd は米ドルです。

AppsFlyer AWSバケットとカスタマーAWSバケットの比較

 警告!

クライアントAWSバケットソリューションをご利用の場合:

  • GDPR等のデータプライバシー規制とアドネットワーク/SRNのデータ保持ポリシーに準拠していることをご確認ください。
  • カスタマーAWSバケットソリューションを使用して第三者にデータを送信しないでください。
  • データは、選択したバケット所有者に次のように書き込まれます。
    • AppsFlyer AWSバケット
    • カスタマーAWSバケット
  • バケット所有者はいつでも変更できます:
    • ユーザーインターフェイス上で、AppsFlyer AWSバケットからカスタマーAWSバケットに移行します。変更は1時間以内に有効になります。つまり、1つのバケットへのデータ格納を停止し、新しく選択されたバケットにデータを格納し始めます。
    • カスタマーバケットの使用を停止したい場合は、AppsFlyerバケットを選択してください。
  AppsFlyer AWSバケット カスタマーAWSバケット
バケット名 AppsFlyerが設定します

広告主が設定します。「af-datalocker-」という接頭辞が必要です。

例:af-datalocker-your-bucket-name

バケットの所有権 AppsFlyer カスタマー
サポートされるストレージプラットフォーム AWS AWS 
データへアクセスするための認証情報 アカウント管理者がData Locker画面から確認できます AppsFlyerには開示されません。ご利用のAWS認証情報を使用してください。
データ保持 データは30日後に削除されます 広告主の責任です
データ削除リクエスト AppsFlyerの責任です 広告主の責任です
セキュリティ AppsFlyerがバケットを管理します。カスタマーは読み込み専用アクセスがあります。 カスタマーがバケットを管理します。AppsFlyerでは、バケットへのGetObject、ListBucket、DeleteObject、PutObject 権限が必要です。バケットはAppsFlyer専用にする必要があります。他の用途には使用しないでください。
ストレージ容量 AppsFlyerが管理します 広告主が管理します

手順

Data Lockerの設定

この手順に従って、Data Lockerを設定してください。Data Lockerの設定への変更が有効になるには、最大3時間かかります。

カスタマーAWSバケットを設定する前提条件:

カスタマーAWSバケットを使用してData Lockerを設定する場合、つまり自社で所有するバケットを使用する場合は、まずAWS S3バケットの設定を完了する必要があります。

AppsFlyerAdmin_us-en.png Data Lockerの設定方法:

  1. 管理者が設定を実行する必要があります。
  2. AppsFlyerにて、インテグレーション > Data Locker へ進みます。 
  3. Amazon S3の連携方法を選択します。次のいずれかから選択してください。
    • AppsFlyer AWSバケットステップ4に進みます。
    • カスタマーAWSバケット。
      1. AWSバケット名を入力します。接頭辞「af-datalocker-」を入力しないでください。
      2. [Test] をクリックします。
      3. バケットパスが無効であることを示すエラーメッセージなどが表示されないことを確認します。
  4. 1つ以上のアプリまたは全てのアプリを選択してください。All (全て) を選択すると、自動的に今後追加するアプリも含まれるようになります。
  5. [Apply] をクリックします。
  6. [オプション] メディアソース:レポートに含めたい1つまたは複数のメディアソースを選択します。
    • デフォルト=すべて。今後新たに追加されるメディアソースも自動的に追加されます。
  7. レポートタイプを1つ以上選択してください。
  8. [オプション] アプリ内イベント:含めたいアプリ内イベントを選択します。アプリ内イベントの種類が100個を超えている場合には、検索することはできませんので、名前を正確に入力して選択してください。
    • デフォルト=すべて。今後新たに追加されるアプリ内イベントも自動的に追加されます。
  9. [Apply] をクリックします。
  10. [オプション] フィールド(デフォルト=すべて):レポートに含めるフィールドを選択します。:随時フィールドを追加することがありますので、データインポート処理でこの点を考慮してください。
  11. Save Configuration(設定を保存)をクリックします。次のうちいずれかが発生します:
    • AppsFlyer AWSバケットを選択した場合:
      • 専用のAWSバケットが作成されます。バケットの認証情報が表示されます。
      • バケットはこの認証情報を使用してアクセスできます。認証情報は、バケットへの読み取り専用アクセスを提供します。
    • カスタマーAWSバケットを選択した場合:
      • データは3時間以内にAWSバケットに格納され始めます。

Data Lockerの設定—独自のAWS S3バケット

このセクションの手順は、社内のAWS管理者が実行する必要があります。

Data Lockerにデータが書き込まれてから25時間以上経過してから削除できます。それ以前に削除しないでください。

AWS管理者向けの背景情報:

  • AppsFlyerは、あなたが所有するS3バケットにデータを書き込みます。そのためには、次のことが必要です:
    • af-datalocker-mybucketという名前を持つバケットを作成します。「af-datalocker-」という接頭辞は必須です。接尾辞はフリーテキストです。
  • af-datalocker-yyyy-mm-dd-hh-mm-free-text を推奨します。yyyy-mm-dd-hh-mm が現在の日付と時刻で、次の図に示すように他のテキストを追加します。
    AWS コンソールでのユーザーインターフェイス

    MyBucket.jpg

  • バケットを作成したあとに、次の手順を使用してAppsFlyerに権限を付与します。

バケットを作成し、AppsFlyerに権限を付与する方法:

  1. AWSコンソールにサインインします。
  2. S3サービスへ進みます。
  3. バケットの作成方法
    1. [Create Bucket] をクリックします。
    2. Bucket name を次のように入力します:接頭辞「af-datalocker-」をはじめに付け、その後前述のとおりに他のテキストを追加します。
    3. [Create Bucket] をクリックします。
  4. AppsFlyerに権限を付与する方法:
    1. バケットを選択します。
    2. Go to the Permissions tab. 
    3. Bucket policy セクションにて、[Edit](編集)をクリックします。 
      バケットポリシー画面が開きます。
    4. 次のスニペットを画面に貼り付けます。
      {
        "Version": "2012-10-17",
        "Statement": [
          {
            "Sid": "AF_DataLocker_Direct",
            "Effect": "Allow",
            "Principal": {
              "AWS": "arn:aws:iam::195229424603:user/product=datalocker__envtype=prod__ns=default"
            },
            "Action": [
              "s3:GetObject",
              "s3:ListBucket",
              "s3:DeleteObject",
              "s3:PutObject"
            ],
            "Resource": [
              "arn:aws:s3:::af-datalocker-my-bucket",
              "arn:aws:s3:::af-datalocker-my-bucket/*"
            ]
          }
        ]
      }
      
  5. スニペット内の「af-data-locker-my-bucket 」を作成したバケット名に置き換えます。

  6. 変更を保存をクリックします。

  7. Data Lockerの設定手順を完了します。

認証情報のリセット

管理者はAppsFlyer AWSバケットの認証情報をいつでもリセットできます。注意!認証情報をリセットする場合、新しい認証情報を使用してデータインポートスクリプトを更新する必要があります。

AppsFlyerAdmin_us-en.png 認証情報をリセットする方法:

  1. AppsFlyerにて、インテグレーション > Data Locker へ進みます。 
  2. 認証情報セクションにて、Reset credentials.をクリックします。
    確認画面が表示されます。
  3. Reset(リセット)をクリックします。
  4. Credentials successfully reset(認証情報が正常にリセットされました)とメッセージが表示されるまで待ちます(約20秒間)。更新された認証情報が利用できます。

データの取得

AWS CLIや次のセクションで説明するツールのいずれかのS3データ取得ツールを使用します。

AWS CLI

はじめに:

  • コンピューターにAWS CLIをインストールします。
  • AppsFlyerでData Lockerに移動し、この手順を実行するために必要な資格情報パネルに含まれる情報を取得します。

AWS CLI を使用するには:

  1. ターミナルを開きます。Windowsでこれを行うには、<Windows>+<R> を押し、[OK] をクリックします。
    コマンドラインウィンドウが開きます。
  2. aws configure を入力します
  3. 認証情報パネルに表示されるAWS Access Keyを入力します。
  4. 認証情報パネルに表示されるAWS Secret Keyを入力します。
  5. eu-west-1 を入力します
  6. Enterキーを押す(None)

必要に応じて、以下のCLIコマンドを使用してください。

次のコマンドでは、{home-folder}の値が見つけられます。

バケット内のフォルダーを一覧表示するには:

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

ファイルとフォルダーの一覧表示

Data Lockerバケットには3種類のフォルダがあります。

  • レポートタイプ 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

特定の日付のファイルをダウンロードする方法:

aws s3 cp s3://af-ext-reports/<home-folder>/data-locker-hourly/t=installs/dt=2020-08-01/h=9/part-00000.gz ~/Downloads/

Cyber Duck

はじめに:

  • Cyber Duckクライアントをインストールします。
  • AppsFlyerで、Data Lockerに移動し、資格情報パネルに含まれる情報を取得します。この情報は、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: AppFlyerの認証情報パネルに表示されるAWSアクセスキーをコピーします
    • Secret Access Key: AppsFlyerの認証情報パネルに表示される Bucket Secretキーをコピーします。
    • Path: {Bucket Name}/{Home Folder} 例:af-ext-reports/1234-abc-ffffffff
  5. ウィンドウを閉じるには、ウィンドウの右上隅にあるXを使用します。
  6. 接続を選択します。
    データディレクトリが表示されます。

Amazon S3ブラウザー

はじめに:

  • Amazon S3ブラウザをインストールします。
  • AppsFlyerでData Lockerに移動し、この手順を実行するために必要な資格情報パネルに含まれる情報を取得します。

Amazon S3ブラウザを設定するには

  1. S3 ブラウザにて、Accounts > Add New Account をクリックします。
    新しいアカウントの追加ウィンドウが開きます。

    mceclip0.png

  2. 次のように各フィールドを入力します。
    • Account Name :フリーテキスト
    • Access Key ID :認証情報パネルに表示されるAWS Access Keyをコピーします。
    • Secret Access Key:資格情報パネルに表示される Bucket Secret Key をコピーします。
    • パスワードで [Encrypt Access Keys] を選択し、パスワードを入力します。このパスワードを覚えておいてください。
    • [Use secure transfer] を選択します。
  3. [Save changes] をクリックします。
  4. [Buckets] > [Add External Bucket] をクリックします。
    外部バケットの追加ウィンドウが開きます。

    mceclip2.png

  5. バケット名を入力します。バケット名の形式は {Bucket Name} / {Home Folder} です。バケット名とホームフォルダに必要な値は認証情報ウィンドウに表示されます。
  6. [Add External bucket] をクリックします。
    バケットが作成され、ウィンドウの左側のパネルに表示されます。
    これで、Data Lockerファイルにアクセスできます。

追加情報

特徴と制限

特徴
特徴 備考
Ad Networks 広告媒体アカウントでは使用できません。
代理店 代理店アカウントでは使用できません。
アプリ固有のタイムゾーン 適用されません。Data Lockerフォルダは、UTCを使用して時間に分割されます。実際のイベントは、UTCで時刻が刻まれます。必要に応じて、他のタイムゾーンに時刻を変換します。アプリのタイムゾーンに関係なく、イベント発生からData Lockerに記録されるまでのラグは変わらず、6時間です。
アプリ固有の通貨 サポートされていません
サイズ制限 不適用
最後のデータ更新 ファイルは、イベント実行時間から6時間遅れて1時間ごとに更新されます。
ヒストリカルデータ サポートされていませんイベントデータは、Data Lockerの構成後に送信されます。過去のデータが必要な場合は、Pull APIを使用してください。
チームメンバーアクセス チームメンバーアカウントはData Lockerを構成できません。
単一アプリ / 複数アプリ Data Lockerはアカウントレベルで、複数のアプリをサポートしています。

開発者向けの考慮事項

システムにデータを読み込むためのスクリプトを準備する際には、次の点を考慮してください:

  • 一時フォルダ
    • 場合によっては、一時フォルダが残ります。このフォルダは無視してください。例:/data-locker-hourly/t=inapps/dt=2020-11-13/h=2/_temporarary/0/_temporary/
    • _SUCCESS フラグを持つフォルダのみを取り込んでください。
  • レポート内の列の順序:
    • レポート項目の順序は常に同じです。新しい項目が追加される場合は、既存項目の右側に追加されます。ユーザーインターフェイス上の項目リストは、それに応じて順序付けされます。

トラブルシューティング

  • 症状:AWS CLIを使用してデータを取得できない
  • エラーメッセージ:ListObjectsV2 操作を呼び出す時にエラーが発生 (AccessDenied) しました:Access Denied
  • 原因 :使用されているAWS認証情報がAppsFlyerバケットの正しい認証情報ではありません。これは、複数または無効な資格情報が原因の可能性があります。
  • 解決法
    1. Cyber Duck などの別の方法を使用してバケットにアクセスします。これはCLIではありません。これを実行して、使用している資格情報が機能していることを確認します。Cyber Duckを使用して接続できる場合は、資格情報キャッシュに問題があることを示しています。
    2. AWS認証情報キャッシュを更新します
      AWS`のスクリーンショット mceclip0.png
この記事は役に立ちましたか?