SPARKSQL3.0-SessionState构建源码剖析

Apache Spark 2.0 的 SparkSession 提供了统一的入口使用Spark功能,包括DataFrame和Dataset API。本文深入探讨SparkSession的SessionState构建过程,通过getOrCreate函数创建SessionState,并分析了SessionState中包含的执行阶段关键类,如HiveSessionStateBuilder和SessionStateBuilder,以及它们如何通过BaseSessionStateBuilder构建。SessionState的重要性和其在SparkSQL执行过程中的作用是本文的重点。
摘要由CSDN通过智能技术生成

一、介绍

Apache Spark 2.0引入了SparkSession,其目的是为用户提供了一个统一的切入点来使用Spark的各项功能,不再需要显式地创建SparkConf, SparkContext 以及 SQLContext,因为这些对象已经封装在SparkSession中。此外SparkSession允许用户通过它调用DataFrame和Dataset相关API来编写Spark程序。

那么在sparkSql模块中,sql各个阶段的解析的核心类则是SessionState,在后续的文章中会多次使用到SessionState的变量,故本节将介绍SessionState是如何构建的

二、构建过程

常见构建sparkSession写法:

// TODO 创建SparkSQL的运行环境
val sparkConf = new SparkConf(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Light Gao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值