dataFrameWriter partitionBy是否打乱数据



我已经用一种方式对数据进行了分区,我只想用另一种方式对数据进行分区。所以它基本上是这样的:

sqlContext.read().parquet("...").write().partitionBy("...").parquet("...")

我想知道这是否会触发shuffle或所有数据将在本地重新分区,因为在这种情况下,分区只是指HDFS中的一个目录,而来自同一分区的数据不必在同一节点上才能在HDFS的相同目录中写入。

partitionBybucketBy都不洗牌数据。但是,在某些情况下,首先重新分区数据可能是一个好主意:

df.repartition(...).write.partitionBy(...)

否则,输出文件的数量由分区数*分区列的基数限制。

相关内容

  • 没有找到相关文章

最新更新