Hive精华问答 | Hive的数据模型是怎样的?
Hive是一個數據倉庫基礎工具,它是建立在Hadoop之上的數據倉庫,在某種程度上可以把它看做用戶編程接口(API),本身也并不存儲和處理數據,依賴于HDFS存儲數據,依賴MR處理數據。它提供了一系列對數據進行提取、轉換、加載的工具。依賴于HDFS存儲數據,依賴MR處理數據。
1
Q:Hive是什么?
A:Hive是基于Hadoop的一個數據倉庫工具,可以將結構化的數據文件映射為一張數據庫表,并提供類SQL查詢功能。本質是將HQL轉換為MapReduce程序。
Q:Hive的設計目標是什么?
A:1、Hive的設計目標是使Hadoop上的數據操作與傳統SQL相結合,讓熟悉SQL編程開發人員能夠輕松向Hadoop平臺遷移
2、Hive提供類似SQL的查詢語言HQL,HQL在底層被轉換為相應的MapReduce操作
3、Hive在HDFS上構建數據倉庫來存儲結構化的數據,這些數據一般來源與HDFS上的原始數據,使用Hive可以對這些數據執行查詢、分析等操作。
Q:Hive的數據模型是怎樣的?
A:Hive數據庫
內部表
外部表
分區
桶
Hive的視圖
Hive在創建內部表時,會將數據移動到數據倉庫指向的路徑,若創建外部表,僅記錄數據所在的路徑,不對數據位置做任何改變,在刪除表的時候,內部表的元數據和數據會被一起刪除,外部表只會刪除元數據,不刪除數據。這樣來說,外部表要比內部表安全,數據組織液更加靈活,方便共享源數據。
Q:Hive都有哪些調用方式?
A:1、Hive Shell
2、Thrift
3、JDBC
4、ODBC
Q:Hive的運行機制是什么?
A:1、將sql轉換成抽象語法樹
2、將抽象語法樹轉化成查詢塊
3、將查詢塊轉換成邏輯查詢計劃(操作符樹)
4、將邏輯計劃轉換成物理計劃(M\Rjobs)
福利
掃描添加小編微信,備注“姓名+公司職位”,加入【云計算學習交流群】,和志同道合的朋友們共同打卡學習!
推薦閱讀:
OpenStack入門科普,看這一篇就夠啦!
優秀工程師必備的一項技能,你解鎖了嗎?
被竇唯夸獎“音樂好”的刺猬樂隊成員竟然是程序員
喬納森離開蘋果;李彥宏被潑水;Windows 公開 Linux 內核源代碼 | 開發者周刊
以太坊暗網? 這群北大才子做到了...
智能文本信息抽取算法的進階與應用
人工智能六十年技術簡史
真香,朕在看了!
總結
以上是生活随笔為你收集整理的Hive精华问答 | Hive的数据模型是怎样的?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 麻烦各路大神集思广益,说点在端午节推广毛
- 下一篇: boost::container实现多态