2021年大数据Hive(一):Hive基本概念
全網最詳細的Hive文章系列,強烈建議收藏加關注!
后面更新文章都會列出歷史文章目錄,幫助大家回顧知識重點。
目錄
歷史文章
前言
Hive基本概念
一、Hive介紹
1、什么是Hive
2、為什么使用Hive
3、Hive的特點
二、Hive架構
1、架構圖
2、基本組成
3、Hive與傳統數據庫對比
歷史文章
2021年大數據Hive(十二):Hive綜合案例!!!
2021年大數據Hive(十一):Hive調優
2021年大數據Hive(十):Hive的數據存儲格式
2021年大數據Hive(九):Hive的數據壓縮???????
2021年大數據Hive(八):Hive自定義函數
2021年大數據Hive(七):Hive的開窗函數
2021年大數據Hive(六):Hive的表生成函數
2021年大數據Hive(五):Hive的內置函數(數學、字符串、日期、條件、轉換、行轉列)
2021年大數據Hive(四):Hive查詢語法
2021年大數據Hive(三):手把手教你如何吃透Hive數據庫和表操作(學會秒變數倉大佬)
2021年大數據Hive(二):Hive的三種安裝模式和MySQL搭配使用
2021年大數據Hive(一):Hive基本概念
前言?
?2021大數據領域優質創作博客,帶你從入門到精通,該博客每天更新,逐漸完善大數據各個知識體系的文章,幫助大家更高效學習。
有對大數據感興趣的可以關注微信公眾號:三幫大數據
???????Hive基本概念
一、Hive介紹
1、什么是Hive
Hive是一個構建在Hadoop上的數據倉庫框架。最初,Hive是由Facebook開發,后來移交由Apache軟件基金會開發,并作為一個Apache開源項目。
Hive是基于Hadoop的一個數據倉庫工具,可以將結構化的數據文件映射為一張數據庫表,并提供類SQL查詢功能。
其本質是將SQL轉換為MapReduce的任務進行運算,底層由HDFS來提供數據的存儲,說白了hive可以理解為一個將SQL轉換為MapReduce的任務的工具,甚至更進一步可以說hive就是一個MapReduce的客戶端。
???????2、為什么使用Hive
- 直接使用hadoop所面臨的問題
- 人員學習成本太高
- 項目周期要求太短
- MapReduce實現復雜查詢邏輯開發難度太大
- 為什么要使用Hive
- 操作接口采用類SQL語法,提供快速開發的能力
- 避免了去寫MapReduce,減少開發人員的學習成本
- 功能擴展很方便???????
???????3、Hive的特點
- Hive最大的特點是通過類SQL來分析大數據,而避免了寫MapReduce程序來分析數據,這樣使得分析數據更容易。
- 數據是存儲在HDFS上的,Hive本身并不提供數據的存儲功能,它可以使已經存儲的數據結構化。
- Hive是將數據映射成數據庫和一張張的表,庫和表的元數據信息一般存在關系型數據庫上(比如MySQL)。
- 數據存儲方面:它能夠存儲很大的數據集,可以直接訪問存儲在Apache HDFS或其他數據存儲系統(如Apache HBase)中的文件。
- 數據處理方面:因為Hive語句最終會生成MapReduce任務去計算,所以不適用于實時計算的場景,它適用于離線分析。
- Hive除了支持MapReduce計算引擎,還支持Spark和Tez這兩種分布式計算引擎;
- 數據的存儲格式有多種,比如數據源是二進制格式,普通文本格式等等;
二、Hive架構
1、架構圖
???????2、基本組成
客戶端:Client CLI(hive shell 命令行),JDBC/ODBC(java訪問hive),WEBUI(瀏覽器訪問hive)
元數據:Metastore:本質上只是用來存儲hive中有哪些數據庫,哪些表,表的字段,,表所屬數據庫(默認是default) ,分區,表的數據所在目錄等,元數據默認存儲在自帶的derby數據庫中,推薦使用MySQL存儲Metastore。
驅動器:Driver
(1)解析器(SQL Parser):將SQL字符轉換成抽象語法樹AST,這一步一般使用都是第三方工具庫完成,比如antlr,對AST進行語法分析,比如表是否存在,字段是否存在,SQL語句是否有誤
(2)編譯器(Physical Plan):將AST編譯生成邏輯執行計劃
(3)優化器(Query Optimizer):對邏輯執行計劃進行優化
(4)執行器(Execution):把邏輯執行計劃轉換成可以運行的物理計劃,對于Hive來說,就是MR/Spark
存儲和執行:Hive使用HDFS進行存儲,使用MapReduce進行計算
???????3、Hive與傳統數據庫對比
總結:hive具有sql數據庫的外表,但應用場景完全不同,hive只適合用來做批量數據統計分析
- 📢博客主頁:https://lansonli.blog.csdn.net
- 📢歡迎點贊 👍 收藏 ?留言 📝 如有錯誤敬請指正!
- 📢本文由 Lansonli 原創,首發于 CSDN博客🙉
- 📢大數據系列文章會每天更新,停下休息的時候不要忘了別人還在奔跑,希望大家抓緊時間學習,全力奔赴更美好的生活?
總結
以上是生活随笔為你收集整理的2021年大数据Hive(一):Hive基本概念的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深夜凌晨女朋友问什么是数据仓库,我的回答
- 下一篇: 2021年大数据Hive(二):Hive