我正在学习Spark,并尝试实现map函数的简单示例时遇到问题。问题出在新版本Spark中“parallelize”的定义上。有人可以分享如何使用它的示例吗?因为以下方式会报错,提示参数不足。
Spark版本:2.3.2 Java版本:1.8
编译时错误信息:该方法需要3个参数。 我不知道第三个参数应该是什么样的?根据文档,它应该是
Spark版本:2.3.2 Java版本:1.8
SparkSession session = SparkSession.builder().appName("Compute Square of Numbers").config("spark.master","local").getOrCreate();
SparkContext context = session.sparkContext();
List<Integer> seqNumList = IntStream.rangeClosed(10, 20).boxed().collect(Collectors.toList());
JavaRDD<Integer> numRDD = context.parallelize(seqNumList, 2);
编译时错误信息:该方法需要3个参数。 我不知道第三个参数应该是什么样的?根据文档,它应该是
scala.reflect.ClassTag<T>
但是如何定义或使用它呢?
请不要建议使用JavaSparkContext,因为我想知道如何使用通用的SparkContext来使这种方法工作。
scala.reflect.ClassTag$.MODULE$.apply(Integer.class);
- UninformedUserJavaConversions.asScalaBuffer(seqNumList)
- 老实说,我不知道你为什么要在Java中调用这个方法...这很奇怪。 - UninformedUser