SparkSQL
SparkSQL
是什么
- SparkSQL是Spark中一个模块,专门用于处理结构化数据
- 定位:替换Hive的使用场景
-
特点:
-
兼容SparkCore(RDD)
可以在同一个Spark任务中随时切换RDD编程和SQL编程 -
提供统一的数据访问方式
将常见文本格式: Text csv json
列式存储格式: ORC parquet
各种数据库 : JDBC -
Spark完全兼容Hive
SparkSQL支持HQL所有语法和函数库
支持Hive的各种序列化,Hive的所有UDF -
提供标准的数据访问
JDBC/ODBC
-
Spark与Hive的关系
-
Spark内嵌Hive
Spark已经包含了所以的Hive依赖 -
Spark可以运行在已有的Hive数仓上
如果需要使用SparkSQL替换Hive,
只需要将原有Hive的hive-site.xml拷贝到Spark的conf中
mysql驱动jar复制Spark的jars中 -
Spark也提供hive2服务
thriftserver封装了hiveserver2提供对外的标准JDBC连接