[英]How to store the result of an action in apache spark using scala
如何在 apache Spark Scala 中存儲從以下操作生成的結果:在輸出目錄中計數?
val countval= data.map((_,"")).reduceByKey((_+_)).count
以下命令不起作用,因為計數未存儲為 RDD:
countval.saveAsTextFile("OUTPUT LOCATION")
有沒有辦法將 countval 存儲到本地/hdfs 位置?
在您調用count
它不再是 RDD。
Count 只是Long
並且它沒有saveAsTextFile
方法。
如果您想存儲您的countval
您必須像處理任何其他 long、string、int...
@szefuf 說的是正確的, count
完之后,你就有了一個Long
,你可以用任何你想要的方式保存它。 如果您想使用.saveAsTextFile()
將其保存為RDD
, .saveAsTextFile()
必須將其轉換為 RDD:
sc.parallelize(Seq(countval)).saveAsTextFile("/file/location")
SparkContext 中的parallelize
方法將一組值轉換為 RDD,因此您需要先將單個值轉換為單個元素序列。 然后你可以保存它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.