更新時(shí)間:2020-06-04 14:17:17 來源:動(dòng)力節(jié)點(diǎn) 瀏覽2319次
Hive是建立在Hadoop上的數(shù)據(jù)倉庫基礎(chǔ)構(gòu)架。對(duì)于有一定基礎(chǔ)的大數(shù)據(jù)學(xué)習(xí)者來講,Hive是必須掌握的核心技術(shù)。本文主要帶大家來認(rèn)識(shí)一下Hive,了解什么是Hive?為什么要用Hive?如果大家對(duì)這些問題好奇,就一起看看接下來的內(nèi)容吧~
1.Hive的定義
Hive一個(gè)可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表并提供類SQL查詢功能的數(shù)據(jù)倉庫工具,而且它是基于Hadoop的。因此,從本質(zhì)上來看,Hive是將SQL轉(zhuǎn)換為MapReduce程序的工具。因?yàn)椋戎苯佑肕apReduce開發(fā)效率更高,Hive的主要作用就是用來做離線數(shù)據(jù)分析。
2.Hive架構(gòu)
用戶接口:包括CLI、JDBC/ODBC、WebGUI。其中,CLI(command line interface)為shell命令行;JDBC/ODBC是Hive的JAVA實(shí)現(xiàn),與傳統(tǒng)數(shù)據(jù)庫JDBC類似;WebGUI是通過瀏覽器訪問Hive。
元數(shù)據(jù)存儲(chǔ):通常是存儲(chǔ)在關(guān)系數(shù)據(jù)庫如mysql/derby中。Hive將元數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫中。Hive中的元數(shù)據(jù)包括表的名字,表的列和分區(qū)及其屬性,表的屬性(是否為外部表等),表的數(shù)據(jù)所在目錄等。
解釋器、編譯器、優(yōu)化器、執(zhí)行器:完成HQL查詢語句從詞法分析、語法分析、編譯、優(yōu)化以及查詢計(jì)劃的生成。生成的查詢計(jì)劃存儲(chǔ)在HDFS中,并在隨后有MapReduce調(diào)用執(zhí)行。
3.Hive數(shù)據(jù)模型
Hive中所有的數(shù)據(jù)都存儲(chǔ)在HDFS中,沒有專門的數(shù)據(jù)存儲(chǔ)格式。在創(chuàng)建表時(shí)指定數(shù)據(jù)中的分隔符,Hive就可以映射成功,解析數(shù)據(jù)。Hive中包含以下數(shù)據(jù)模型:
db:在hdfs中表現(xiàn)為hive.metastore.warehouse.dir目錄下一個(gè)文件夾;
table:在hdfs中表現(xiàn)所屬db目錄下一個(gè)文件夾;
external table:數(shù)據(jù)存放位置可以在HDFS任意指定路徑;
partition:在hdfs中表現(xiàn)為table目錄下的子目錄;
bucket:在hdfs中表現(xiàn)為同一個(gè)表目錄下根據(jù)hash散列之后的多個(gè)文件。
1.Hive與傳統(tǒng)數(shù)據(jù)庫對(duì)比
Hive用于海量數(shù)據(jù)的離線數(shù)據(jù)分析。Hive具有sql數(shù)據(jù)庫的外表,但應(yīng)用場景完全不同,Hive只適合用來做批量數(shù)據(jù)統(tǒng)計(jì)分析。
2.Hive的優(yōu)勢
Hive利用HDFS存儲(chǔ)數(shù)據(jù),利用MapReduce查詢分析數(shù)據(jù)。因?yàn)橹苯邮褂肏adoop MapReduce處理數(shù)據(jù),會(huì)面臨人員學(xué)習(xí)成本太高的問題,而且MapReduce實(shí)現(xiàn)復(fù)雜查詢邏輯開發(fā)難度太大。而使用Hive,操作接口采用類SQL語法,提供快速開發(fā)的能力的同時(shí)還避免了去寫MapReduce,從而減少開發(fā)人員的學(xué)習(xí)成本,功能擴(kuò)展更加方便。
以上就是動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“數(shù)據(jù)庫開發(fā)教程之Hive的使用”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743