GCP Bulk Decompress поддерживает файловую структуру - PullRequest
0 голосов
/ 14 февраля 2020

У нас есть большое количество сжатых файлов, хранящихся в корзине GCS. Я пытаюсь распаковать их, используя утилиту . Данные находятся в иерархии каталогов временных меток; YEAR/MONTH/DAY/HOUR/files.txt.gz. Поток данных принимает шаблоны ввода подстановочных знаков; inputFilePattern=gs://source-data/raw/nginx/2019/01/01/*/*.txt.gz. Однако структура каталогов на выходе выравнивается. Все файлы распаковываются в один каталог. Можно ли поддерживать иерархию каталогов с помощью массового декомпрессора? Есть ли другое возможное решение?

gcloud dataflow jobs run gregstest \
    --gcs-location gs://dataflow-templates/latest/Bulk_Decompress_GCS_Files \
    --service-account-email greg@gmeow.com \
    --project shopify-data-kernel \
    --parameters \
inputFilePattern=gs://source-data/raw/nginx/2019/01/01/*/*.txt.gz,\
outputDirectory=gs://uncompressed-data/uncompressed,\
outputFailureFile=gs://uncompressed-data/failed

1 Ответ

1 голос
/ 14 февраля 2020

Я искал Java код массового декомпрессора , и метод PipelineResult выполняет следующие шаги:

  1. Поиск всех файлов, соответствующих шаблону ввода
  2. Распакуйте найденные файлы и выведите их в выходной каталог
  3. Запишите все ошибки в выходной файл ошибки

Похоже, API распаковывает только файлы, а не каталоги с файлами. Я рекомендую вам проверить этот поток в Stackoverflow с возможными решениями, касающимися распаковки файла в GCS.

Надеюсь, вы найдете приведенные выше сведения полезными.

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