关于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自走棋在哪下载 《英雄联盟》新手玩
 - 下一篇: 如何查找 iPhone、iPad、Mac