将org.apache.spark.rdd.RDD [String]转换为并行化集合

时间:2016-09-25 21:11:38

标签: hadoop apache-spark sequence rdd

我的HDFS中的csv文件包含以下产品集合:

scala> val data = sc.textFile("/user/cloudera/data")
data: org.apache.spark.rdd.RDD[String] = /user/cloudera/data MapPartitionsRDD[294] at textFile at <console>:38

scala> val distData = sc.parallelize(data)

我试图在我的代码中应用关联规则算法。为此,我需要运行:

<console>:40: error: type mismatch;
 found   : org.apache.spark.rdd.RDD[String]
 required: Seq[?]
Error occurred in an application involving default arguments.
         val distData = sc.parallelize(data)

但是当我提交这个时,我收到了这个错误:

sessionmngr

如何在Sequence集合中转换RDD [String]?

非常感谢!

1 个答案:

答案 0 :(得分:0)

你所面对的是简单的。错误显示给你。

要在spark中并行化对象,您应该添加一个Seq()对象。而您正在尝试添加RDD[String]对象。

RDD已经并行化,textFile方法按照群集中的行并行化文件元素。

您可以在此处查看方法说明:

https://spark.apache.org/docs/latest/programming-guide.html