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