Data Clean Room — クラウドサービスの設定

プレミアム機能

概要: 1つまたは複数のデータウェアハウス(BigQuery、Snowflake)やクラウドストレージバケット(Amazon S3、GCS)を設定し、Data Clean Roomとデータを共有し、レポートを受け取ります。

概要

Data Clean Room(DCR)を使用する準備として以下の設定が含まれます:

  • DCRがシステム(カスタムソース)からファーストパーティデータを読み取るクラウドサービス / ロケーション。これらのロケーションは、受信接続を作成するために使用されます。
  • 処理後にDCRがレポートを配信するクラウドサービス / ロケーション。これらのロケーションは、送信接続を作成するために使用されます。

受信接続または送信接続の作成は、次の2段階の手順になります:

  • ステップ#1 – 選択したクラウドサービスのインターフェイスを使用して、DCR で使用する準備をします(本記事)。
  • ステップ#2 – AppsFlyerプラットフォームを使用してそれらをDCRに接続します。(Data Clean Room — ソースの管理をご覧ください)。

 注記

ソースデータ要件の完全な情報については、Data Clean Room — ソースの操作を参照してください。

  • データ形式(すべてのソース
  • 表の列(データウェアハウスのソース
  • ファイル名と形式(クラウドストレージバケット内のソースの場合

サポートされているクラウドサービス

DCRへの受信接続と送信接続には次の2種類のクラウドサービスがサポートされています。

  • データウェアハウス: BigQuery および Snowflake
  • クラウドストレージバケット: Amazon S3 (AWS) および GCS

これらのサービスの 1 つまたは任意の組み合わせを、受信および送信接続に使用できます。

 重要!

  • 1 つのレポートに複数のカスタムソースを使用する場合は、クラウドストレージバケットに配置する必要があります。
  • Amazon S3 または GCS で同じクラウドストレージバケットを受信・送信接続の両方に使用することは非常に一般的です。設定は、特別な指示に必ず従ってください。

受信接続にクラウドサービスを設定します

次の項目の指示に従って、DCR受信接続で使用するために、選択したクラウドサービスを準備します。

データウェアハウス – BigQuery および Snowflake

BigQuery

注意: 次の手順は、Google Cloudの管理者が実行する必要があります。

データセットを作成し、DCRに権限を付与する方法:

  1. Google Cloudコンソールにログインします。
  2. BigQuery ページにアクセスします。
  3. 新規または既存の Google Cloudプロジェクトで、DCR専用データセットを作成します。
    1. 左側のパネルで、プロジェクト ID の右側にあるアクション表示ボタン BQ_view_actions_button.png をクリックします。
    2. [Create dataset](データセットの作成)を選択します。

      BQ_create_dataset.png

    3. 開いた右側のパネルで、データセットの名前を入力します。必要に応じて他のオプションを選択します。
      • 文字、数字、アンダースコア (_) のみを使用して任意の名前を使用できます。
        • 推奨: データセットが受信接続に使用されていることを示す名前にします。
      • 表の期限が切れるとDCRはソースを読み取れなくなるため、[Enable table expiration](表の期限を有効にする)オプションを使用しないことを強くお勧めします。
    4. BQ_create_dataset_button.pngボタンをクリックします。

  4. DCRにデータセットへのアクセス許可を付与します:
    1. 左側のパネルで、作成したデータセットの右側にあるアクション表示ボタン BQ_view_actions_button.png をクリックします。
    2. [Share](共有)を選択してください。
    3. 開いた右側のパネルのBQ_add_principal_button.png ボタンをクリックします。
    4. [Add principals](プリンシパルの追加)項目で、[New principals](新規プリンシパル) 項目に次のアカウントを入力します。
      appsflyer-dcr@dcr-report.iam.gserviceaccount.com
    5. [Assign roles](役割の割り当て)[BigQuery] > [BigQuery Data Viewer]を選択します。

      BQ_data_viewer.png

    6. [保存] をクリックします。
    7. [CLOSE](閉じる)をクリックして、右側のパネルを閉じます。

Snowflake

注意:次の手順は、Snowflakeのアカウント管理者が実行する必要があります。

DCRで使用するプライベート共有を作成します

  1. DCRと共有するデータを含むSnowflakeアカウントにログインします。
  2. Accountadminロールを切り替えます
  3. 左パネルにある[Private Sharing](プライベート共有)を選択します。
  4. 開いたページで、[Shared By Your Account](アカウントで共有)タブを選択します。

    snowflake_private_sharing.png

  5. [Share](共有)ボタンをクリックします。 開いたリストから、[Create a Direct Share](直接共有の作成)を選択します。

    snowflake_create_direct_share.png

  6. DCRと共有する表やビューを選択し、[Done](完了)をクリックします。
  7. 必要に応じて、 [Secure Share Identifier](共有のユーザー識別子の保護) を変更し、オプションの説明を追加します。
  8. [Add accounts in your region by name](お住まいの地域のアカウントを名前で追加) 項目に、Snowflakeアカウントの地域に応じて次のいずれかのAppsFlyer Snowflakeアカウントを入力します。
    Region AppsFlyerアカウント
    EU West (eu-west-1) QL63117
    US East - N. Virginia (us-east-1) MWB70410
    US East - Ohio (us-east-2) BM15378
  9. Create Share(共有作成)ボタンをクリックしてください。

クラウドストレージバケット – Amazon S3 および GCS

(Amazon S3、GCS、またはその両方での)DCRへのデータアップロードに、1つ以上のバケットを使用できます。ただしほとんどの場合、最も管理しやすい構造に含まれるのは、1 つのクラウドサービスにバケット1つです。

次の要件は、両方のクラウドサービスのバケットに関連しています。

  • 使用: バケットは、AppsFlyerのData Clean Room専用のものである必要があります。つまり、他のサービスはバケットにデータを書き込むことができません。
  • 許可: AppsFlyerのDCRサービスには、バケット権限を付与する必要があります。これらのアクセス許可を付与する手順については、以下の各クラウドサービスのタブを参照してください。
  • 名称: バケット名は必ず af-dcr- または af-datalocker-で始める必要があります。
    • 例: af-dcr-example-bucket
  • DCR名称要件: 次の名称設定要件は、すべてのDCR データエンティティ(バケット、フォルダ、およびファイル)に適用されます。
    • 最大文字数: 200 文字
    • 利用可能な有効文字:
      • 半角アルファベット - (A-Z, a-z)
      • 数字 (0-9) - 名前の最初の文字にすることはできません
      • ハイフン (-) - 名前の最初の文字にすることはできません
      • 無効な文字:
        • スペース
        • その他すべての記号または特殊文字
      • 特別な目的にのみ使用される文字:

Amazon S3

注意: 次の手順は、AWS管理者が実行する必要があります。

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

  1. AWSコンソールにログインします。
  2. S3サービスへ進みます。
  3. バケットを作成します:
    1. [Create Bucket] をクリックします。
    2. バケット名を完成し、af-dcr-またはaf-datalocker-で始め、その後に(上記の DCR命名要件に従って)テキストを続けます。
    3. [Create Bucket] をクリックします。
  4. AppsFlyerバケットのアクセス許可を付与します:
    1. 作成したバケットを選択します。
    2. Go to the Permissions tab. 
    3. バケットポリシー セクションにて、[編集] をクリックします。 「バケットポリシーの編集」 ウィンドウが開きます。
    4. 次のコードスニペットをウィンドウに貼り付けます。
      {
        "Version": "2012-10-17",
        "Statement": [
          {
            "Sid": "AF-DCR-DL",
            "Effect": "Allow",
            "Principal": {
              "AWS": [         "arn:aws:iam::195229424603:user/product=dcr-reporter__envtype=prod__ns=default",   "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-dcr-mybucket",
              "arn:aws:s3:::af-dcr-mybucket/*"
            ]
          }
        ]
      }
      
  5. スニペットで、(表示される2行の中に)作成したバケットの名前に置き換え af-dcr-mybucket と置き換えます。
    注意!スニペット内のバケット名を置き換えるときは、/*を上書きしないようご注意ください。バケット名が表示される 2 行目に表示されます。

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

GCS

注意: 次の手順は、Google Cloudの管理者が実行する必要があります。

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

  1. GCSコンソールにログインします。
  2. クラウドストレージブラウザページに移動します。
  3. バケットを作成します:
    1. [バケットを作成] をクリックします 
    2. バケット作成ページでバケット情報を入力します。バケット名を含めaf-dcr-またはaf-datalocker-で始め、その後に(上記の DCR命名要件に従って)テキストを続けます。
    3. [次へ] をクリックします。
    4. 作成をクリックしてください。
  4. AppsFlyerバケットのアクセス許可を付与します:
    1. 作成したバケットを選択します。
    2. Go to the Permissions tab. 
    3. アクセス許可セクションで、[+ 追加]をクリックします。
      メンバーの追加画面が開きます。
    4. 新規メンバーボックスに、次のアカウントを入力します。
      appsflyer-dcr@dcr-report.iam.gserviceaccount.com
    5. 役割リストから、クラウドストレージ > ストレージ管理者(アドミン)を選択します。

      dcr_gcs_permissions.png

    6. [保存] をクリックします。

送信接続にクラウドサービスを設定します

DCRはAppsFlyer Data Lockerを使用して、選択したクラウドサービスにレポートを届けます。

  • 注意: DCRレポートの受信にData Lockerのプレミアムサブスクリプションは必要ありません。Data Lockerによるその他のAppsFlyerレポートの受信についての詳細は、CSMにお問い合わせいただくか、 hello@appsflyer.com にメールを送信してください。

DCRレポートは、(受信接続に同じサービスを使用するかどうかに関係なく)クラウドサービス上の 1 か所以上に配信できます。次の項目の指示に従って、送信接続に使用する準備をします。

データウェアハウス – BigQuery および Snowflake

BigQuery

注意: 次の手順は、Google Cloudの管理者が実行する必要があります。

データセットを作成し、Data Lockerに権限を付与する方法:

  1. Google Cloudコンソールにログインします。
  2. BigQuery ページにアクセスします。
  3. 新規または既存の Google Cloudプロジェクトで、Data Locker専用データセットを作成します。
    1. 左側のパネルで、プロジェクト ID の右側にあるアクション表示ボタン BQ_view_actions_button.png をクリックします。
    2. [Create dataset](データセットの作成)を選択します。

      BQ_create_dataset.png

    3. 開いた右側のパネルで、データセットの名前を入力します。必要に応じて他のオプションを選択します。
      • 文字、数字、アンダースコア (_) のみを使用して任意の名前を使用できます。
        • 推奨: データセットが送信接続に使用されていることを示す名前にします。
      • 表の期限が切れるとData Lockerはデータセットにレポートを書き込めなくなるため、[Enable table expiration](表の期限を有効にする)オプションを使用しないことを強くお勧めします。
    4. BQ_create_dataset_button.pngボタンをクリックします。

  4. Data Lockerにデータセットへのアクセス許可を付与します:
    1. 左側のパネルで、作成したデータセットの右側にあるアクション表示ボタン BQ_view_actions_button.png をクリックします。
    2. [Share](共有)を選択してください。
    3. 開いた右側のパネルのBQ_add_principal_button.png ボタンをクリックします。
    4. [Add principals](プリンシパルの追加) 項目で、[New principals](新規プリンシパル) 項目に次のアカウントを入力します。
      datalocker-bq-admin-prod@datalocker-bq-prod.iam.gserviceaccount.com
    5. 役割の割り当て[BigQuery] > [BigQuery Data Editor]を選択します。

      BQ_data_editor.png

    6. [保存] をクリックします。
    7. [CLOSE](閉じる)をクリックして、右側のパネルを閉じます。

Snowflake

送信接続にSnowflakeを準備する手順は、送信接続の作成手順と組み合わせて完了させます。

クラウドストレージバケット – Amazon S3 および GCS

送信接続にクラウドストレージバケットを準備する手順は、受信接続にバケットを準備する手順と非常によく似ています(両方のクラウドストレージサービスに関する手順を含みます)。

以下の項目の手順は 送信接続にのみバケットを使用している場合に適用されます。

Amazon S3

受信接続にAmazon S3バケットを作成する手順に従います(手順に変更はありません)。

GCS

受信接続にGCSバケットを作成する手順に従います。
手順#4で新規メンバーボックスに次のアカウントを入力します。
af-data-delivery@af-raw-data.iam.gserviceaccount.com

同じクラウドストレージバケットを受信・送信接続の両方に設定

前述のように、Amazon S3 または GCS で同じバケットを受信・送信接続の両方に使用することは一般的です。

この設定の手順は受信接続の手順とほんの少し違うだけです。ただし、以下を行っているかどうかによっては異なります。

  • DCR受信および送信接続で使用する新規バケットを作成しています。 又は
  • これまでData Lockerでのみ使用されていたバケットを、受信DCR接続および送信DCR接続の両方に使用されるバケットに変更しています。

これら両方のシナリオの手順は、以下のタブに含まれています:

Amazon S3

受信 / 送信接続用の新しいバケットの作成します

受信接続にAmazon S3バケットを作成する手順に従います(手順に変更はありません)。

これまでData Lockerにのみ使用されていた既存のバケットを変更します

これまでData Lockerにのみ使用していた既存のバケットを変更するには、バケットのアクセス許可を変更する必要があります(DCR と Data Locker の両方によるアクセスを許可します)。

バケットのアクセス許可を変更します

  1. AWSコンソールにログインします。
  2. S3サービスへ進みます。
  3. これまでData Lockerにのみ使用していたバケットを選択します。
  4. Go to the Permissions tab. 
  5. バケットポリシー セクションにて、[編集] をクリックします。 「バケットポリシーの編集」 ウィンドウが開きます。
  6. ウィンドウの内容を次のコードスニペットに置き換えます
    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "AF-DCR-DL",
          "Effect": "Allow",
          "Principal": {
            "AWS": [         "arn:aws:iam::195229424603:user/product=dcr-reporter__envtype=prod__ns=default",   "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-dcr-mybucket",
            "arn:aws:s3:::af-dcr-mybucket/*"
          ]
        }
      ]
    }
    
    • スニペットで、(表示される2行にある)af-dcr-mybucket と作成したバケットの名前とを置き換えます。
    • 警告!スニペット内のバケット名を置き換えるときは、バケット名が表示される 2 行目にある/*を上書きしないようご注意ください。
  7. 変更を保存をクリックします。

GCS

受信 / 送信接続用の新しいバケットの作成します

受信接続にGCSバケットを作成する手順に従います。手順#4を変更して、[New members](新規メンバー)ボックスに次の 2 つのアカウント を入力します。
appsflyer-dcr@dcr-report.iam.gserviceaccount.com
af-data-delivery@af-raw-data.iam.gserviceaccount.com

これまでData Lockerにのみ使用されていた既存のバケットを変更します

これまでData Lockerにのみ使用していた既存のバケットを変更するには、バケットのアクセス許可を変更する必要があります(DCR と Data Locker の両方によるアクセスを許可します)。

バケットのアクセス許可を変更します

  1. GCSコンソールにログインします。
  2. クラウドストレージブラウザページに移動します。
  3. これまでData Lockerにのみ使用していたバケットを選択します。
  4. 権限タブへ進んでください。
  5. [アクセス許可] セクションで、[ + 追加 ] をクリックします
    メンバーの追加画面が開きます。
  6. 新規メンバーボックスに、次のアカウントを入力します。
    appsflyer-dcr@dcr-report.iam.gserviceaccount.com
  7. 役割リストから、クラウドストレージ > ストレージ管理者(アドミン)を選択します。

    dcr_gcs_permissions.png

  8. [保存] をクリックします。