要保存的RDD有两个操作。一个是saveAsTextFile
,另一个是saveAsObjectFile。我理解saveAsTextFile
,但不理解saveAsObjectFile
。我是Spark和scala的新手,因此我对saveAsObjectFile
感到好奇。
1)它是来自Hadoop的序列文件还是有些不同的东西?
2)我可以使用Map Reduce读取使用saveAsObjectFile
生成的文件吗?如果是,怎么样?
答案 0 :(得分:3)
现在,在阅读序列文件时,您可以使用 SparkContext.objectFile(“文件路径”),内部利用Hadoop的 SequenceFileInputFormat 来读取文件。
或者您也可以使用 SparkContext.newAPIHadoopFile(...),它接受Hadoop的InputFormat和path作为参数。
答案 1 :(得分:1)
rdd.saveAsObjectFile将RDD保存为序列文件。要读取这些文件,请使用sparkContext.objectFile(" fileName")