Spark【使用篇】06:Spark SQL

本文深入探讨Spark SQL,从DataFrame的概念、创建,到常见的算子操作、DataFrame的SQL支持、RDD转DataFrame的方法,以及load和save操作、SaveMode的使用和内置函数的介绍。详细阐述了DataFrame如何通过Scala和Java代码实现,并提供了多个示例来展示其功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前面我们学习了Spark中的Spark core,离线数据计算,下面我们来学习一下Spark中的Spark SQL。

一、Spark SQL

Spark SQL和我们之前讲Hive的时候说的hive on spark是不一样的。

hive on spark是表示把底层的mapreduce引擎替换为spark引擎。

而Spark SQL是Spark自己实现的一套SQL处理引擎。

Spark SQL是Spark中的一个模块,主要用于进行结构化数据的处理。它提供的最核心的编程抽象,就是DataFrame。

DataFrame=RDD+Schema。
它其实和关系型数据库中的表非常类似,RDD可以认为是表中的数据,Schema是表结构信息。DataFrame可以通过很多来源进行构建,包括:结构化的数据文件,Hive中的表,外部的关系型数据库,以及RDD

Spark1.3出现的DataFrame,Spark1.6出现了DataSet,在Spark2.0中两者统一,DataFrame等于DataSet[Row]

二、SparkSession

要使用Spark SQL,首先需要创建一个SpakSession对象。

SparkSession中包含了SparkContext和SqlContext。

所以说想通过SparkSession来操作RDD的话需要先通过它来获取SparkContext。

这个SqlContext是使用sparkSQL操作hive的时候会用到的。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

做一个有趣的人Zz

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

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

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

打赏作者

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

抵扣说明:

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

余额充值