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. 左側のパネルで、プロジェクトIDの右側にあるアクション表示ボタン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 rolesBigQuery> BigQuery Data Viewerを選択します。

      BQ_data_viewer.png

    6. Saveをクリックしてください。
    7. CLOSEをクリックして、右側のパネルを閉じます。

Snowflake

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

DCRで使用するプライベート共有の作成:

  1. DCRと共有するデータを含むSnowflakeアカウントにログインします。
  2. Account adminロールを切り替えます。
  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アカウントを入力します:
    地域 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. 権限タブへ進んでください。 
    3. Bucket policyセクションで Editをクリックしてください。
      バケットポリシーの編集/strong>画面が開きます。
    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. 権限タブへ進んでください。 
    3. アクセス許可セクションで、 + 追加 をクリックします。
      メンバーの追加画面が開きます。
    4. ボックスに、次のアカウントを入力します:New members ボックスに、次のアカウントを入力します:
      appsflyer-dcr@dcr-report.iam.gserviceaccount.com
    5. 役割リストから、クラウドストレージ > ストレージ管理者を選択します。

      dcr_gcs_permissions.png

    6. Saveをクリックしてください。

送信接続のクラウドサービスの設定

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. 左側のパネルで、プロジェクトIDの右側にあるアクション表示ボタン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. Assign rolesBigQuery > BigQuery Data Editorを選択します。

      BQ_data_editor.png

    6. Saveをクリックしてください。
    7. CLOSEをクリックして、右側のパネルを閉じます。

Snowflake

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

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

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

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

Amazon S3

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

GCS

受信接続用のGCSバケットを作成する手順に従います。この手順のステップ 4 で、New membersボックスに次のアカウントを入力します:
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. 権限タブへ進んでください。 
  5. Bucket policyセクションで Editをクリックしてください。
    バケットポリシーの編集/strong>画面が開きます。
  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. ボックスに、次のアカウントを入力します:New members ボックスに、次のアカウントを入力します:
    appsflyer-dcr@dcr-report.iam.gserviceaccount.com
  7. 役割リストから、クラウドストレージ > ストレージ管理者を選択します。

    dcr_gcs_permissions.png

  8. Saveをクリックしてください。