从 SparkSession 获取 JavaSparkContext

2022-09-02 23:20:03

我正在使用 一个来运行我的 spark 应用程序,因为我使用了很多 spark-sql 功能。我想使用 从列表中创建RDD。但是通过会话,我只能得到一个普通的.有没有办法在这个方向上改变环境?SparkSessionJavaSparkContextSparkContext


答案 1

确定 后,您可以使用:SparkContext

SparkContext sc = ...
JavaSparkContext jsc = JavaSparkContext.fromSparkContext(sc);

这将返回 的新实例 ,但只要您只维护 一个活动实例,就不会有问题。JavaSparkContextSparkContext


答案 2

是的,你可以像这样用火花会议来做到这一点:

   val spark = SparkSession.builder()
         .config(sparkConf)
         .getOrCreate()

    val jsc = new JavaSparkContext(spark.sparkContext)

或者在java中,它将是:

SparkSession spark = SparkSession.builder().config(sparkConf).getOrCreate();
JavaSparkContext jsc = new JavaSparkContext(spark.sparkContext());

推荐