我知道 RDD 可以持久化/缓存在内存、磁盘或两者上,但是否也可以将其持久化到 HDFS 上。我面临的问题是我的集群上的内存和磁盘空间太少,而我的 HDFS 空间很大。
最佳答案
RDD 持久化只能在工作机器(内存和磁盘)内进行。一些持久性级别在集群中的其他工作机器中复制 RDD。
从今天开始,为了在 HDFS 中持久化 RDD/DataFrame,我们只能使用写入 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");
关于scala - 是否可以在 HDFS 上持久化 RDD?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40255317/