Azure Data Factory - копирование определенных файлов из нескольких родительских папок с FTP-сервера - PullRequest
0 голосов
/ 01 мая 2019

Я пытаюсь скопировать файлы .ZIP с FTP-сервера в Azure DataLake. Мне нужно скопировать определенные файлы из определенных родительских папок (всего у меня есть 6 родительских папок на FTP), и этот конвейер должен быть запланирован. Так как же мне предоставить параметры, чтобы Pipeline выбирал только определенные файлы из разных папок?

Я использовал Metadata Activity и пытался создавать конвейеры, но не уверен, как предоставить конвейер для выбора только определенных файлов!

Ответы [ 2 ]

0 голосов
/ 02 мая 2019

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

Цикл 1: получение метаданных папок -> Фильтрация необходимых папок -> foreach конвейер с циклом 2 Цикл 2: получение метаданных файлов файлов -> Фильтрация необходимых файлов -> Копирование необходимых файлов

0 голосов
/ 02 мая 2019

Фабрика данных Azure поддерживает сжатие / распаковку данных во время копирования.Когда вы указываете свойство сжатия во входном наборе данных, операция копирования считывает сжатые данные из источника и распаковывает их;и когда вы указываете свойство в выходном наборе данных, операция копирования сжимает и записывает данные в приемник.

Например:

Считайте файл .zip с FTP-сервера, распакуйте его, чтобы получитьфайлы внутри и поместите эти файлы в хранилище озера данных Azure.Вы определяете входной набор данных FTP со свойством типа сжатия как ZipDeflate.

Для получения дополнительной информации, пожалуйста, обратитесь: Поддержка сжатия .

Вот учебник о Копироватьданных с FTP-сервера с помощью фабрики данных Azure .

Набор данных другого формата Для копирования данных с FTP в формате ORC / Avro / JSON / Binary по этой ссылке поддерживаются следующие свойства: Другоенабор данных формата .

enter image description here

Советы:

  1. Для копирования всех файлов впапку, укажите folderPath * только 1030 *.
  2. Чтобы скопировать один файл с заданным именем, укажите folderPath с частью папки и fileName с именем файла.
  3. Чтобы скопировать подмножество файлов в папке, укажите folderPath с частью папки и fileName с подстановочным фильтром.

Hopeэто помогает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...