Spark SQL
Spark SQL官方介绍
●官网
http://spark.apache.org/sql/
Spark SQL是Spark用来处理结构化数据的一个模块。
Spark SQL还提供了多种使用方式,包括DataFrames API
和Datasets API
。
1、什么是SparkSQL?
用于处理结构化数据的Spark模块。
可以通过DataFrame和DataSet处理数据。
2、SparkSQL特点
1、易整合
可以使用java、scala、python、R等语言的API操作。
2、统一的数据访问
连接到任何数据源的方式相同。
3、兼容Hive
4、标准的数据连接(JDBC/ODBC)
3、SQL优缺点
优点:表达非常清晰,难度低、易学习。
缺点:复杂的业务需要复杂的SQL, 复杂分析,SQL嵌套较多。机器学习较难实现
。
4、Hive和SparkSQL
Hive是将SQL转为MapReduce
SparkSQL可以理解成是将SQL解析成’RDD’ + 优化再执行
5、SparkSQL中的两个抽象
什么RDD??
弹性分布式数据集。
什么是DataFrame?
DataFrame是一种以RDD为基础的带有Schema元信息的分布式数据集
,类似于传统数据库的二维表格 。
什么是DataSaet??
含有类型信息的DataFrame就是DataSet
(DataSaet=DataFrame+类型= Schema+RDD*n+类型)
DataSet包含了DataFrame
的功能
RDD、DataFrame、DataSet的区别
结构图解:
RDD[Person]
以Person为类型参数
,但不了解 其内部结构。
DataFrame
提供了详细的结构信息schema列的名称和类型
。这样看起来就像一张表了
DataSet[Person]
不光有schema信息,还有类型信息
SparkSQL的介绍第一章
猜你喜欢
转载自blog.csdn.net/qq_45765882/article/details/105560112
今日推荐
周排行