【发布时间】:2018-04-08 14:12:08
【问题描述】:
我有一个用户“表”,我想按“位置”进行分区。但是在尝试使用时:
usersNewDf.write.partitionBy("location") \
.parquet("....../parquet/users.parquet")
我得到了很多“尝试*”文件,我想我在某个地方看到了可能是因为我有太多的小分区?检查时似乎是正确的。许多位置只有 1 个用户。所以我想为那些用户清除位置。
我想知道,这是最好的方法吗?是否可以在不清除不常见位置的情况下按位置进行分区?就像如果分区太小,将它们分组?
如果我要清除不常见的位置,我可能会有大量没有位置的用户,所以 1 个大分区。这个可以吗?或者我能做些什么来改善这种情况?
在这种情况下我还应该使用partitionBy 或repartition 吗?
【问题讨论】:
标签: apache-spark pyspark