Начать

При настройке доступа к Data Transfer v2.0 через вашего менеджера по продажам или службу поддержки вам будет предоставлено имя хранилища (bucket name). Вам потребуется указать вашему менеджеру по продажам группу Google , которая позволит вам контролировать доступ к вашим файлам данных в Google Cloud Storage .

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

Доступ к данным осуществляется с помощью gsutil.

Инструмент gsutil — это приложение командной строки, написанное на Python, которое позволяет получать доступ к данным без необходимости написания какого-либо кода. Например, вы можете использовать gsutil как часть скрипта или пакетного файла вместо создания пользовательских приложений.

Для начала работы с gsutil ознакомьтесь с документацией gsutil . Инструмент запросит ваши учетные данные при первом использовании, а затем сохранит их для последующего использования.

примеры gsutil

Вы можете вывести список всех своих файлов с помощью gsutil следующим образом:

gsutil ls gs://[bucket_name]/[object name/file name]

Команда gsutil использует синтаксис, во многом схожий с UNIX, включая символ подстановки звездочкой (*), поэтому вы можете вывести список всех файлов NetworkImpression:

gsutil ls gs://[bucket_name]/dcm_account6837_impression_*

Скачать файл тоже очень просто:

gsutil cp gs://[bucket_name]/dcm_account6837_impression_2015120100.log.gz

Вы можете скопировать свои файлы из распределенных хранилищ Google DT в собственное хранилище Google API GCS, используя скрипт оболочки Unix. Есть два варианта:

  • В утилите gsutil, если вы используете систему Unix, ежедневно запускайте следующую команду для всех ваших хранилищ:

    $ day=$(date --date="1 days ago" +"%m-%d-%Y")
    $ gsutil -m cp gs://{<dcmhashid_A>,<dcmhashid_B>,etc.}/*$day*.log.gz gs://<client_bucket>/
  • В качестве альтернативы, более сложным решением является использование bash-файла:

    #!/bin/bash
    
    set -x
    
    buckets={dfa_-hasid_A dfa_-hashid_B,...} #include all hash ids
    day=$(date --date="1 days ago" +"%m-%d-%Y")
    for b in ${buckets[@]}; do /
        gsutil -m cp gs://$b/*$day*.log.gz gs:/// /
    done

Доступ к данным программным способом

Google Cloud Storage предоставляет API и примеры для многих языков программирования, позволяющие получать доступ к данным программным способом. Ниже описаны шаги, специфичные для Data Transfer v2.0, которые необходимо выполнить для создания работающей интеграции.

Получите служебный аккаунт

Для начала работы с Data Transfer v2.0 необходимо воспользоваться инструментом настройки , который поможет вам создать проект в консоли Google API и включить API.

Для создания новой учетной записи службы выполните следующие действия:

  1. Нажмите «Создать учетные данные» > «Ключ учетной записи службы» .
  2. Выберите, следует ли загружать открытый/закрытый ключ учетной записи службы в виде стандартного файла P12 или в виде файла JSON, который может быть загружен клиентской библиотекой Google API.

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

Обязательно оставьте это окно открытым, адрес электронной почты вашей учетной записи понадобится на следующем шаге.

Добавьте служебную учетную запись в свою группу.

  • Перейти в группу Google
  • Нажмите «Мои группы» и выберите группу, которую вы используете для управления доступом к вашему облачному хранилищу DT v2.0.
  • Нажмите «Управление».
  • Не нажимайте кнопку «Пригласить участников»!
  • Нажмите «Прямо» для добавления участников.
  • Скопируйте адрес электронной почты учетной записи службы поддержки, полученный на предыдущем шаге, в поле «Участники».
  • Выберите «Нет электронной почты»
  • Нажмите кнопку «Добавить».

Я случайно нажал кнопку «Пригласить участников».

Объем

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

Например, при использовании клиентской библиотеки Java следует использовать следующую область видимости:

StorageScopes.DEVSTORAGE_READ_ONLY