这个问题在这里已经有答案了:
sparkDataframe写方法写很多小文件(6个答案)
两年前关门了。
我有一些分区的Hive表指向Parquet文件。现在我有很多小Parquet文件为每个分区,每个大小约5kb,我想合并成一个大文件每个分区这些小文件。如何实现这一点以提高我的Hive性能?我已经尝试将分区中的所有Parquet文件读取到一个pysparkDataframe,并将组合的Dataframe重写到同一分区,然后删除旧的Dataframe。但由于某些原因,这在我看来是低效或初级的类型。这样做的利弊是什么?如果还有其他方法,请指导我在spark或pyspark中实现。
1条答案
按热度按时间tjrkku2a1#
你可以读取全部数据,
repartition
然后使用partitionBy
(这是您将来也应该保存它们的方式)。比如: