一、简介
1.1 简介
SaprkSQL时Spark专门针对结构化数据处理的一个组件,可以利用他快速简单的处理结构化数据,他可以加载结构化数据,并将其映射成数据表,利用SQL进行数据处理
SparkSQL 其实是对Spark-core处理结构化数据 的底层原理进行了封装
底层的物理执行计划还是spark-core的执行过程
1.2 特点
1.2.1 易整合
sparkSQL 可以在spark的编程中,将SQL和算子进混合使用,使编程更加的灵活
val res = spark.sql("select * from tb_user")
res.map()
1.2.2 统一的数据访问方式
sparkSQL为各种不同类型的数据源提供统一的访问方式,可以跨各类数据源进行join,支持的数据源如:csv,tcv(tab键作为分隔符),hive,Avro,Parquet,orc(列式存储文件格式,本身就是有结构的),json,jdbc
1.2.3 兼容hive
sparkSQL的server模式,可以为各类bi工具提供标准的JDBC、ODBC连接
SparkSQL可以看做一个转换层,向下对接各种不同的结构化数据源,向上提供不同的数据访问方式