Data Clean Room — создание облачных сервисов

Премиум

Краткий обзор. Настройте одно или несколько локальных хранилищ данных (BigQuery, Snowflake) и/или облачных хранилищ (Amazon S3, GCS) для загрузки данных в Data Clean Room и получения отчетов.

Обзор

Для использования Data Clean Room (DCR) нужно настроить:

  • Облачные сервисы/локации, из которых DCR считывает ваши собственные данные из ваших систем (пользовательские источники). Эти локации используются для создания входящих подключений.
  • Облачные сервисы/локации, в которые DCR доставляет отчеты после обработки. Эти локации используются для создания исходящих подключений.

Создание входящих или исходящих подключений — это двухэтапный процесс:

  • Шаг 1 — Используйте интерфейсы выбранных облачных сервисов, чтобы подготовить их к использованию с DCR (эта статья).
  • Шаг 2 — Используйте платформу AppsFlyer для подключения к DCR. (См. статью: Data Clean Room: работа с подключениями).

 Примечание

См. Data Clean Room — Работа с источниками для получения полной информации о требованиях к исходным данным:

  • Формат данных (для всех источников)
  • Столбцы таблицы (для источников в локальных хранилищах данных)
  • Имя и формат файла (для источников в облачных корзинах)

Поддерживаемые облачные сервисы

Для входящих и исходящих подключений с DCR поддерживаются два типа облачных сервисов:

  • Локальные хранилища данных: BigQuery и Snowflake.
  • Облачные корзины: Amazon S3 (AWS) и GCS.

Вы можете использовать один или любую комбинацию этих сервисов для входящих и исходящих подключений.

 Важно!

  • Если вы будете использовать несколько пользовательских источников для одного отчета, они должны быть расположены в облачных корзинах.
  • Обычно используют одну и ту же облачную корзину на Amazon S3 или GCS для входящих и исходящих подключений. Следуйте специальным инструкциям для этой настройки.

Настройка облачных сервисов для входящих подключений

Подготовьте выбранные облачные сервисы для использования с входящими подключениями DCR в соответствии с инструкциями на следующих вкладках.

Локальные хранилища данных — BigQuery и Snowflake.

BigQuery

Примечание. Описанная ниже процедура должна быть выполнена вашим администратором Google Cloud.

Чтобы создать набор данных и предоставить DCR разрешения: 

  1. Войдите в консоль Google Cloud Console.
  2. Перейдите на страницу BigQuery.
  3. В новом или существующем проекте Google Cloud создайте набор данных для исключительного использования DCR:
    1. На панели слева нажмите кнопку Просмотр действий BQ_view_actions_button.png справа от идентификатора проекта.
    2. Выберите Создать набор данных.

      BQ_create_dataset.png

    3. В открывшейся панели справа введите название набора данных и выберите другие необходимые параметры.
      • Вы можете использовать любое подходящее вам название, используя только буквы, цифры и знак подчеркивания (_).
        • Рекомендация: используйте название, указывающее на то, что набор данных используется для входящего подключения.
      • Настоятельно рекомендуется НЕ использовать опцию Enable table expiration (Включить срок действия таблиц), поскольку DCR не сможет прочитать источники после истечения срока действия таблиц.
    4. Нажмите кнопку BQ_create_dataset_button.png .

  4. Предоставьте DCR права доступа к набору данных:
    1. На панели слева нажмите кнопку Просмотр действий BQ_view_actions_button.png справа от созданного набора данных.
    2. Выберите Share (Общая папка).
    3. В открывшейся панели справа нажмите кнопку BQ_add_principal_button.png .
    4. В разделе Добавить принципала введите следующий аккаунт в поле Новые принципалы:
      appsflyer-dcr@dcr-report.iam.gserviceaccount.com.
    5. В разделе Назначение ролей выберите BigQuery > BigQuery Data Viewer (BigQuery — Просмотр данных).

      BQ_data_viewer.png

    6. Нажмите кнопку Save (Сохранить).
    7. Нажмите CLOSE (Закрыть), чтобы закрыть правую боковую панель.

Snowflake

Примечание. Следующая процедура должна выполняться администратором аккаунта Snowflake.

