Spark on Hive【S负责SQL解析和优化(SparkSQL)、计算引擎;H只负责存储元数据;主流方式】、Hive on Spark【H负责SQL解析和优化、存储元数据;S充当计算引擎】
2023-09-27 14:20:41 时间
Hive on Spark:
- Hive既作为存储元数据又负责SQL的解析优化,语法是HQL语法,
- 执行引擎变成了Spark,Spark负责采用RDD执行。
Spark on Hive :
- Spark负责SQL解析优化,语法是Spark SQL语法,Spark负责采用RDD执行。
- Hive只作为存储元数据,
1、spark on hive
hive只作为存储角色,spark 负责sql解析优化,底层运行的还是sparkRDD
具体可以理解为spark通过sparkSQL使用hive语句操作hive表,底层运行的还是sparkRDD,
步骤如下:
1.通过sparkSQL,加载Hive的配置文件,获取Hive的元数据信息
2.获取到Hive的元数据信息之后可以拿到Hive表的数据
3.通过sparkSQL来操作Hive表中的数据
2、hive on spark
hive既作为存储又负责sql的解析优化,spark负责执行
这里Hive的执行引擎变成了spark,不再是MR。
这个实现较为麻烦,必须重新编译spark并导入相关jar包
目前大部分使用spark on hive
相关文章
- Is it possible to disable authentication Filter on one action in an MVC 5 controller?
- SQL中ON和WHERE的区别
- 【CodeChef】Querying on a Grid(分治,最短路)
- 9 插值表达式 v-on:click、v-html、v-bind:title
- INSERT INTO .. ON DUPLICATE KEY UPDATE ...
- Install PIL with Jpeg support on Ubuntu Oneiric 64bit
- On Data Sharing Strategy for Decentralized Collaborative Visual-Inertial Simultaneous Localization and Mapping
- 转 OUI and OPatch Do Not Recognize JDK/JRE on Windows
- NoC (Network on chip) 基础 (2) :片上网络的拓扑结构(Topology)
- provider: Shared Memory Provider, error: 0 - No process is on the other end of the pipe.
- 【bzoj1742】[Usaco2005 nov]Grazing on the Run 边跑边吃草 区间dp