歡迎來到魔據教育大數據學院,專注大數據工程師培養!
當前位置:首頁 > 學習資料 > 講師博文 > 大數據之Hive簡介

大數據之Hive簡介

時間:2019-04-12 14:24:26作者:魔據大數據學院

Hive之前騷話:

還記得mapreduce的單詞計數嗎。
例如,文檔
大數據之Hive簡介 
我現在想單詞計數結果應該是:
大數據之Hive簡介 
那么如果公司人都沒有學過hadoop那么學習mapreduce是不是需要學習成本,而且成本還很高,還需要很多時間,那么有人想了,如果能夠有一個軟件它能夠把文檔的mapreduce的復雜算法變成sql語句多好呢,于是,hive就誕生了
 
Hive是基于Hadoop的一個數據倉庫工具,可以將結構化的數據文件映射為一張數據庫表,并提供類SQL查詢功能。
 
Hive就是一個數據倉庫,那么數據倉庫和數據庫有什么區別的,你可以這么理解,數據倉庫里面裝了好多的數據庫,所以數據倉庫的數據量是非常巨大的,這里可以給大家畫圖理解
大數據之Hive簡介 
 
好了,這里繼續說單詞計數,我拿mysql來舉例比較方便,
現在在mysql中有一個aaa表,表里面只有一個字段叫做id是varchar類型
大數據之Hive簡介 
 
里面的值是這樣的:
 
大數據之Hive簡介 
 
這些數據就像是源文件,那么好了,看一下sql的強大:
 
select id,count(id) from aaa group by id
 
將這句話執行后你會發現,和我們mapreduce的單詞計數效果一致
 
大數據之Hive簡介 
而且sql的強大還可以排序,幾乎無所不能:
例如正序,倒序
大數據之Hive簡介 
 
大數據之Hive簡介 
 
好了, 到這是不是感受到了sql的強大,但是mysql不能作為數據倉庫,因為mysql對數據的操作有限,不能操作太過巨大的數據,尤其是海量數據
 
那么hive就誕生了,那么hive中秉承了簡單易操作的宗旨,并且操作的語言和mysql非常相似,那么在一些不是特別復雜的算法的時候,完全可以交給hive來進行運算,無論從造價成本,還是員工的學習成本都是非常輕松地,所以hive就火起來了
 
那么了解了hive的誕生和意義后,我們來學習hive的原理,它是怎么干活的:
 
Hive的基本組成:
 
1.用戶接口:包括 CLI、JDBC/ODBC、WebGUI。
其中,CLI為shell命令行;JDBC/ODBC是Hive的JAVA實現,與傳統數據庫JDBC類似;WebGUI是通過瀏覽器訪問Hive。
 
2.元數據存儲:通常是存儲在關系數據庫如 mysql , derby中。
Hive 將元數據存儲在數據庫中。Hive 中的元數據包括表的名字,表的列和分區及其屬性,表的屬性(是否為外部表等),表的數據所在目錄等。
 
3.解釋器、編譯器、優化器、執行器。
解釋器、編譯器、優化器完成 HQL 查詢語句從詞法分析、語法分析、編譯、優化以及查詢計劃的生成。生成的查詢計劃存儲在 HDFS 中,并在隨后有 MapReduce 調用執行。
 
HiveHadoop關系 
Hive利用HDFS存儲數據,利用MapReduce查詢數據
大數據之Hive簡介 
 
 
大數據之Hive簡介 

更多大數據相關資訊敬請關注魔據教育,為您分享最及時的大數據資訊。
學習大數據敬請關注魔據教育微信二維碼。
魔據教育微信二維碼

【版權與免責聲明】如發現內容存在版權問題,煩請提供相關信息發郵件至[email protected],我們將及時溝通與處理。本站內容除非來源注明魔據教育,否則均為網友轉載,涉及言論、版權與本站無關。

全國咨詢熱線:18501996998,值班手機:18501996998(7*24小時)

在線咨詢:張老師QQ 320169340

企業合作服務專線:010-82340234-821, 院校合作洽談專線:010-82340234

Copyright 2001-2019 魔據教育 - 北京華育興業科技有限公司 版權所有,京ICP備17018991號-2

免費在線咨詢立即咨詢

免費索取技術資料立即索取

大數據技術交流QQ:226594285

電話咨詢010-82340234

119期两码中特免费公开