您好,登錄后才能下訂單哦!
這篇文章主要講解了“hive的概念和系統結構介紹”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“hive的概念和系統結構介紹”吧!
1.Hive 是建立在Hadoop 上的數據倉庫基礎構架。它提供了一系列的工具,可以用來進行數據提取轉化加載(ETL ),這是一種可以存儲、查詢和分析存儲在 Hadoop 中的大規模數據的機制。Hive定義了簡單的類 SQL 查詢語言,稱為 QL ,它允許熟悉SQL 的用戶查詢數據。同時,這個語言也允許熟悉 MapReduce 開發者的開發自定義的mapper 和reducer 來處理內建的 mapper和 reducer 無法完成的復雜的分析工作。
2.Hive是SQL解析引擎,它將SQL語句轉譯成M/R Job然后在Hadoop執行。
3.Hive的表其實就是HDFS的目錄/文件,按表名把文件夾分開。如果是分區表,則分區值是子文件夾,可以直接在M/R Job里使用這些數據。
Hive牛逼的地方就在于:
1. 是基于MapReduce的基礎上,支持sql語法
2. 對上傳到數據倉庫的數據沒有任何格式要求
用戶接口,包括 CLI,JDBC/ODBC,WebUI
元數據存儲,通常是存儲在關系數據庫如 mysql, derby 中
解釋器、編譯器、優化器、執行器
Hadoop:用 HDFS 進行存儲,利用 MapReduce 進行計算
l 用戶接口主要有三個:CLI,JDBC/ODBC和 WebUI
CLI,即Shell命令行
JDBC/ODBC 是 Hive 的Java,與使用傳統數據庫JDBC的方式類似
WebGUI是通過瀏覽器訪問 Hive
l Hive 將元數據存儲在數據庫中(metastore),目前只支持mysql、derby。Hive 中的元數據包括表的名字,表的列和分區及其屬性,表的屬性(是否為外部表等),表的數據所在目錄等
l 解釋器、編譯器、優化器完成 HQL 查詢語句從詞法分析、語法分析、編譯、優化以及查詢計劃(plan)的生成。生成的查詢計劃存儲在HDFS 中,并在隨后有MapReduce 調用執行
l Hive 的數據存儲在HDFS 中,大部分的查詢由MapReduce 完成(包含 * 的查詢,比如select * from table 不會生成 MapRedcue 任務)
感謝各位的閱讀,以上就是“hive的概念和系統結構介紹”的內容了,經過本文的學習后,相信大家對hive的概念和系統結構介紹這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。