开发者社区> 问答> 正文

SparkContext和SparkSession有什么区别?

SparkContext和SparkSession有什么区别?

展开
收起
芯在这 2021-12-08 22:00:57 1152 0
1 条回答
写回答
取消 提交回答
  • Application: 用户编写的 Spark 应用程序,Driver 即运行上述 Application 的 main() 函数并且创建 SparkContext。Application 也叫应用。

    SparkContext: 整个应用的上下文,控制应用的生命周期。

    RDD: 不可变的数据集合,可由 SparkContext 创建,是 Spark 的基本计算单元。

    SparkSession: 可以由上节图中看出,Application、SparkSession、SparkContext、RDD之间具有包含关系,并且前三者是1对1的关系。SparkSession 是 Spark 2.0 版本引入的新入口,在这之前,创建一个 Application 对应的上下文是这样的:

    现在 SparkConf、SparkContext 和 SQLContext 都已经被封装在 SparkSession 当中,并且可以通过 builder 的方式创建:

    通过 SparkSession 创建并操作 Dataset 和 DataFrame,代码中的 spark 对象就是 SparkSession:

    2021-12-08 22:01:46
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Paddling Up the Stream: Lessons Learned using Apache Spark Streaming 立即下载
LEVERAGING APACHE SPARK TO DIS 立即下载
Spark on Supercomputers: A Tal 立即下载