2017-02-13 5 views
2

Я пытаюсь обрабатывать файлы JSON (сжатие 10 ГБ/сжатие 2 ГБ), и я хочу оптимизировать мой конвейер.Является ли Dataflow использование перекодирования gzip Google Cloud Storage?

В соответствии с official docs Google Cloud Storage (GCS) имеет возможность перекодировать файлы gzip, что означает, что приложение получает их несжатыми, когда они помечены правильно. Google Cloud Dataflow (GCDF) имеет лучший параллелизм при работе с несжатыми файлами, поэтому мне было интересно, положительно ли влияет на производительность meta tag on GCS?

Поскольку мои входные файлы относительно велики, имеет смысл распаковать их, чтобы Dataflow разбивал их на меньшие куски?

+1

Вы не должны использовать этот метатег. На самом деле это опасно, поскольку GCS будет сообщать размер вашего файла неправильно (например, сообщать сжатый размер, но поток данных/луч читал несжатые данные). В любом случае разделение несжатых файлов зависит от чтения параллельно от разных сегментов файла, и это невозможно, если файл изначально сжат. Надеюсь это поможет. :) – Pablo

+0

Я добавлю это как ответ;) – Pablo

ответ

2

Вы не должны использовать этот метатег. Это опасно, так как GCS будет сообщать размер вашего файла неправильно (например, сообщать сжатый размер, но поток данных/луч читал несжатые данные).

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