Чтобы создать папку ограниченного доступа для использования DCR:

  1. Войдите в аккаунт Snowflake, содержащий данные, которыми вы хотите поделиться с DCR.
  2. Смените роль на Accountadmin (Администратор аккаунта).
  3. На панели слева выберите Private Sharing (Ограниченный доступ).
  4. На открывшейся странице выберите вкладку Shared By Your Account (Предоставлено вашим аккаунтом).

    snowflake_private_sharing.png

  5. Нажмите кнопку ПоделитьсяВ открывшемся списке выберите Create a Direct Share (Создать прямой обмен данными).

    snowflake_create_direct_share.png

  6. Выберите таблицы и/или представления, которыми вы хотите поделиться с DCR, затем нажмите Done (Готово).
  7. В соответствии с вашими потребностями измените Secure Share Identifier (Идентификатор безопасного обмена) и добавьте дополнительное описание.
  8. В поле Добавить аккаунты в вашем регионе по имени введите один из следующих аккаунтов AppsFlyer Snowflake, в соответствии с регионом вашего аккаунта Snowflake:
    Регион Аккаунт AppsFlyer
    ЕС Запад (eu-west-1) QL63117
    США Восток – Сев. Вирджиния (us-east-1) MWB70410
    США Восток – Огайо (us-east-2) BM15378
  9. Нажмите кнопку Create Share (Создать обмен данными). 

Облачные корзины — Amazon S3 и GCS.

Для загрузки данных в DCR можно использовать одну или несколько корзин (на Amazon S3, GCS или обе). Однако в большинстве случаев самая простая в управлении структура включает в себя одну корзину в одном облачном сервисе.

  • Вы можете настроить одну и ту же корзину для использования с входящими и исходящими подключениями, следуя этим инструкциям.

