零、本讲学习目标
- 学会使用默认数据源
- 学会手动指定数据源
- 理解数据写入模式
- 掌握分区自动推断
Spark SQL支持通过DataFrame接口对各种数据源进行操作。DataFrame可以使用相关转换算子进行操作,也可以用于创建临时视图。将DataFrame注册为临时视图可以对其中的数据使用SQL查询。
一、基本操作
- Spark SQL提供了两个常用的加载数据和写入数据的方法:
load()
方法和save()
方法。load()
方法可以加载外部数据源为一个DataFrame,save()
方法可以将一个DataFrame写入指定的数据源。
二、默认数据源
(一)默认数据源Parquet
- 默认情况下,load()方法和save()方法只支持Parquet格式的文件,Parquet文件是以二进制方式存储数据的,因此不可以直接读取,文件中包括该文件的实际数据和Schema信息,也可以在配置文件中通过参数
spark.sql.sources.default
对默认文件格式进行更改。Spark SQL可以很容易地读取Parquet文件并将其数据转为DataFrame数据集。<