我知道RDD可以在内存,磁盘或两者上保留/缓存,但是也可以将其保留在HDFS上。我面临的问题是我的群集上的内存和磁盘空间太少,而我的HDFS空间很大。
答案 0 :(得分:2)
RDD持久化只能在工作机器(内存和磁盘)中进行。某些持久性级别会在群集中的其他工作计算机中复制RDD。
截至今天,为了在HDFS中保留RDD / DataFrame,我们只能使用write API。
写入HDFS:
// Writing DataFrame
df.write.save("hdfs://namenode_host:port/file/path");
//Writing RDD
rdd.saveAsTextFile("hdfs://namenode_host:port/file/path", "codec_if_any");