前言
Spark Core 中,如果想要执行应用程序,需要首先构建上下文环境对象 SparkContext,Spark SQL 其实可以理解为对 Spark Core 的一种封装,不仅仅在模型上进行了封装,上下文环境对象也进行了封装;
在老的版本中,SparkSQL 提供两种 SQL 查询起始点:一个叫 SQLContext,用于 Spark自己提供的 SQL 查询;一个叫 HiveContext,用于连接 Hive 的查询;
SparkSession 是 Spark 最新的 SQL 查询起始点,实质上是 SQLContext 和 HiveContext的组合,所以在 SQLContex 和 HiveContext 上可用的 API 在 SparkSession 上同样是可以使用的。
SparkSession 内部封装了 SparkContext,所以计算实际上是由 sparkContext 完成的。当我们使用spark-shell的时候,spark框架会自动的创建一个名称叫做spark的SparkSession对象, 就像我们以前可以自动获取到一个 sc 来表示 SparkContext 对象一样;
本文深入探讨Spark SQL中的RDD、DataFrame和DataSet。内容涵盖它们的创建、转换方法,如DataFrame的SQL语法和DSL操作,RDD与DataFrame的相互转换,以及DataSet的使用。还详细讨论了三者之间的关系、共性和区别,并提供了实际操作的案例。
订阅专栏 解锁全文
705





