重新分区缓存之后,Dataframe比重新分区缓存之前占用更多空间

时间:2019-04-02 08:09:45

标签: apache-spark apache-spark-sql apache-spark-2.2

我与7个执行者一起工作,我做了persist(StorageLevel.MEMORY_ONLY_SER)

当我在Spark UI上查看存储选项卡时。我可以看到1180 MB RDD持续存在 当我更深入地挖掘时,我发现这1.1 GB没有均匀分布。 1个执行器有630 MB,1个有320 MB,1个有230 MB,其余为0 MB。

我想到了跨数据传播,即所谓的repartition(7)。 现在,这些相同的数据平均分布在整个群集中,每个群集都有250 MB(大约)。这就是1750 MB。

以前,相同的Dataframe占用了1.1 GB的空间,重新分区后进行了缓存,占用了1.7 GB的空间。

您能帮助我理解这一点吗?

0 个答案:

没有答案