HI Я запускаю задания для свиней для обработки данных и сохранения результата в виде файла паркета. Теперь мне нужно разбить этот файл паркета на основе любого из присутствующих столбцов. Есть ли способ добиться этого?
Разделение файла паркета
Ответы (1)
Да, есть способ: PigMultistrorer.
Вот Java UDF, который вы можете зарегистрировать: https://github.com/saikocat/parquet-mr-contrib/blob/master/parquet-pig-contrib/src/main/java/parquet/pig/ParquetMultiStorer.java
Вы можете передать определенное поле в качестве аргумента мультистора, он сделает раздел, следующий за этим полем.
Когда я тестировал его, у меня были некоторые проблемы с производительностью (очень долгое время работы), поэтому я решил использовать простой multistorage (без паркета). Тогда это было быстрее. Взгляните на эту ссылку, если вы столкнулись с той же проблемой.
https://pig.apache.org/docs/r0.8.1/api/org/apache/pig/piggybank/storage/MultiStorage.html
person
AntonyBrd
schedule
28.10.2015
Также я собираюсь ежедневно обрабатывать данные и хранить их в центральном месте, поэтому, если я пойду на свинью, этого не произойдет. Есть ли другой способ, например, использовать java
- person wazza; 28.10.2015
Я не уверен, что понимаю, что вы хотите сделать, но вы можете планировать свою работу с помощью Oozie (oozie. apache.org/).Использование Java всегда более гибко, однако занимает больше времени.
- person AntonyBrd; 29.10.2015