关于hive数仓这个概念的一些理解+查看hive底层引擎是否是tez
hive其实本身并不是一个仓库,
而是一个sql翻译工具.
把sql翻译成mapreduce语句,
hadoop集群去hdfs集群上执行这些mapreduce语句
在执行的过程中去yarn申请资源,
为啥要理会这些原理性质的东西呢?
因为写代码的时候虽然可以不care原理,但是yarn如果资源不够,那么hive就会卡死.
hive卡死的原因要么是编码要么就是底层资源不够导致卡死了.
所以,所谓的hive仓库,其实是顶层的一个hive转换工具+底层的HDFS+YARN资源管理器构成的.
这和我们之前的认知有所不同,之前的认知里,mysql中的SQL转化引擎和数据存储db文件都在一台电脑上.
而hive仓库这个概念,其实是单节点的SQL转化引擎+多台电脑构成的集群.
比较如下:
| SQL转化引擎 | 布置在单机 | 布置在单机 |
| 底层数据存储文件 | 存储在单机 | 分布在集群 |
下面是查看hive底层计算引擎的命令
0: jdbc:hive2://Desktop:10000> SET hive.execution.engine;
±--------------------------+
| set |
±--------------------------+
| hive.execution.engine=mr |
±--------------------------+
Reference:
[1]Hive - How to know which execution engine I am currently using
总结
以上是生活随笔为你收集整理的关于hive数仓这个概念的一些理解+查看hive底层引擎是否是tez的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: lol自走棋在哪下载 《英雄联盟》新手玩
- 下一篇: hadoop+hive+flink+hb