Получить информацию о сжатии входного файла parquet с помощью Pyspark

#python #apache-spark #pyspark #parquet #pyspark-dataframes

#python #apache-spark #pyspark #parquet #pyspark-фреймы данных

Вопрос:

У меня есть требование, при котором я читаю входной файл parquet и разделяю его на файлы меньшего размера, чтобы уменьшить размер. Проблема в том, что тип сжатия входного и выходного файла parquet должен совпадать (по умолчанию pyspark выполняет быстрое сжатие). Этого не должно произойти. Предположим, если тип сжатия ввода — gzip, то вывод должен быть gzip или, если ввод выполняется быстро, вывод должен быть быстрым.

Есть ли какой-либо параметр, который я мог бы установить в соответствии с типом сжатия.

Комментарии:

1. parquet-tools meta вывод предоставляет информацию о сжатии. github.com/wesleypeck/parquet-tools

2. Вы знаете, что Parquet допускает сжатие по типу для каждого столбца? Это может быть очень сложно

3. @shay__ есть ли какой-нибудь способ проверить это

4. @mazaneicha parquet-tools — это отдельный пакет, который имеет pyarrow зависимостей. Есть идеи, используя Pyspark, информацию о сжатии можно проверить?

5. Вы можете использовать (java) ParquetFileReader.readSummaryMetadata