Следующие требования относятся к корзинам в обоих облачных сервисах:

  • Использование. Корзина должна быть выделена исключительно для 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. Нажмите Создать корзину.
    2. Укажите название корзины, сначала префикс af-dcr- или af-datalocker- и далее ваш текст (в соответствии с требованиями к названиям в DCR выше).
    3. Нажмите Создать корзину.
  4. Предоставьте AppsFlyer права доступа к корзине:
    1. Выберите созданную вами корзину. 
    2. Перейдите на вкладку Permissions (Разрешения). 
    3. В разделе Bucket policy (Политика корзины) нажмите Edit (Редактировать).
      Откроется окно для редактирования политики корзины.
    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. Во фрагменте кода замените имя af-dcr-mybucket (в обеих строках, где оно встречается) на имя созданной вами корзины.
    Внимание! При замене имени корзины во фрагменте кода будьте внимательны, чтобы не удалить символы /* в строке, в которой имя корзины встречается второй раз.

  6. Нажмите Save changes (Сохранить изменения).

GCS

Примечание. Описанная ниже процедура должна быть выполнена вашим администратором Google Cloud.

Чтобы создать корзину и предоставить разрешения AppsFlyer: 

  1. Войдите в консоль GCS.
  2. Перейдите на страницу Cloud Storage Browser.
  3. Создайте корзину:
    1. Нажмите  Create bucket (Создать корзину).
    2. Введите информацию о корзине на странице создания корзины . Укажите название корзины, сначала префикс af-dcr- или af-datalocker- и далее ваш текст (в соответствии с требованиями к названиям в DCR выше).
    3. Нажмите Continue (Продолжить).
    4. Нажмите Create (Создать).
  4. Предоставьте AppsFlyer права доступа к корзине:
    1. Выберите созданную вами корзину. 
    2. Перейдите на вкладку Permissions (Разрешения). 
    3. В разделе Permissions (Разрешения) нажмите + Add (Добавить).
      Откроется окно Add members (Добавить пользователей).
    4. В поле New members (Новые пользователи) введите следующий аккаунт:
      appsflyer-dcr@dcr-report.iam.gserviceaccount.com.
    5. В списке Role (Роль) выберите Cloud storage (Облачное хранилище) > Storage Admin (Администратор хранилища).

      dcr_gcs_permissions.png

    6. Нажмите кнопку Save (Сохранить).

Настройка облачных сервисов для исходящих подключений

DCR передает отчеты в выбранные вами облачные сервисы с помощью AppsFlyer Data Locker.

  • Примечание. Получение отчетов DCR не требует премиум-подписки на Data Locker. Если вы заинтересованы в получении других отчетов AppsFlyer через Data Locker, свяжитесь с вашим менеджером или отправьте письмо по адресу hello@appsflyer.com.

Ваши отчеты DCR могут быть доставлены в одно или несколько мест в ваших облачных сервисах (независимо от того, используете ли вы те же сервисы для входящих подключений). Подготовьте их для использования с исходящими подключениями DCR в соответствии с инструкциями на следующих вкладках.

Локальные хранилища данных — BigQuery и Snowflake.

BigQuery

Примечание. Описанная ниже процедура должна быть выполнена вашим администратором Google Cloud.

Чтобы создать набор данных и предоставить разрешения Data Locker: 

  1. Войдите в консоль Google Cloud Console.
  2. Перейдите на страницу BigQuery.
  3. В новом или существующем проекте Google Cloud создайте набор данных для эксклюзивного использования Data Locker:
    1. На панели слева нажмите кнопку Просмотр действий BQ_view_actions_button.png справа от идентификатора проекта.
    2. Выберите Создать набор данных.

      BQ_create_dataset.png

    3. В открывшейся панели справа введите название набора данных и выберите другие необходимые параметры.
      • Вы можете использовать любое подходящее вам название, используя только буквы, цифры и знак подчеркивания (_).
        • Рекомендация: используйте название, указывающее на то, что набор данных используется для исходящего подключения.
      • Настоятельно рекомендуется НЕ использовать опцию Enable table expiration (Включить срок действия таблиц), поскольку Data Locker не сможет записывать отчеты в набор данных после истечения срока действия таблиц.
    4. Нажмите кнопку BQ_create_dataset_button.png .

  4. Предоставьте Data Locker права доступа к набору данных:
    1. На панели слева нажмите кнопку Просмотр действий BQ_view_actions_button.png справа от созданного набора данных.
    2. Выберите Share (Общая папка).
    3. В открывшейся панели справа нажмите кнопку BQ_add_principal_button.png .
    4. В разделе Добавить принципала введите следующий аккаунт в поле Новые принципалы:
      datalocker-bq-admin-prod@datalocker-bq-prod.iam.gserviceaccount.com.
    5. В разделе Назначение ролей выберите BigQuery > BigQuery Data Editor (BigQuery — Редактирование данных).

      BQ_data_editor.png

    6. Нажмите кнопку Save (Сохранить).
    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.

Инструкции для обоих этих сценариев содержатся на вкладках ниже:

Amazon S3

Создание новой корзины для входящих и исходящих подключений

Следуйте инструкциям по созданию корзины Amazon S3 для входящих подключений (без каких-либо изменений в этой процедуре).

Изменение существующей корзины, ранее использовавшейся только для Data Locker

Изменение существующей корзины, которую вы ранее использовали только для Data Locker, требует изменения разрешений корзины (чтобы разрешить доступ как DCR, так и Data Locker).

Чтобы изменить разрешения корзины:

  1. Войдите в консоль AWS.
  2. Откройте сервис S3.
  3. Выберите корзину, которая ранее использовалась только для Data Locker. 
  4. Перейдите на вкладку Permissions (Разрешения). 
  5. В разделе Bucket policy (Политика корзины) нажмите Edit (Редактировать).
    Откроется окно для редактирования политики корзины.
  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/*"
          ]
        }
      ]
    }
    
    • Во фрагменте кода замените имя af-dcr-mybucket (в обеих строках, где оно встречается) на имя созданной вами корзины.
    • Внимание! При замене имени корзины во фрагменте кода будьте внимательны, чтобы не удалить символы /* в строке, в которой имя корзины встречается второй раз.
  7. Нажмите Save changes (Сохранить изменения).

GCS

Создание новой корзины для входящих и исходящих подключений

Следуйте инструкциям по созданию корзины GCS для входящих подключений. На шаге 4 этой процедуры введите следующие 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. Перейдите на страницу Cloud Storage Browser.
  3. Выберите корзину, которая ранее использовалась только для Data Locker. 
  4. Перейдите на вкладку Permissions (Разрешения).
  5. В разделе Permissions (Разрешения) нажмите + Add (Добавить).
    Откроется окно Add members (Добавить пользователей).
  6. В поле New members (Новые пользователи) введите следующий аккаунт:
    appsflyer-dcr@dcr-report.iam.gserviceaccount.com.
  7. В списке Role (Роль) выберите Cloud storage (Облачное хранилище) > Storage Admin (Администратор хранилища).

    dcr_gcs_permissions.png

  8. Нажмите кнопку Save (Сохранить).