Распаковка фабрики данных Azure

У меня вопрос. У меня есть несколько файлов .zip на моем FTP-сервере, и я хочу распаковать и скопировать их в ADLS. В документации этому есть четкое объяснение:

«Прочтите файл .zip с FTP-сервера, распакуйте его, чтобы получить файлы внутри, и поместите эти файлы в Azure Data Lake Store. Вы определяете входной набор данных FTP со свойством JSON типа сжатия как ZipDeflate».

Я пробовал с этим, и на моем ADLS я получаю сжатый файл. Я попытался указать свойства файла, определить разделитель и прочее, и все еще получал сжатый файл в хранилище озера данных. Я думаю, это то, как я определяю набор выходных данных. Есть ли какие-то правила, как определять выходной набор данных, если входящий набор данных - это файлы .zip с FTP.

Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
Как установить LAMP Stack 1/2 на Azure Linux VM
Как установить LAMP Stack 1/2 на Azure Linux VM
В дополнение к нашему предыдущему сообщению о намерении Azure прекратить поддержку Azure Database для MySQL в качестве единого сервера после 16...
1
0
5 474
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Скорее всего, вы также определили сжатие своего выходного набора данных как ZipDeflate, поэтому вы получаете заархивированный файл на ADLS. Попробуйте изменить набор выходных данных (тот же, где вы настраиваете путь в ADLS), чтобы он не использовал сжатие. Вы должны иметь в своей деятельности копирования входной набор данных, в котором вы настраиваете ftp со сжатием, и выходной набор данных, где вы настраиваете большинство вещей для озера без сжатия.

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

Надеюсь, это помогло!

Привет, Мартин, спасибо за ответ. Я определил поведение копирования в моем выходном наборе данных как двоичную копию. Моя логика: приемник исходного кода будет брать файлы и распаковывать их, а мне нужна двоичная копия для моего вывода. Теперь я вижу, что в моей папке .zip в хранилище озера данных находится распакованный текстовый файл. Думаю, он просто сохранил иерархию папок.

DraganB 16.04.2018 14:02

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

Martin Esteban Zurita 16.04.2018 14:27

Спасибо, @Martin. Для zip-файла размером 90 МБ на его копирование и распаковку ушло 2,5 часа. (размер в распакованном виде 270 МБ) Это нормально, чтобы это длилось так долго или? Я знаю, что это зависит от сервера и прочего, просто хочу узнать ваше мнение.

DraganB 16.04.2018 14:29

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

Martin Esteban Zurita 16.04.2018 14:53

Только что проверил, у меня пропускная способность 9кбс. Я попробую использовать двоичную копию, а затем разархивирую ее с помощью пользовательского экстрактора u sql.

DraganB 16.04.2018 16:05

Привет, Мартин, просто хотел проверить, можем ли мы выполнить декомпрессию .7z таким же подходом?

Abhi 08.03.2019 13:39

Привет, в прошлый раз, когда я попробовал, это было невозможно. 7z - это обычно режим сжатия с низкой совместимостью. Если вы используете 7-zip для сжатия файлов, вы можете использовать его для сжатия в одном из поддерживаемых форматов, например GZip, BZip2 или Zip. Надеюсь, это помогло!

Martin Esteban Zurita 11.03.2019 14:52

архивирует / распаковывает одну из функций среды выполнения интеграции, для которой требуется среда выполнения Java? некоторые вещи, такие как запись формата Parquet, требуют этого, тогда как другие вещи, такие как чтение и запись CSV, не требуют

Max 10.11.2020 16:21

Другие вопросы по теме