Spark复习 Day03:SparkSQL
Spark复习 Day03:SparkSQL 1. 什么是SparkSQL ----------------------------------------------- - SparkSQL是Spark用来处理结构化[表]数据的一个模块。 - 它提供了两个编程抽象:DataFrame和DataSet,底层还是RDD操作 2. DataFrame、DataSet 介绍 ------------------------------------------------ - DataFrame 1. 与RDD类似,DataFrame也是一个分布式数据容器 2. 不同的是,DataFrame更像是传统数据库的二维表格 3. 除了记录了数据以外,还记录了数据的结构信息,即Schema 4. 与Hive一样,DataFrame也支持嵌套数据类型[struct,array,map] 5. DataFrame的API 比 RDD的API更加好用 6. DataFrame是为数据提供了Schema的视图,可以把它当做数据库的一张表来对待 - DataSet 1. Dataset是DataFrameAPI的一个拓展,是Spark最新的数据抽象。DataFrame的升级版 2. 用户友好的API风格,既有类型的安全检查,収DataFrame的查询优化特性 3. DataSet支持编解码器