Настройка Google Cloud Storage в задаче копирования

В этой статье описывается, как использовать операцию копирования в конвейере для копирования данных из Google Cloud Storage и в нее.

Предпосылки

Для учетной записи Google Cloud Storage требуется следующая настройка:

  1. Включите взаимодействие для учетной записи Google Cloud Storage.

  2. Задайте проект по умолчанию, содержащий данные, которые вы хотите скопировать из целевого контейнера Облачного хранилища Google.

  3. Создайте учетную запись службы и определите правильные уровни разрешений с помощью Cloud IAM в GCP.

  4. Создайте ключи доступа для этой учетной записи службы.

    Снимок экрана: ключ доступа для Google Cloud Storage.

Необходимые разрешения

Чтобы скопировать данные из Google Cloud Storage, убедитесь, что вы получили следующие разрешения для операций объектов: storage.objects.get и storage.objects.list.

Кроме того, для таких операций, как тестирование подключения и просмотр содержимого корневого каталога, требуется разрешение storage.buckets.list.

Полный список ролей Google Cloud Storage и связанных разрешений см. в ролях IAM для облачного хранилища на сайте Google Cloud.

Поддерживаемые форматы

Google Cloud Storage поддерживает следующие форматы файлов. Дополнительные сведения о параметрах с учетом форматирования см. в соответствующих статьях.

Поддерживаемая конфигурация

Для настройки каждой вкладки в действии копирования перейдите к следующим разделам соответственно.

General

Для настройки вкладки "Общие " перейдите к разделу "Общие".

Исходный материал

Следующие свойства поддерживаются для Google Cloud Storage на вкладке "Источник " действия копирования.

Требуются следующие свойства:

  • Подключение. Выберите подключение Google Cloud Storage из списка подключений. Если подключение не существует, создайте новое подключение к облачному хранилищу Google, нажав кнопку "Создать".

  • Тип пути к файлу: Вы можете выбрать Путь к файлу, Префикс, Путь с подстановочными знаками или Список файлов в качестве типа пути к файлу. Конфигурация каждого из этих параметров:

    • Путь к файлу: если выбрать этот тип, данные можно скопировать из заданного контейнера или папки или пути к файлу, указанному в пути к файлу.

    • Префикс: если выбрать этот тип, укажите контейнер и префикс.

      • Контейнер: укажите имя контейнера Google Cloud Storage. Это обязательно.

      • Префикс: префикс для имени ключа Google Cloud Storage в указанном контейнере для фильтрации исходных файлов Google Cloud Storage. Ключи Google Cloud Storage, имена которых начинаются с given_bucket/this_prefix, выбраны. Он использует серверный фильтр Google Cloud Storage, который обеспечивает лучшую производительность, чем фильтр подстановочных знаков.

        Снимок экрана, показывающий, как настроить тип пути к файлу с префиксом.

    • Путь к файлу с подстановочными знаками: если выбрать этот тип, укажите пути к контейнеру и подстановочным знакам.

      • Контейнер: укажите имя контейнера Google Cloud Storage. Это обязательно.

      • Пути с подстановочными знаками: укажите папку или путь к файлу с подстановочными знаками в заданной корзине для фильтрации исходных папок или файлов.

        Допустимые подстановочные знаки: * (соответствует нулю или нескольким символам) и ? (соответствует нулю или одному символу). Используется ^ для escape-обхода, если имя папки имеет подстановочный знак или этот escape-символ внутри. Дополнительные примеры см. в примерах фильтров папок и файлов.

        Снимок экрана: настройка пути к файлу с подстановочными знаками.

        • Путь к папке подстановочных знаков: укажите путь к папке с подстановочными знаками в заданном контейнере для фильтрации исходных папок.

        • Имя файла подстановочного знака: укажите имя файла с подстановочными знаками в заданном контейнере и пути к папке (или путь к папке подстановочных знаков) для фильтрации исходных файлов.

    • Список файлов: если выбрать этот тип, укажите путь к папке и путь к списку файлов , чтобы указать, чтобы скопировать заданный набор файлов. Наведите указатель на текстовый файл, содержащий список файлов, которые требуется скопировать, один файл на строку, который является относительным путем к настроенного пути. Дополнительные примеры см. в примерах списка файлов.

      Снимок экрана: настройка списка файлов.

      • Путь к папке: укажите путь к папке в заданном контейнере. Это обязательно.
      • Путь к списку файлов: укажите путь к текстовому файлу, который содержит список файлов, которые нужно скопировать.
  • Рекурсивно: указывает, считываются ли данные рекурсивно из вложенных папок или только из указанной папки. Обратите внимание, что при выборе этого флажка, если место назначения является хранилищем, основанным на файлах, пустые папки или подпапки не копируются и не создаются в месте назначения.

  • Формат файла: выберите формат файла, примененный в раскрывающемся списке. Выберите "Параметры", чтобы настроить формат файла. Сведения о параметрах различных форматов файлов см. в статьях в поддерживаемом формате .

В разделе "Дополнительно" можно указать следующие поля:

  • Фильтруйте по последнему изменению: файлы фильтруются на основе указанных вами дат последнего изменения. Это свойство не применяется при настройке типа пути к файлу в качестве списка файлов.

    • Время начала (UTC): файлы выбираются, если время последнего изменения больше или равно заданному времени.
    • Время окончания (UTC): файлы выбираются, если время последнего изменения меньше настроенного времени.

    Если время начала (UTC) имеет значение datetime, но время окончания (UTC) равно NULL, это означает, что файлы, последние измененные атрибуты которых больше или равно значению даты и времени будут выбраны. Если время окончания (UTC) имеет значение datetime, но время начала (UTC) равно NULL, это означает, что файлы, последние измененные атрибуты которых меньше значения datetime будут выбраны. Свойства могут иметь значение NULL, что означает, что к данным не будет применен фильтр атрибутов файлов.

  • Включение обнаружения секций: укажите, следует ли анализировать секции из пути к файлу и добавлять их в качестве дополнительных исходных столбцов. Он не выбирается по умолчанию и не поддерживается при использовании двоичного формата файла.

    • Корневой путь секционирования: Если обнаружение разделов включено, укажите абсолютный корневой путь, чтобы читать секционированные папки в виде столбцов данных.

      Если он не указан, по умолчанию

      • При использовании пути к файлу или списка файлов в источнике корневой путь секции — это настроенный путь.
      • При использовании фильтра папок с подстановочными знаками корневой путь раздела – это часть пути перед первым подстановочным знаком.
      • При использовании префикса корневой путь раздела является подпутем до последнего "/".

      Например, если вы настраиваете путь как root/folder/year=2020/month=08/day=27, следующим образом:

      • Если указать корневой путь секции в качестве root/folder/year=2020, действие копирования создаст еще два столбца месяца и день со значением "08" и "27" соответственно, в дополнение к столбцам внутри файлов.
      • Если корневой путь секции не указан, дополнительный столбец не будет создан.

      Снимок экрана: включение обнаружения разделов.

  • Максимальное число одновременных подключений: верхний предел одновременных подключений, установленных в хранилище данных во время выполнения действия. Указывайте значение только при необходимости ограничить количество одновременных подключений.

  • Дополнительные столбцы: добавьте дополнительные столбцы данных для хранения относительного пути или статического значения исходных файлов. Выражение поддерживается для последнего варианта.

Место назначения

Следующие свойства поддерживаются для Google Cloud Storage на вкладке "Назначение " действия копирования.

снимок экрана: вкладка назначения и список свойств.

Требуются следующие свойства:

  • Подключение. Выберите подключение Google Cloud Storage из списка подключений. Если подключение не существует, создайте новое подключение к облачному хранилищу Google, нажав кнопку "Создать".
  • Путь к файлу: данные можно скопировать в заданный контейнер или указанный путь к папке и контейнеру.
  • Формат файла: выберите формат файла, примененный в раскрывающемся списке. Выберите "Параметры", чтобы настроить формат файла. Сведения о параметрах различных форматов файлов см. в статьях в поддерживаемом формате .

В разделе "Дополнительно" можно указать следующие поля:

  • Поведение копирования: определяет поведение копирования, если источник является файлами из файлового хранилища данных. Вы можете выбрать поведение из раскрывающегося списка.

    • Уплощение иерархии: все файлы из исходной папки находятся на первом уровне целевой папки. У целевых файлов есть автоматически созданные имена.
    • Слияние файлов: объединить все файлы из исходной папки в один файл. Если указано имя файла, то оно присваивается объединенному файлу. В противном случае это автоматически созданное имя файла.
    • Сохранение иерархии: сохраняет иерархию файлов в целевой папке. Относительный путь исходного файла к исходной папке идентичен относительному пути целевого файла к целевой папке.
  • Максимальное число одновременных подключений: это свойство указывает верхний предел параллельных подключений, установленных в хранилище данных во время выполнения действия. Указывайте значение только при необходимости ограничить количество одновременных подключений.

Картирование

Сведения о настройке вкладки "Сопоставление " см. в разделе "Настройка сопоставлений" на вкладке "Сопоставление". Если в качестве формата файла выбран двоичный файл, сопоставление не будет поддерживаться.

Settings

Для конфигурации вкладки "Параметры " перейдите к разделу "Настройка других параметров" на вкладке "Параметры".

Сводка таблицы

В следующих таблицах содержатся дополнительные сведения об операции копирования в службе Google Cloud Storage.

Исходная информация

