在spark java api中从Map创建Dataframe

hs1ihplo  于 2021-05-27  发布在  Spark
关注(0)|答案(1)|浏览(401)

我尝试在java api中使用spark sql,下面是一些简单的东西(摘自官方指南:https://spark.apache.org/docs/latest/rdd-programming-guide.html)不会让intelij高兴的。
它抱怨 ClassTag 我不知道如何创建它或者让它自动导入什么的。

List<Integer> data = Arrays.asList(1, 2, 3, 4, 5);
        JavaRDD<Integer> distData = sc.parallelize(data);

我知道它想用3个参数

public <T> RDD<T> parallelize(final Seq<T> seq, final int numSlices, final ClassTag<T> evidence$1) {

但我怎么能得到这个 evidence$1 事情?官方的例子也没有论据
请帮忙。

xqnpmsa8

xqnpmsa81#

我决定研究一下这个例子的源代码以及官方的指导方针。结果是它需要创建JavaSpark上下文,在我使用了指南源代码中的示例之后,我的一个上下文就开始工作了。

import scala.Tuple2;
import org.apache.spark.api.java.JavaSparkContext;

List<Tuple2<String, String>> data =
        Arrays.asList(
                new Tuple2<>("key1","value1")
                , new Tuple2<>("key2", "value2")
        );

JavaPairRDD<String, String> dataRdd = jsc.parallelizePairs(data);

相关问题