我们正在使用reartition和artitionBy写入表。它为每个分区创建一个 parquet 文件。
df.repartition("TimeID").write.partitionBy("TimeID").parquet("/path/")
我们希望将每个 parquet 文件的大小限制在每个分区内最大200MB。如果大小超过200MB,我们要在同一分区中创建另一个拼图文件,我们如何实现这一点。对于一些分区,我们看到单个拼图文件大小约为1 GB到2 GB,因为当天的数据量很大,我想确保每个拼图文件大小不超过200 MB
1条答案
按热度按时间vjrehmav1#
看看Spark conf设置
spark.sql.files.maxRecordsPerFile
。从文档中:要写入单个文件的最大记录数。如果此值为零或负,则没有限制。默认为0。