Имя Description Ценность Обязательно Свойство скрипта JSON
Подключение Ваше подключение к исходному хранилищу данных. <подключение к облачному хранилищу Google> Да connection
Тип пути к файлу Тип пути к файлу, используемый для получения исходных данных. Путь к файлу
Префикс
Путь к файлу с подстановочными знаками
Список файлов
Да /
Путь к файлу
Ведро Имя контейнера облачного хранилища Google. <имя контейнера> Да bucketName
Каталог Путь к папке в указанном контейнере. <имя папки> нет путь к папке
Имя файла Имя файла в указанном контейнере и пути к папке. <имя файла> нет fileName
Для префикса
Ведро Имя контейнера облачного хранилища Google. <имя контейнера> Да bucketName
префикс Префикс для имени ключа Google Cloud Storage в заданном контейнере для фильтрации исходных файлов Google Cloud Storage. <ваш префикс> нет prefix
Путь к файлу с подстановочными знаками
Ведро Имя контейнера облачного хранилища Google. <имя контейнера> Да bucketName
Путь к папке подстановочного знака Путь к папке с подстановочными знаками в указанном контейнере для фильтрации исходных папок. <Путь к папке с подстановочными знаками> нет wildcardFolderPath
Имя файла подстановочного знака Имя файла с подстановочными знаками в указанном контейнере и пути к папке (или путь к папке подстановочных знаков) для фильтрации исходных файлов. <имя файла с подстановочными знаками> Да wildcardFileName
Список файлов
Ведро Имя контейнера облачного хранилища Google. <имя контейнера> Да bucketName
Каталог Путь к папке в указанном контейнере. <имя папки> нет путь к папке
Путь к списку файлов Указывает, что нужно скопировать заданный набор файлов. Наведите указатель на текстовый файл, содержащий список файлов, которые требуется скопировать, один файл на строку. < Путь к списку файлов > нет fileListPath
Формат файлов Формат файла для исходных данных. Сведения о различных форматах файлов см. в статьях в поддерживаемом формате для получения подробных сведений. / Да /
Рекурсивно Указывает, следует ли читать данные рекурсивно из вложенных папок или только из указанной папки. Обратите внимание, что при выборе этого флажка, если место назначения является хранилищем, основанным на файлах, пустые папки или подпапки не копируются и не создаются в месте назначения. выбранный (по умолчанию) или отмена выбора нет recursive
Фильтрация по дате изменения Файлы с последним измененным временем в диапазоне [время начала, время окончания) будут отфильтрованы для дальнейшей обработки. Время будет применено к часовой поясу UTC в формате yyyy-mm-ddThh:mm:ss.fffZ. Эти свойства можно пропустить, что означает, что фильтр атрибутов файла не будет применен. Это свойство не применяется при настройке типа пути к файлу в качестве списка файлов. datetime нет modifiedDatetimeStart
modifiedDatetimeEnd
Включение обнаружения разделов Указывает, следует ли анализировать секции из пути к файлу и добавлять их в качестве дополнительных исходных столбцов. выбран или не выбран (по умолчанию) нет enablePartitionDiscovery:
true или false (по умолчанию)
Корневой путь раздела Если обнаружение секций включено, укажите абсолютный корневой путь, чтобы считывать секционированные папки как столбцы данных. < корневой путь к разделу > нет partitionRootPath
Максимальное число одновременных подключений Верхний предел одновременных подключений, установленных к хранилищу данных во время выполнения активности. Указывайте значение только при необходимости ограничить количество одновременных подключений. <максимальное число одновременных подключений> нет maxConcurrentConnections
Дополнительные столбцы Добавьте дополнительные столбцы данных для хранения относительного пути или статического значения исходных файлов. Выражение поддерживается для последнего варианта. •Имя
•Ценность
нет дополнительныеКолонки
•имя
•ценность

Сведения о назначении

Имя Description Ценность Обязательно Свойство скрипта JSON
Подключение Подключение к целевому хранилищу данных. <подключение к облачному хранилищу Google> Да connection
Путь к файлу Путь к папке или файлу целевого файла. < Путь к папке или файлу> Да /
Ведро Имя контейнера облачного хранилища Google. <имя контейнера> Да bucketName
Каталог Путь к папке в указанном контейнере. <имя папки> нет путь к папке
Имя файла Имя файла в указанном контейнере и пути к папке. <имя файла> нет fileName
Поведение копирования Определяет поведение копирования, когда источником являются файлы из файлового хранилища данных. • Плоская иерархия
• Слияние файлов
• Сохранение иерархии
нет поведение копирования
• УпрощениеИерархии
• MergeFiles
• Сохранить Иерархию
Максимальное число одновременных подключений Верхний предел одновременных подключений, установленных к хранилищу данных во время выполнения активности. Указывайте значение только при необходимости ограничить количество одновременных подключений. <максимальное число одновременных подключений> нет maxConcurrentConnections