将Spark数据帧写入HDFS时使用的内存有哪些因素?

时间:2017-12-11 12:34:52

标签: hadoop apache-spark pyspark spark-dataframe

我正在使用Pyspark 1.6并且有两个数据帧,df1和df2。这两列都具有完全相同的列(数量为71)和模式(所有列都是字符串类型)。

df1有2.41亿行,而df2有2.45亿行。

使用databricks csv软件包将这些数据帧写入HDFS时,df1占用165 GB的磁盘空间,而df2占用800 GB以上。

(df
    .write
    .format('com.databricks.spark.csv')
    .option("sep", "\x01")
    .option("header", "true")
    .save(path)
)

当两个数据帧具有可比较的行和完全相同的列时,可以解释如此大的差异(5x)。

0 个答案:

没有答案