Настройка Snowflake в действии копирования
В этой статье описывается, как использовать действие копирования в конвейере данных для копирования данных из Snowflake и в нее.
Поддерживаемая конфигурация
Для настройки каждой вкладки в действии копирования перейдите к следующим разделам соответственно.
Общие
Ознакомьтесь с руководством по общим параметрам, чтобы настроить вкладку "Общие параметры".
Исходный код
Следующие свойства поддерживаются для Snowflake на вкладке "Источник " действия копирования.
Требуются следующие свойства:
- Тип хранилища данных: выберите "Внешний".
- Подключение. Выберите подключение Snowflake из списка подключений. Если подключение не существует, создайте новое подключение Snowflake, нажав кнопку "Создать".
- База данных: база данных по умолчанию, используемая после подключения. Следует указать существующую базу данных, для которой указанная роль имеет привилегии.
- Используйте запрос: в качестве запроса можно выбрать таблицу или запрос. В следующем списке описана конфигурация каждого параметра.
- Таблица. Выберите таблицу в базе данных из раскрывающегося списка. Или установите флажок "Изменить", чтобы ввести имя таблицы вручную.
- Запрос. Укажите SQL-запрос для чтения данных из Snowflake. Если имена схемы, таблицы и столбцов содержат строчные буквы, заключайте идентификатор объекта в кавычки, например
select * from "schema"."myTable"
.
В разделе "Дополнительно" можно указать следующие поля:
Интеграция хранилища. Укажите имя интеграции хранилища, созданной в Snowflake. Инструкции по использованию интеграции хранилища см. в разделе "Настройка интеграции хранилища Snowflake".
Дополнительные параметры копирования Snowflake: укажите дополнительные параметры копирования Snowflake, которые будут использоваться в инструкции Snowflake COPY для загрузки данных. Дополнительные параметры копирования предоставляются в виде словаря пар "ключ-значение". Примеры: MAX_FILE_SIZE, OVERWRITE. Дополнительные сведения см. в разделе Параметры копирования в Snowflake.
Дополнительные параметры формата Snowflake: укажите дополнительные параметры формата Snowflake, которые будут использоваться в инструкции Snowflake COPY для загрузки данных. Дополнительные параметры формата файла, предоставляемые команде COPY, предоставляются в виде словаря пар "ключ-значение". Примеры: DATE_FORMAT, TIME_FORMAT, TIMESTAMP_FORMAT. Дополнительные сведения см. в разделе Параметры типа формата в Snowflake.
Прямое копирование из Snowflake
Если целевое хранилище данных и формат соответствуют критериям, описанным в этом разделе, можно использовать действие Copy для непосредственного копирования из Snowflake в место назначения. Служба проверяет параметры и не выполняет действие Copy, если не выполнены условия, описанные ниже.
При указании интеграции хранилища в источнике: целевое хранилище данных — это Хранилище BLOB-объектов Azure, которые вы указали во внешней стадии в Snowflake. Перед копированием данных необходимо выполнить следующие действия:
Создайте подключение Хранилище BLOB-объектов Azure для целевого Хранилище BLOB-объектов Azure с любыми поддерживаемыми типами проверки подлинности.
Предоставьте по крайней мере роль участника данных BLOB-объектов хранилища субъекту-службе Snowflake в целевом Хранилище BLOB-объектов Azure контроль доступа (IAM).
Если интеграция хранилища не указана в источнике:
Целевое подключение — это хранилище BLOB-объектов Azure с проверкой подлинности подписанного URL-адреса. Если вы хотите напрямую скопировать данные в Azure Data Lake Storage 2-го поколения в следующем поддерживаемом формате, можно создать подключение Хранилище BLOB-объектов Azure с проверкой подлинности SAS для Azure Data Lake Storage 2-го поколения учетная запись, чтобы избежать использования поэтапной копии из Snowflake.
Формат данных назначения — Parquet, DelimitedText или JSON со следующими конфигурациями:
- Для формата Parquet кодек сжатия — None, Snappyили LZO.
- Для формата Разделителя :
- Разделитель строк — \r\n или любой одинарный символ.
- Тип сжатия может быть None, gzip, bzip2 или deflate.
- Кодировка остается по умолчанию или имеет значение UTF-8.
- Символ кавычки — двойная кавычка, одинарный или нет символа кавычки.
- Для формата JSON прямое копирование поддерживается только в том случае, если таблица источника Snowflake или результат запроса содержат только один столбец, и для данных этого столбца задан тип VARIANT, OBJECT или ARRAY.
- Тип сжатия может быть None, gzip, bzip2 или deflate.
- Кодировка остается по умолчанию или имеет значение UTF-8.
- Шаблон файла в назначении действия копирования остается по умолчанию или имеет значение Set of objects.
В источнике действия копирования дополнительные столбцы не указаны.
Сопоставление столбцов не указано.
Промежуточное копирование из Snowflake
Если целевое хранилище данных или формат не совместимы с командой Snowflake COPY, как упоминалось в последнем разделе, включите встроенную поэтапное копирование с помощью промежуточного экземпляра хранилища BLOB-объектов Azure. Функция поэтапного копирования также обеспечивает более высокую пропускную способность. Служба экспортирует данные из Snowflake в промежуточное хранилище, а затем копирует данные в место назначения и, наконец, очищает временные данные из промежуточного хранилища.
Чтобы использовать эту функцию, создайте подключение к хранилищу BLOB-объектов Azure, которое ссылается на учетную запись хранения Azure в качестве промежуточной промежуточной. Затем перейдите на вкладку "Параметры" , чтобы настроить промежуточные параметры. Чтобы настроить промежуточное подключение Хранилище BLOB-объектов Azure, необходимо выбрать внешний.
При указании интеграции хранилища в источнике промежуточный Хранилище BLOB-объектов Azure должен быть тем, который вы указали во внешней стадии в Snowflake. Убедитесь, что вы создаете Хранилище BLOB-объектов Azure подключение для него с любой поддерживаемой проверкой подлинности и предоставляете по крайней мере роль участника данных BLOB-объектов хранилища субъекту-службе Snowflake в промежуточном Хранилище BLOB-объектов Azure контроль доступа (IAM). Путь к хранилищу в промежуточных параметрах на вкладке "Параметры" является обязательным.
Если интеграция хранилища не указана в источнике, промежуточное подключение Хранилище BLOB-объектов Azure должно использовать проверку подлинности подписи общего доступа, как требуется команде Snowflake COPY. Убедитесь, что вы предоставляете надлежащее разрешение на доступ к Snowflake в промежуточном Хранилище BLOB-объектов Azure. Дополнительные сведения об этом см. в этой статье.
Назначение
Следующие свойства поддерживаются для Snowflake на вкладке "Назначение " действия копирования.
Требуются следующие свойства:
- Тип хранилища данных: выберите "Внешний".
- Подключение. Выберите подключение Snowflake из списка подключений. Если подключение не существует, создайте новое подключение Snowflake, нажав кнопку "Создать".
- База данных: база данных по умолчанию, используемая после подключения. Следует указать существующую базу данных, для которой указанная роль имеет привилегии.
- Таблица. Выберите таблицу в базе данных из раскрывающегося списка. Или установите флажок "Изменить", чтобы ввести имя таблицы вручную.
В разделе "Дополнительно" можно указать следующие поля:
Скрипт предварительного копирования: укажите скрипт для действия копирования, который необходимо выполнить перед записью данных в целевую таблицу в каждом запуске. Это свойство можно использовать для очистки предварительно загруженных данных.
Интеграция хранилища. Укажите имя интеграции хранилища, созданной в Snowflake. Инструкции по использованию интеграции хранилища см. в разделе "Настройка интеграции хранилища Snowflake".
Дополнительные параметры копирования Snowflake: укажите дополнительные параметры копирования Snowflake, которые будут использоваться в инструкции Snowflake COPY для загрузки данных. Дополнительные параметры копирования предоставляются в виде словаря пар "ключ-значение". Примеры: ON_ERROR, FORCE, LOAD_UNCERTAIN_FILES. Дополнительные сведения см. в разделе Параметры копирования в Snowflake.
Дополнительные параметры формата Snowflake: укажите дополнительные параметры формата Snowflake, которые будут использоваться в инструкции Snowflake COPY для загрузки данных. Дополнительные параметры формата файла, предоставляемые команде COPY, предоставляются в виде словаря пар "ключ-значение". Примеры: DATE_FORMAT, TIME_FORMAT, TIMESTAMP_FORMAT. Дополнительные сведения см. в разделе Параметры типа формата в Snowflake.
Прямое копирование в Snowflake
Если хранилище данных источника и формат соответствуют критериям, описанным в этом разделе, действие Copy можно использовать для прямого копирования из источника в Snowflake. Служба проверяет параметры и не выполняет действие Copy, если не выполнены условия, описанные ниже.
При указании интеграции хранилища в назначении:
Исходное хранилище данных — это Хранилище BLOB-объектов Azure, которые вы указали на внешнем этапе в Snowflake. Перед копированием данных необходимо выполнить следующие действия:
Создайте подключение Хранилище BLOB-объектов Azure для исходного Хранилище BLOB-объектов Azure с любыми поддерживаемыми типами проверки подлинности.
Предоставьте по крайней мере роль чтения данных BLOB-объектов хранилища субъекту-службе Snowflake в исходном Хранилище BLOB-объектов Azure контроль доступа (IAM).
Если интеграция хранилища не указана в назначении:
Исходное подключение — это хранилище BLOB-объектов Azure с проверкой подлинности подписанного URL-адреса. Если вы хотите напрямую скопировать данные из Azure Data Lake Storage 2-го поколения в следующем поддерживаемом формате, вы можете создать Хранилище BLOB-объектов Azure подключение с проверкой подлинности SAS для вашей учетной записи Azure Data Lake Storage 2-го поколения учетной записи, чтобы избежать использования поэтапной копии в Snowflake.
Исходный формат данных — Parquet, DelimitedText или JSON со следующими конфигурациями:
Для формата Parquet кодек сжатия — None или Snappy.
Для формата Разделителя :
- Разделитель строк — \r\n или любой одинарный символ. Если разделитель строк не является "\r\n", первая строка в качестве заголовка не выбрана, а число строк пропуска не указано.
- Тип сжатия может быть None, gzip, bzip2 или deflate.
- Кодировка остается по умолчанию или имеет значение UTF-8. "UTF-16", "UTF-16BE", "UTF-32", "UTF-32BE", "BIG5", "EUC-JP", "EUC-KR", "GB18030", "ISO-2022-JP", "ISO-2022-KR", "ISO-8859-1", ISO-8859-2", "ISO-8859-5", "ISO-8859-6", "ISO-8859-7", "ISO-8859-8", "ISO-8-8"8859-9", "WINDOWS-1250", "WINDOWS-1251", "WINDOWS-1252", "WINDOWS-1253", "WINDOWS-1254", "WINDOWS-12555".
- Символ кавычки — двойная кавычка, одинарный или нет символа кавычки.
В формате JSON прямая копия поддерживает только тот случай, когда целевая таблица Snowflake имеет только один столбец, а тип данных этого столбца — VARIANT, OBJECT или ARRAY.
- Тип сжатия может быть None, gzip, bzip2 или deflate.
- Кодировка остается по умолчанию или имеет значение UTF-8.
- Сопоставление столбцов не указано.
В источнике действия Copy:
- Дополнительные столбцы не указаны.
- Если источник является папкой, выбран рекурсивно .
- Префикс, время начала (UTC) и время окончания (UTC) в фильтре после последнего изменения и включение обнаружения секций не указаны.
Промежуточное копирование в Snowflake
Если исходное хранилище данных или формат не совместимы с командой Snowflake COPY, как упоминалось в последнем разделе, включите встроенную поэтапное копирование с помощью промежуточного экземпляра хранилища BLOB-объектов Azure. Функция поэтапного копирования также обеспечивает более высокую пропускную способность. Служба автоматически преобразует данные, чтобы они соответствовали требованиям к формату данных Snowflake. Затем она вызывает команду КОПИРОВАТЬ для загрузки данных в Snowflake. Наконец, она очищает ваши временные данные из хранилища BLOB-объектов.
Чтобы использовать эту функцию, создайте подключение к хранилищу BLOB-объектов Azure, которое ссылается на учетную запись хранения Azure в качестве промежуточной промежуточной. Затем перейдите на вкладку "Параметры" , чтобы настроить промежуточные параметры. Чтобы настроить промежуточное подключение Хранилище BLOB-объектов Azure, необходимо выбрать внешний.
При указании интеграции хранилища в целевом расположении промежуточный Хранилище BLOB-объектов Azure должен быть тем, который вы указали во внешней стадии в Snowflake. Убедитесь, что вы создаете Хранилище BLOB-объектов Azure подключение для него с любой поддерживаемой проверкой подлинности и предоставляете по крайней мере роль чтения данных BLOB-объектов хранилища субъекту-службе Snowflake в промежуточном Хранилище BLOB-объектов Azure контроль доступа (IAM). Путь к хранилищу в промежуточных параметрах на вкладке "Параметры" является обязательным.
Если интеграция хранилища не указана в назначении, промежуточное подключение Хранилище BLOB-объектов Azure необходимо использовать проверку подлинности подписи общего доступа, как это требуется команде Snowflake COPY.
Сопоставление
Чтобы настроить конфигурацию вкладки "Сопоставление ", перейдите к разделу "Настройка сопоставлений" на вкладке сопоставления.
Настройки
Для настройки вкладки "Параметры" перейдите к разделу "Настройка других параметров" на вкладке "Параметры".
Сводка таблицы
В следующих таблицах содержатся дополнительные сведения о действии копирования в Snowflake.
Исходный код
Имя | Описание | Значение | Обязательное поле | Свойство скрипта JSON |
---|---|---|---|---|
Тип хранилища данных | Тип хранилища данных. | Внешний | Да | / |
Соединение | Подключение к исходному хранилищу данных. | < подключение > | Да | подключение |
База данных | База данных, используемая в качестве источника. | < база данных > | Да | database |
Использование запроса | Способ чтения данных из Snowflake. | •Стол •Запрос |
No | •стол •запрос |
Таблицу | Имя таблицы для чтения данных. | < имя исходной таблицы> | Да | схема table |
Запрос | SQL-запрос для чтения данных из Snowflake. | < имя исходного запроса> | Да | query |
Интеграция хранилища | Укажите имя интеграции хранилища, созданной в Snowflake. Инструкции по использованию интеграции хранилища см. в разделе "Настройка интеграции хранилища Snowflake". | < интеграция хранилища > | No | storageIntegration |
Дополнительные параметры копирования Snowflake | Дополнительные параметры копирования, предоставляемые в виде словаря для пар "ключ-значение". Примеры: MAX_FILE_SIZE, OVERWRITE. Дополнительные сведения см. в разделе Параметры копирования в Snowflake. | • Имя •Ценность |
No | additionalCopyOptions |
Дополнительные параметры формата Snowflake | Дополнительные параметры формата файла, предоставляемые для команды КОПИРОВАТЬ в виде словаря для пар "ключ-значение". Примеры: DATE_FORMAT, TIME_FORMAT, TIMESTAMP_FORMAT. Дополнительные сведения см. в разделе Параметры типа формата в Snowflake. | • Имя •Ценность |
No | additionalFormatOptions |
Назначение
Примечание.
Хотя экземпляры Snowflake, отличные от Azure Snowflake, поддерживаются только экземпляры Azure Snowflake в настоящее время для назначений Snowflake (также называются приемниками в Фабрика данных Azure).
Имя | Описание | Значение | Обязательное поле | Свойство скрипта JSON |
---|---|---|---|---|
Тип хранилища данных | Тип хранилища данных. | Внешний | Да | / |
Соединение | Подключение к целевому хранилищу данных. | < подключение > | Да | подключение |
База данных | База данных, используемая в качестве назначения. | < база данных> | Да | / |
Таблицу | Целевая таблица данных. | < имя целевой таблицы> | Да | •схема •стол |
Скрипт предварительного копирования | SQL-запрос действие Copy для запуска перед записью данных в Snowflake в каждом запуске. Это свойство используется для очистки предварительно загруженных данных. | < скрипт предварительного копирования> | Нет | preCopyScript |
Интеграция хранилища | Укажите имя интеграции хранилища, созданной в Snowflake. Инструкции по использованию интеграции хранилища см. в разделе "Настройка интеграции хранилища Snowflake". | < интеграция хранилища > | No | storageIntegration |
Дополнительные параметры копирования Snowflake | Дополнительные параметры копирования, предоставляемые в виде словаря для пар "ключ-значение". Примеры: ON_ERROR, FORCE, LOAD_UNCERTAIN_FILES. Дополнительные сведения см. в разделе Параметры копирования в Snowflake. | • Имя •Ценность |
No | additionalCopyOptions |
Дополнительные параметры формата Snowflake | Дополнительные параметры формата файла, предоставляемые для команды КОПИРОВАТЬ, предоставляются в виде словаря для пар "ключ-значение". Примеры: DATE_FORMAT, TIME_FORMAT, TIMESTAMP_FORMAT. Дополнительные сведения см. в разделе Параметры типа формата в Snowflake. | • Имя •Ценность |
No | additionalFormatOptions |