如何在 apache Spark Scala 中存储从类似以下操作生成的结果:在输出目录中进行计数?
val countval= data.map((_,"")).reduceByKey((_+_)).count
以下命令不起作用,因为计数未存储为 RDD:
countval.saveAsTextFile("OUTPUT LOCATION")
有什么方法可以将 countval 存储到本地/hdfs 位置吗?
最佳答案
@szefuf 说的是正确的,在 count
之后,你有一个 Long
,你可以以任何你想要的方式保存。
如果您想使用 .saveAsTextFile()
将其保存为 RDD
,则必须将其转换为 RDD:
sc.parallelize(Seq(countval)).saveAsTextFile("/file/location")
SparkContext中的parallelize
方法将值的集合转换为RDD,因此需要先将单个值转换为单元素序列。然后就可以保存了。
关于scala - 如何使用 scala 在 apache Spark 中存储操作结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34412915/